smf/smfservermodule/smfclient/smfeventsfetcher_p.h
author cgandhi
Thu, 23 Sep 2010 17:43:31 +0530
changeset 25 a180113055cb
permissions -rw-r--r--
Music Events are now normal Fetcher APIs added All APIs now return SmfError Canceling Request now supported Music Search now based on category Providerinfo added in DSM Added secondary ID, count, location to SMFAlbum Tags for Artist added Get tracks for album and artist added Added URL to subtitle DSM Bug fixes Detailed debugging logs filtered in server, pluginmgr, transportmgr playlistsOf() method changed in smfclient and plugin interfaces. RVCT B686 compilation issues resolved.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
25
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     1
/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     2
 * Copyright (c) 2010 Sasken Communication Technologies Ltd.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     3
 * All rights reserved.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     5
 * under the terms of the "Eclipse Public License v1.0"
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     6
 * which accompanies  this distribution, and is available
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html"
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     8
 *
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
     9
 * Initial Contributors:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    10
 * Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    11
 *
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    12
 * Contributors:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    13
 * Nalina Hariharan
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    14
 *
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    15
 * Description:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    16
 * Private implementation of events related services
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    17
 *
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    18
 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    19
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    20
#ifndef SMFEVENTSFETCHER_P_H_
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    21
#define SMFEVENTSFETCHER_P_H_
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    22
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    23
#include <smfglobal.h>
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    24
#include <smfobserver.h>
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    25
#include <smfevent.h>
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    26
#include <smflocation.h>
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    27
#include <smfprovider.h>
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    28
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    29
class SmfEventsFetcher;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    30
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    31
#ifdef Q_OS_SYMBIAN
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    32
	class CSmfClientSymbian;	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    33
#else
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    34
	class SmfClientQt;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    35
#endif
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    36
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    37
class SmfEventsFetcherPrivate : public smfObserver
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    38
	{
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    39
	Q_OBJECT
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    40
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    41
public:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    42
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    43
	 * Constructs SmfEventsFetcher with base provider info
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    44
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    45
	SmfEventsFetcherPrivate(SmfEventsFetcher* aEventFetcher);
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    46
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    47
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    48
	 * Destructor
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    49
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    50
	~SmfEventsFetcherPrivate();
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    51
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    52
public:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    53
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    54
	 * Gets list of events in a particular venue asynchronously.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    55
	 * eventsAvailable() signal is emitted with SmfEventsList once its arrived.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    56
	 * When the list is big user can specify the page number and per page item data.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    57
	 * If not supplied by the user default values are used.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    58
	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    59
	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    60
	 * @return SmfNoError if success, else appropriate error value
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    61
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    62
	SmfError events ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    63
			int perPage = SMF_ITEMS_PER_PAGE);
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    64
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    65
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    66
	 * Gets list of venues of a particular location asynchronously.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    67
	 * venuesAvailable() signal is emitted with SmfLocationList once its arrived.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    68
	 * When the list is big user can specify the page number and per page item data.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    69
	 * If not supplied by the user default values are used.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    70
	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    71
	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    72
	 * @return SmfNoError if success, else appropriate error value 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    73
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    74
	SmfError venues ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    75
			int perPage = SMF_ITEMS_PER_PAGE);
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    76
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    77
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    78
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    79
	 * Gets a list of attendees to the event
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    80
	 * attendeesAvailable() signal is emitted with SmfContacts for the users attending this event
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    81
	 * @param event 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    82
	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    83
	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    84
	 * @return SmfNoError if success, else appropriate error value
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    85
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    86
	SmfError attendees(SmfEvent event, int pageNum = SMF_FIRST_PAGE,
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    87
			int perPage = SMF_ITEMS_PER_PAGE); 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    88
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    89
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    90
	 * Updates events. Might not be supported by all service provider.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    91
	 * eventsUpdated() signal can be checked for success value.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    92
	 * @param SmfEventsList List of events to be posted
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    93
	 * @return SmfNoError if success, else appropriate error value
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    94
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    95
	SmfError postEvents ( SmfEventList events );
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    96
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    97
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    98
	 * Request for a custom operation. The signal customDataAvailable() is emitted 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
    99
	 * when the result is available.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   100
	 * @param operationId OperationId
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   101
	 * @param customData Custom data to be sent
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   102
	 * @return SmfNoError if success, else appropriate error value
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   103
	 * Note:-Interpretation of operationId and customData is upto the concerned
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   104
	 * plugin and client application. service provider should provide some
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   105
	 * serializing-deserializing utilities for these custom data
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   106
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   107
	SmfError customRequest ( const int& operationId, QByteArray* customData );
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   108
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   109
    /**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   110
     * Cancels a request generated due to the call to any API which results 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   111
     * into http request. Might return error if no request is currently pending.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   112
     * Please note that there can be only one request pending at any point of time
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   113
     * @return Appropriate SmfError value
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   114
     */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   115
	SmfError cancelRequest ();
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   116
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   117
public: //From smfObserver
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   118
	/**
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   119
	 * To notify availibility of asynchronous requests.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   120
	 * @param result Requested result, before using must check error param.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   121
	 * @param opcode Requested opcode, for which the result has arrived.
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   122
	 * @param error Error 
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   123
	 */
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   124
	void resultsAvailable(QByteArray result,SmfRequestTypeID opcode, SmfError error);
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   125
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   126
private:
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   127
	SmfEventsFetcher* m_eventFetcher;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   128
	//serialized byte array of provider+other info to be sent to the server
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   129
	//The order:- SmfProvider then params in order of their appearance in fn
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   130
	QByteArray m_serializedDataToServer;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   131
#ifdef Q_OS_SYMBIAN
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   132
	CSmfClientSymbian* m_SmfClientPrivate;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   133
	friend class CSmfClientSymbian;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   134
#else
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   135
	SmfClientQt* m_SmfClientPrivate;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   136
	friend class SmfClientQt;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   137
#endif
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   138
	quint8 m_argFlag;
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   139
	
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   140
	};
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   141
a180113055cb Music Events are now normal Fetcher APIs added
cgandhi
parents:
diff changeset
   142
#endif /* SMFEVENTSFETCHER_P_H_ */