smf/smfservermodule/smfclient/smfclient_p.h
changeset 18 013a02bf2bb0
equal deleted inserted replaced
17:106a4bfcb866 18:013a02bf2bb0
       
     1 /**
       
     2  * Copyright (c) 2010 Sasken Communication Technologies Ltd.
       
     3  * All rights reserved.
       
     4  * This component and the accompanying materials are made available
       
     5  * under the terms of the "Eclipse Public License v1.0" 
       
     6  * which accompanies  this distribution, and is available
       
     7  * at the URL "http://www.eclipse.org/legal/epl-v10.html"
       
     8  *
       
     9  * Initial Contributors:
       
    10  * Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution
       
    11  *
       
    12  * Contributors:
       
    13  * Manasij Roy, Nalina Hariharan
       
    14  * 
       
    15  * Private Qt wrapper
       
    16  */
       
    17 
       
    18 #ifndef SMFCLIENT_P_H_
       
    19 #define SMFCLIENT_P_H_
       
    20 
       
    21 #include <QObject>
       
    22 #include <QDateTime>
       
    23 #include <QStringList>
       
    24 
       
    25 #include "smfclient.h"
       
    26 #include "smfclientglobal.h"
       
    27 #include "smfglobal.h"
       
    28 #include "smfprovider.h"
       
    29 #include "smfobserver.h"
       
    30 #ifdef Q_OS_SYMBIAN
       
    31 	#include "smfclientsymbian.h"
       
    32 #else
       
    33 	#include "smfclientqt.h"
       
    34 #endif
       
    35 
       
    36 
       
    37 /**
       
    38  * Private Qt wrapper
       
    39  * Provided to accomodate diff facilities in diff platforms.
       
    40  * Uses Symbian client-server for Symbian
       
    41  * QDbus for linux
       
    42  * QLocalserver for rest of the platforms
       
    43  * Note:- only symbian client-server impl is provided at the moment
       
    44  */
       
    45 class SmfClientPrivate : public smfObserver
       
    46 {
       
    47 	Q_OBJECT
       
    48 
       
    49 public:
       
    50 
       
    51 	/**
       
    52 	 * Constructs SmfClientPrivate
       
    53 	 * @param client SmfClient instance, so that it can directly emit SmfClient's signal
       
    54 	 */
       
    55 	SmfClientPrivate(SmfClient* client = 0);
       
    56 	
       
    57 	/**
       
    58 	 * Destructor
       
    59 	 */
       
    60 	~SmfClientPrivate(){};
       
    61 	
       
    62 public:
       
    63 	/**
       
    64 	 * Corresponds to SmfClient::GetServices(const QString )
       
    65 	 */
       
    66 	QList<SmfProvider>* GetServices(const QString serviceName);
       
    67 	
       
    68 	/**
       
    69 	* From smfobserver.
       
    70 	* This callback is invoked when requested result is available from
       
    71 	* other components of Smf (specially from plugin manager).
       
    72 	* @param result Parsed and serialized result.
       
    73 	* @param opcode Request code.
       
    74 	* @param error Error
       
    75 	*/
       
    76 	void resultsAvailable(QByteArray result,SmfRequestTypeID opcode,SmfError error);
       
    77 	
       
    78 private:
       
    79 	SmfClient* m_client;
       
    80 	QList<SmfProvider>* m_baseProvider;
       
    81 	QByteArray m_providerSerialized;	// serialized byte array of provider
       
    82 	
       
    83 #ifdef Q_OS_SYMBIAN
       
    84 	CSmfClientSymbian* m_SmfClientPrivate;
       
    85 	friend class CSmfClientSymbian;
       
    86 #else
       
    87 	SmfClientQt* m_SmfClientPrivate;
       
    88 	friend class SmfClientQt;
       
    89 #endif
       
    90 		
       
    91 	};
       
    92 
       
    93 #endif /* SMFCLIENT_P_H_ */