author | cgandhi |
Tue, 12 Oct 2010 15:23:52 +0530 | |
changeset 27 | b3e1347ac96a |
parent 26 | 83d6a149c755 |
permissions | -rw-r--r-- |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
1 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2010 Sasken Communication Technologies Ltd. |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
18 | 5 |
* under the terms of the "Eclipse Public License v1.0" |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html" |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
8 |
* |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
10 |
* Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
11 |
* |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
12 |
* Contributors: |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
13 |
* Manasij Roy, Nalina Hariharan |
18 | 14 |
* |
15 |
* Description: |
|
16 |
* SMF Server component which handles the client requests and delegates |
|
17 |
* them properly to the appropriate component |
|
18 |
* |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
19 |
*/ |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
20 |
|
18 | 21 |
#include <QDebug> |
22 |
#include <qglobal.h> |
|
23 |
#include <smfcontact.h> |
|
24 |
#include <smfgroup.h> |
|
25 |
#include <smfpost.h> |
|
26 |
#include <smflocation.h> |
|
27 |
#include <smfpicture.h> |
|
28 |
#include <smfcomment.h> |
|
29 |
#include <smfcredmgrclient.h> |
|
30 |
#include <smfrelationmgr.h> |
|
31 |
||
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
32 |
#include "smfserver.h" |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
33 |
#include "smfpluginmanager.h" |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
34 |
#include "smftransportmanager.h" |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
35 |
#include "dsm.h" |
18 | 36 |
#ifdef Q_OS_SYMBIAN |
37 |
#include "smfserversymbian_p.h" |
|
38 |
#else |
|
39 |
#include "smfserverqt_p.h" |
|
40 |
#include "smfserverqtsession.h" |
|
41 |
#endif |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
42 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
43 |
|
13
b5d63d5fc252
Basic functionality on desktop server build. Started a test for GetServices
James Aley <jamesa@symbian.org>
parents:
10
diff
changeset
|
44 |
SmfServer::SmfServer(QObject* parent) |
b5d63d5fc252
Basic functionality on desktop server build. Started a test for GetServices
James Aley <jamesa@symbian.org>
parents:
10
diff
changeset
|
45 |
: QObject(parent) |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
46 |
{ |
18 | 47 |
m_transportManager = NULL; |
48 |
m_pluginManager = NULL; |
|
49 |
m_credentialMngr = NULL; |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
50 |
} |
13
b5d63d5fc252
Basic functionality on desktop server build. Started a test for GetServices
James Aley <jamesa@symbian.org>
parents:
10
diff
changeset
|
51 |
|
b5d63d5fc252
Basic functionality on desktop server build. Started a test for GetServices
James Aley <jamesa@symbian.org>
parents:
10
diff
changeset
|
52 |
SmfServer::~SmfServer() |
18 | 53 |
{ |
54 |
qDebug()<<"Inside Smfserver::~SmfServer()"; |
|
55 |
if(m_transportManager) |
|
56 |
delete m_transportManager; |
|
57 |
if(m_pluginManager) |
|
58 |
delete m_pluginManager; |
|
59 |
if(m_credentialMngr) |
|
60 |
delete m_credentialMngr; |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
61 |
if(m_SmfServerPrivate) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
62 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
63 |
delete m_SmfServerPrivate; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
64 |
m_SmfServerPrivate = NULL; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
65 |
} |
18 | 66 |
} |
13
b5d63d5fc252
Basic functionality on desktop server build. Started a test for GetServices
James Aley <jamesa@symbian.org>
parents:
10
diff
changeset
|
67 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
68 |
bool SmfServer::startServer() |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
69 |
{ |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
70 |
bool success = false; |
18 | 71 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
72 |
//Initialize all the component handles |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
73 |
SmfTransportInitializeResult networkStatus = prepareTransport(); |
18 | 74 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
75 |
m_pluginManager = SmfPluginManager::getInstance(this); |
18 | 76 |
qDebug()<<"After m_pluginManager construction"; |
77 |
||
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
78 |
// m_dataStoreManager = new SmfDataStoreManager(); |
18 | 79 |
|
80 |
#ifdef Q_OS_SYMBIAN |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
81 |
//Initialize private implementation |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
82 |
TRAPD(err, m_SmfServerPrivate = SmfServerSymbian::NewL(CActive::EPriorityStandard,this)); |
18 | 83 |
qDebug()<<"SmfServerSymbian::NewL() = "<<err; |
84 |
||
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
85 |
if( KErrNone != err ) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
86 |
return success; |
18 | 87 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
88 |
TInt error = m_SmfServerPrivate->Start( KSmfServerName ); |
18 | 89 |
qDebug()<<"m_SmfServerPrivate->Start = "<<error; |
90 |
||
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
91 |
RSemaphore semaphore; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
92 |
User::LeaveIfError( semaphore.OpenGlobal( KSmfServerSemaphoreName ) ); |
18 | 93 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
94 |
// Semaphore opened ok |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
95 |
semaphore.Signal(); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
96 |
semaphore.Close(); |
18 | 97 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
98 |
if( KErrNone == error ) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
99 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
100 |
success = true; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
101 |
} |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
102 |
else |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
103 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
104 |
//error |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
105 |
return success; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
106 |
} |
18 | 107 |
#else |
108 |
// For non-symbian platforms |
|
109 |
m_SmfServerPrivate = new SmfServerQt(this); |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
110 |
success = m_SmfServerPrivate->start(); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
111 |
if (!success) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
112 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
113 |
return success; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
114 |
} |
18 | 115 |
#endif |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
116 |
|
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
117 |
m_credentialMngr = new SmfCredMgrClient(); |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
118 |
return success; |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
119 |
} |
18 | 120 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
121 |
//Note:- Almost all the following APIs are called by private impl via the handle |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
122 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
123 |
* This API is called by the private impl when client is authorized |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
124 |
* @param interfaceID Interface id, provided by the private impl (it gets it from client) |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
125 |
* @param pluginIDMap Map of plugins who implement this interface and corresponding provider, |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
126 |
* this is returned to the private impl |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
127 |
* It calls PM to get the list. Note:- PM may return SmfProviderBase which is superset of SmfProvider. |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
128 |
* TODO:- session should store this map for future ref? |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
129 |
*/ |
18 | 130 |
void SmfServer::getPlugins(const SmfInterfaceID& interfaceID, QMap<SmfPluginID,SmfProvider>& pluginIDMap) |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
131 |
{ |
18 | 132 |
qDebug()<<"Inside SmfServer::getPlugins()"; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
133 |
m_pluginManager->getPlugins(interfaceID,pluginIDMap); |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
134 |
} |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
135 |
|
18 | 136 |
SmfPluginID SmfServer::getPlugin(const SmfInterfaceID& interfaceID,SmfProvider provider) |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
137 |
{ |
18 | 138 |
qDebug()<<"Inside SmfServer::getPlugin()"; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
139 |
SmfPluginID id; |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
140 |
m_pluginManager->getPluginId(interfaceID,provider, id); |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
141 |
return id; |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
142 |
} |
18 | 143 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
144 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
145 |
* This API is called by the private impl to get a list of authorized plugins from CM |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
146 |
* @param list List of plugins to be filtered |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
147 |
* @param authList List of authorised plugins filled by CM |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
148 |
* this is returned to the private impl |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
149 |
* It calls CMclient to get the list synchronously |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
150 |
* TODO:- session should store this for future ref? |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
151 |
*/ |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
152 |
void SmfServer::getAuthorizedPlugins(QList<SmfPluginID>& list,QList<SmfPluginID>& authList) |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
153 |
{ |
18 | 154 |
qDebug()<<"Inside SmfServer::getAuthorizedPlugins()"; |
155 |
authList.clear(); |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
156 |
for(int i=0;i<list.count();i++) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
157 |
{ |
26 | 158 |
bool isAuthorized = false; |
159 |
isAuthorized = m_credentialMngr->CheckPluginAuthentication(list[i]); |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
160 |
if(isAuthorized) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
161 |
authList.append(list[i]); |
18 | 162 |
} |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
163 |
} |
18 | 164 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
165 |
SmfTransportInitializeResult SmfServer::prepareTransport() |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
166 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
167 |
m_transportManager = SmfTransportManager::getInstance(); |
18 | 168 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
169 |
//checking the network status |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
170 |
SmfTransportInitializeResult networkStatus = m_transportManager->initializeTransport(); |
18 | 171 |
qDebug()<<"m_transportManager->initializeTransport() return = "<<networkStatus; |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
172 |
return networkStatus; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
173 |
} |
18 | 174 |
|
25 | 175 |
SmfError SmfServer::sendToPluginManager ( int requestID, SmfPluginID pluginID, |
18 | 176 |
SmfInterfaceID interfaceID, SmfRequestTypeID requestTypeID, |
177 |
QByteArray dataForPlugin ) |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
178 |
{ |
18 | 179 |
qDebug()<<"Inside SmfServer::sendToPluginManager()"; |
25 | 180 |
Q_UNUSED(interfaceID) |
181 |
#ifdef DETAILEDDEBUGGING |
|
18 | 182 |
qDebug()<<"Request ID = "<<requestID; |
183 |
qDebug()<<"PluginID = "<<pluginID; |
|
184 |
qDebug()<<"Interface = "<<interfaceID; |
|
185 |
qDebug()<<"RequestType = "<<requestTypeID; |
|
25 | 186 |
#endif |
187 |
||
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
188 |
//TODO:-PM should take page info too |
18 | 189 |
SmfError err = m_pluginManager->createRequest(requestID,pluginID,requestTypeID,dataForPlugin); |
25 | 190 |
qDebug()<<"m_pluginManager->createRequest() ret value = "<<err; |
191 |
||
192 |
return err; |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
193 |
} |
18 | 194 |
|
195 |
/** |
|
196 |
* Request the Plugin manager to get the data. |
|
197 |
* @param requestID Corresponds to a client's session |
|
198 |
* @param pluginID Plugin for which the request is intended |
|
199 |
* @param interfaceID Interface name |
|
200 |
* @param dataForPlugin Data to be sent for this request |
|
201 |
*/ |
|
202 |
SmfError SmfServer::sendToPluginManager ( SmfPluginID pluginID, |
|
203 |
SmfInterfaceID interfaceID, SmfRequestTypeID requestTypeID, |
|
204 |
QByteArray dataForPlugin, QByteArray &outputData) |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
205 |
{ |
18 | 206 |
qDebug()<<"Inside SmfServer::sendToPluginManager() for sync req"; |
25 | 207 |
Q_UNUSED(interfaceID) |
208 |
#ifdef DETAILEDDEBUGGING |
|
18 | 209 |
qDebug()<<"PluginID = "<<pluginID; |
210 |
qDebug()<<"Interface = "<<interfaceID; |
|
211 |
qDebug()<<"RequestType = "<<requestTypeID; |
|
25 | 212 |
#endif |
18 | 213 |
|
214 |
//TODO:-PM should take page info too |
|
215 |
SmfError err = m_pluginManager->createSyncRequest(pluginID,requestTypeID,dataForPlugin, outputData); |
|
216 |
qDebug()<<"m_pluginManager->createSyncRequest() = "<<err; |
|
217 |
return err; |
|
218 |
} |
|
219 |
||
220 |
SmfError SmfServer::sendToDSM ( QByteArray qtdataForDSM, SmfRequestTypeID opcode, |
|
221 |
QByteArray& qtdataFromDSM ) |
|
222 |
{ |
|
223 |
qDebug()<<"Inside SmfServer::sendToDSM()"; |
|
26 | 224 |
SmfError err = SmfNoError; |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
225 |
DataStoreManager* dsm = DataStoreManager::getDataStoreManager(); |
18 | 226 |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
227 |
//Note:- deserialization and formation of user profile and social profile are done by server |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
228 |
QDataStream readStream(&qtdataForDSM,QIODevice::ReadOnly); |
25 | 229 |
QDataStream writeStream(&qtdataFromDSM,QIODevice::WriteOnly); |
18 | 230 |
quint8 flag = 0; |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
231 |
switch(opcode) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
232 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
233 |
case SmfRelationCreate: |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
234 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
235 |
//read the incoming data |
25 | 236 |
SmfProvider *provider = new SmfProvider(); |
237 |
SmfContact *contact = new SmfContact(); |
|
238 |
readStream>>flag; |
|
239 |
if(flag) |
|
240 |
readStream>>*provider; |
|
241 |
else |
|
242 |
{ |
|
243 |
delete provider; |
|
244 |
provider = NULL; |
|
245 |
} |
|
18 | 246 |
readStream>>flag; |
247 |
if(flag) |
|
25 | 248 |
readStream>>*contact; |
249 |
else |
|
250 |
{ |
|
251 |
delete contact; |
|
252 |
contact = NULL; |
|
253 |
} |
|
26 | 254 |
SmfRelationId relnId; |
255 |
relnId.clear(); |
|
256 |
err = dsm->create(relnId,provider,contact); |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
257 |
writeStream<<relnId; |
25 | 258 |
if(provider != NULL) |
259 |
delete provider; |
|
260 |
if(contact != NULL) |
|
261 |
delete contact; |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
262 |
} |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
263 |
break; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
264 |
case SmfRelationAssociate: |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
265 |
{ |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
266 |
SmfRelationId relnId; |
25 | 267 |
SmfContact *contact = new SmfContact(); |
268 |
SmfProvider *provider = new SmfProvider(); |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
269 |
readStream>>relnId; |
18 | 270 |
readStream>>flag; |
271 |
if(flag) |
|
25 | 272 |
readStream>>*contact; |
273 |
else |
|
274 |
{ |
|
275 |
delete contact; |
|
276 |
contact = NULL; |
|
277 |
} |
|
18 | 278 |
readStream>>flag; |
279 |
if(flag) |
|
25 | 280 |
readStream>>*provider; |
281 |
else |
|
282 |
{ |
|
283 |
delete provider; |
|
284 |
provider = NULL; |
|
285 |
} |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
286 |
|
26 | 287 |
err = dsm->associate(relnId,contact,provider); |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
288 |
int errInt = err; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
289 |
writeStream<<errInt; |
25 | 290 |
if(contact != NULL) |
291 |
delete contact; |
|
292 |
if(provider != NULL) |
|
293 |
delete provider; |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
294 |
} |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
295 |
break; |
18 | 296 |
case SmfRelationRemove: |
297 |
{ |
|
298 |
SmfRelationId relnId; |
|
25 | 299 |
SmfContact *contact = new SmfContact(); |
18 | 300 |
readStream>>relnId; |
301 |
readStream>>flag; |
|
302 |
if(flag) |
|
25 | 303 |
readStream>>*contact; |
304 |
else |
|
305 |
{ |
|
306 |
delete contact; |
|
307 |
contact = NULL; |
|
308 |
} |
|
26 | 309 |
err = dsm->remove(relnId, contact); |
18 | 310 |
int errInt = err; |
311 |
writeStream<<errInt; |
|
25 | 312 |
if(NULL != contact) |
313 |
delete contact; |
|
18 | 314 |
break; |
315 |
} |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
316 |
case SmfRelationSearchById: |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
317 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
318 |
SmfRelationId relnId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
319 |
readStream>>relnId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
320 |
|
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
321 |
SmfRelationItem* relnItem = dsm->searchById(relnId); |
18 | 322 |
quint8 flag = 1; |
323 |
if(relnItem) |
|
324 |
{ |
|
325 |
writeStream<<flag; |
|
326 |
writeStream<<*(relnItem); |
|
327 |
} |
|
328 |
else |
|
329 |
{ |
|
330 |
flag = 0; |
|
331 |
writeStream<<flag; |
|
332 |
} |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
333 |
} |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
334 |
break; |
18 | 335 |
case SmfRelationSearchByContact: |
336 |
{ |
|
337 |
SmfContact contact; |
|
338 |
readStream>>contact; |
|
339 |
||
340 |
SmfRelationId relnId = dsm->searchByContact(contact); |
|
341 |
writeStream<<relnId; |
|
342 |
break; |
|
343 |
} |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
344 |
case SmfRelationCount: |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
345 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
346 |
SmfRelationId relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
347 |
readStream>>relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
348 |
int cnt = dsm->count(relationId); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
349 |
writeStream<<cnt; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
350 |
} |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
351 |
break; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
352 |
case SmfRelationGet: |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
353 |
{ |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
354 |
SmfRelationId relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
355 |
quint32 index; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
356 |
readStream>>relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
357 |
readStream>>index; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
358 |
SmfRelationItem* relnItem = dsm->getContact(relationId,index); |
18 | 359 |
quint8 flag = 1; |
360 |
if(relnItem) |
|
361 |
{ |
|
362 |
writeStream<<flag; |
|
363 |
writeStream<<*(relnItem); |
|
364 |
} |
|
365 |
else |
|
366 |
{ |
|
367 |
flag = 0; |
|
368 |
writeStream<<flag; |
|
369 |
} |
|
370 |
break; |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
371 |
} |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
372 |
case SmfRelationGetAll: |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
373 |
{ |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
374 |
SmfRelationId relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
375 |
readStream>>relationId; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
376 |
|
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
377 |
QList<SmfRelationItem> relnIditemList = dsm->getAll(relationId); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
378 |
writeStream<<relnIditemList; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
379 |
} |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
380 |
break; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
381 |
case SmfRelationGetAllRelations: |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
382 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
383 |
QList<SmfRelationId> relnIdList = dsm->getAllRelations(); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
384 |
writeStream<<relnIdList; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
385 |
} |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
386 |
break; |
18 | 387 |
case SmfRelationDeleteRelation: |
388 |
{ |
|
389 |
SmfRelationId relnId; |
|
390 |
readStream>>relnId; |
|
26 | 391 |
err = dsm->deleteRelation(relnId); |
18 | 392 |
int errInt = err; |
393 |
writeStream<<errInt; |
|
394 |
break; |
|
395 |
} |
|
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
396 |
default: |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
397 |
break; |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
398 |
} |
26 | 399 |
return err; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
400 |
} |
18 | 401 |
|
26 | 402 |
#ifdef Q_FOR_FUTURE |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
403 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
404 |
* This slot is invoked when CM finishes the authorization of the client. |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
405 |
* @param authID As it contains the session ptr, sever directly invokes the session's API to notify success |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
406 |
*/ |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
407 |
void SmfServer::clientAuthorizationFinished(bool success,SmfClientAuthID authID ) |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
408 |
{ |
18 | 409 |
qDebug()<<"Inside SmfServer::clientAuthorizationFinished()"; |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
410 |
//TODO:- implement this api in session class |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
411 |
//note:- in case success is false client completes the request with SmfErrClientAuthFailed |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
412 |
//TODO:- define set of smf wide error after consulting with other module owners |
18 | 413 |
authID.session->clientAuthorizationFinished(success); |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
414 |
} |
26 | 415 |
#endif |
18 | 416 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
417 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
418 |
* This API is called by PM once its done with request and parsing |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
419 |
* @param requestID The request id which is completed |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
420 |
* @param parsedData Serialized data(as per request type) filled by PM |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
421 |
* @param error Error occured |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
422 |
* TODO:- should use smf wide global errors instead |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
423 |
*/ |
18 | 424 |
void SmfServer::resultsAvailable ( int requestID, QByteArray* parsedData, SmfError error ) |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
425 |
{ |
18 | 426 |
qDebug()<<"Inside SmfServer::resultsAvailable()"; |
25 | 427 |
#ifdef DETAILEDDEBUGGING |
18 | 428 |
qDebug()<<"requestID = "<<requestID; |
429 |
qDebug()<<"parsedData->size() = "<<parsedData->size(); |
|
430 |
qDebug()<<"Error = "<<error; |
|
25 | 431 |
#endif |
432 |
||
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
433 |
//Serialize error followed by actual data |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
434 |
QByteArray dataWithError; |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
435 |
QDataStream writer(&dataWithError,QIODevice::WriteOnly); |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
436 |
writer<<error; |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
437 |
if(parsedData->size()) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
438 |
{ |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
439 |
writer<<*(parsedData); |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
440 |
} |
18 | 441 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
442 |
//find out the appropriate session and request id and service that |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
443 |
m_SmfServerPrivate->findAndServiceclient(requestID,&dataWithError,error); |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
444 |
} |
18 | 445 |
|
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
446 |
/** |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
447 |
* This is called when CMclient notifies client expiry. |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
448 |
* @param type notification type, set of enums for future expansion |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
449 |
* @param id Plugin Id for which the authentication has expired |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
450 |
*/ |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
451 |
void SmfServer::authenticationKeysExpired(NotificationType type,SmfPluginID id) |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
452 |
{ |
14
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
453 |
Q_UNUSED(type) |
a469c0e6e7fb
changes for SmfPost, SmfCredentialMgr, PLuginManager, SmfServer. Adding Sample Plugins and Sample Client Applications.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
13
diff
changeset
|
454 |
Q_UNUSED(id) |
7
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
455 |
//resend the notify request |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
456 |
//CMclient->requestAuthExpiryNotify(); |
be09cf1f39dd
Updating the source code for plugin manager, transport manager, smfserver and smf client.
cgandhi <chandradeep.gandhi@sasken.com>
parents:
diff
changeset
|
457 |
} |
18 | 458 |