9 * Initial Contributors: |
9 * Initial Contributors: |
10 * Nokia Corporation - initial contribution. |
10 * Nokia Corporation - initial contribution. |
11 * |
11 * |
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: This module contains the implementation of IAUpdateLauncherClient |
14 * Description: This module contains the implementation of RIAUpdateLauncherClient |
15 * class member functions. |
15 * class member functions. |
16 * |
16 * |
17 */ |
17 */ |
18 |
18 |
19 |
19 |
20 |
20 |
21 //INCLUDES |
21 //INCLUDES |
22 #include <qapplication.h> |
|
23 #include <xqservicerequest.h> |
|
24 #include <xqserviceutil.h> |
|
25 #include <xqrequestinfo.h> |
|
26 |
|
27 #include "iaupdatelauncherclient.h" |
22 #include "iaupdatelauncherclient.h" |
|
23 #include "iaupdateclientdefines.h" |
28 #include "iaupdatedebug.h" |
24 #include "iaupdatedebug.h" |
29 |
25 |
|
26 // ----------------------------------------------------------------------------- |
|
27 // RIAUpdateLauncherClient::RIAUpdateLauncherClient |
|
28 // |
|
29 // ----------------------------------------------------------------------------- |
|
30 // |
|
31 RIAUpdateLauncherClient::RIAUpdateLauncherClient() |
|
32 : iPtr1( NULL, 0 ) |
|
33 { |
|
34 } |
|
35 |
|
36 |
|
37 // ----------------------------------------------------------------------------- |
|
38 // RIAUpdateLauncherClient::Open |
|
39 // |
|
40 // ----------------------------------------------------------------------------- |
|
41 // |
|
42 TInt RIAUpdateLauncherClient::Open() |
|
43 { |
|
44 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::Open() begin"); |
|
45 |
|
46 TInt error = KErrNone; |
|
47 if ( !iConnected ) |
|
48 { |
|
49 TRAP( error, ConnectChainedAppL( ServiceUid() ) ); |
|
50 if ( error == KErrNone ) |
|
51 { |
|
52 iConnected = ETrue; |
|
53 } |
|
54 } |
|
55 IAUPDATE_TRACE_1("[IAUPDATE] error code: %d", error ); |
|
56 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::Open() end"); |
|
57 return error; |
|
58 } |
|
59 |
|
60 // ----------------------------------------------------------------------------- |
|
61 // RIAUpdateLauncherClient::Close |
|
62 // |
|
63 // ----------------------------------------------------------------------------- |
|
64 // |
|
65 void RIAUpdateLauncherClient::Close() |
|
66 { |
|
67 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::Close() begin"); |
|
68 // Let the parent handle closing. |
|
69 RAknAppServiceBase::Close(); |
|
70 iConnected = EFalse; |
|
71 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::Close() end"); |
|
72 } |
|
73 |
|
74 |
|
75 // ----------------------------------------------------------------------------- |
|
76 // RIAUpdateLauncherClient::ShowUpdates() |
|
77 // |
|
78 // ----------------------------------------------------------------------------- |
|
79 // |
|
80 void RIAUpdateLauncherClient::ShowUpdates( TBool& aRefreshFromNetworkDenied, |
|
81 TRequestStatus& aStatus ) |
|
82 { |
|
83 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::ShowUpdates() begin"); |
|
84 if ( iConnected ) |
|
85 { |
|
86 TPckg<TBool> refreshFromNetworkDenied( aRefreshFromNetworkDenied ); |
|
87 iPtr1.Set( refreshFromNetworkDenied ); |
|
88 TIpcArgs args; |
|
89 args.Set( 0, &iPtr1 ); |
|
90 SendReceive( IAUpdateClientDefines::EIAUpdateServerStartedByLauncher, |
|
91 args, |
|
92 aStatus ); |
|
93 } |
30 |
94 |
|
95 |
|
96 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::ShowUpdates() end"); |
|
97 } |
31 |
98 |
32 IAUpdateLauncherClient::IAUpdateLauncherClient() |
99 // ----------------------------------------------------------------------------- |
33 { |
100 // RIAUpdateLauncherClient::CancelAsyncRequest() |
34 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::IAUpdateLauncherClient()"); |
101 // |
35 mServiceRequest = NULL; |
102 // ----------------------------------------------------------------------------- |
36 } |
103 // |
|
104 void RIAUpdateLauncherClient::CancelAsyncRequest() |
|
105 { |
|
106 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::CancelAsyncRequest() begin"); |
|
107 if ( iConnected ) |
|
108 { |
|
109 SendReceive( IAUpdateClientDefines::EIAUpdateServerCancel ); |
|
110 } |
|
111 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::CancelAsyncRequest() end"); |
|
112 } |
37 |
113 |
38 IAUpdateLauncherClient::~IAUpdateLauncherClient() |
114 |
39 { |
115 // ----------------------------------------------------------------------------- |
40 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::~IAUpdateLauncherClient() begin"); |
116 // RIAUpdateLauncherClient::ServiceUid() |
41 if ( mServiceRequest) |
117 // |
|
118 // ----------------------------------------------------------------------------- |
|
119 // |
|
120 TUid RIAUpdateLauncherClient::ServiceUid() const |
42 { |
121 { |
43 delete mServiceRequest; |
122 IAUPDATE_TRACE("[IAUPDATE] RIAUpdateLauncherClient::ServiceUid()"); |
|
123 return IAUpdateClientDefines::KIAUpdateServiceUid; |
44 } |
124 } |
45 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::~IAUpdateLauncherClient() end"); |
|
46 } |
|
47 |
125 |
48 void IAUpdateLauncherClient::launch() |
|
49 { |
|
50 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::launch() begin"); |
|
51 mServiceRequest = new XQServiceRequest("com.nokia.services.swupdate.swupdate_interface","startedByLauncher(QString)",false); |
|
52 |
|
53 XQRequestInfo requestInfo; |
|
54 requestInfo.setEmbedded(true); |
|
55 mServiceRequest->setInfo(requestInfo); |
|
56 QString stringRefreshFromNetworkDenied("0"); |
|
57 *mServiceRequest << stringRefreshFromNetworkDenied; |
|
58 bool ret = mServiceRequest->send(); |
|
59 IAUPDATE_TRACE_1("[IAUPDATE] IAUpdateLauncherClient::launch() ret %d", ret ); |
|
60 if (!ret) |
|
61 { |
|
62 IAUPDATE_TRACE("[IAUPDATE] send failed"); |
|
63 qApp->quit(); |
|
64 } |
|
65 else |
|
66 { |
|
67 connect(mServiceRequest, SIGNAL(requestCompleted(QVariant)), this, SLOT(requestCompleted(QVariant))); |
|
68 connect(mServiceRequest, SIGNAL(requestError(int)), this, SLOT(requestError(int))); |
|
69 } |
|
70 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::launch() end"); |
|
71 } |
|
72 |
|
73 void IAUpdateLauncherClient::requestCompleted(const QVariant& /*value*/) |
|
74 { |
|
75 IAUPDATE_TRACE("[IAUPDATE] IAUpdateLauncherClient::requestCompleted()"); |
|
76 qApp->quit(); |
|
77 } |
|
78 |
|
79 void IAUpdateLauncherClient::requestError(int err) |
|
80 { |
|
81 IAUPDATE_TRACE_1("[IAUPDATE] IAUpdateLauncherClient::requestError() %d", err ); |
|
82 qApp->quit(); |
|
83 } |
|
84 |
|