17 |
17 |
18 #include <e32svr.h> |
18 #include <e32svr.h> |
19 |
19 |
20 #include "dcmosession.h" |
20 #include "dcmosession.h" |
21 #include "dcmoclientserver.h" |
21 #include "dcmoclientserver.h" |
22 #include "dcmomessagebox.h" |
|
23 #include "dcmodebug.h" |
22 #include "dcmodebug.h" |
24 |
23 #include "lawmodebug.h" |
25 |
24 |
26 // ---------------------------------------------------------------------------------------- |
25 // ---------------------------------------------------------------------------------------- |
27 // CDCMOSession::CDCMOSession |
26 // CDCMOSession::CDCMOSession |
28 // ---------------------------------------------------------------------------------------- |
27 // ---------------------------------------------------------------------------------------- |
29 CDCMOSession::CDCMOSession() |
28 CDCMOSession::CDCMOSession() |
67 void CDCMOSession::DispatchMessageL(const RMessage2& aMessage) |
66 void CDCMOSession::DispatchMessageL(const RMessage2& aMessage) |
68 { |
67 { |
69 RDEBUG_2("CDCMOSession::DispatchMessageL; %d", aMessage.Function() ); |
68 RDEBUG_2("CDCMOSession::DispatchMessageL; %d", aMessage.Function() ); |
70 TInt value; |
69 TInt value; |
71 TDCMOStatus statusValue; |
70 TDCMOStatus statusValue; |
|
71 TLawMoStatus lstatusValue; |
72 TDCMONode nodeValue; |
72 TDCMONode nodeValue; |
73 TPckg<TDCMOStatus> status(statusValue); |
73 TPckg<TDCMOStatus> status(statusValue); |
|
74 TPckg<TLawMoStatus> lstatus(lstatusValue); |
74 TPckg<TDCMONode> node(nodeValue); |
75 TPckg<TDCMONode> node(nodeValue); |
75 TPckg<TInt> intvalue(value); |
76 TPckg<TInt> intvalue(value); |
76 |
77 |
77 if(CDCMOMessageBox::IsMsgBoxClosed()) |
|
78 { |
|
79 Server().CleanDcmoArray(); |
|
80 } |
|
81 HBufC* category = HBufC::NewLC(KDCMOMaxStringSize); |
78 HBufC* category = HBufC::NewLC(KDCMOMaxStringSize); |
82 TPtr categoryptr = category->Des(); |
79 TPtr categoryptr = category->Des(); |
83 aMessage.Read (0, categoryptr); |
80 aMessage.Read (0, categoryptr); |
84 aMessage.Read (1, node); |
81 aMessage.Read (1, node); |
85 switch(aMessage.Function()) |
82 switch(aMessage.Function()) |
155 aMessage.Write (1, bufptr); |
152 aMessage.Write (1, bufptr); |
156 CleanupStack::PopAndDestroy(); //buf |
153 CleanupStack::PopAndDestroy(); //buf |
157 RDEBUG("CDCMOSession::DispatchMessageL - EDcmoSearchAdapter status " ); |
154 RDEBUG("CDCMOSession::DispatchMessageL - EDcmoSearchAdapter status " ); |
158 } |
155 } |
159 break; |
156 break; |
|
157 case EWipe: |
|
158 { |
|
159 //HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); |
|
160 //TPtr itemPtr = category->Des(); |
|
161 //aMessage.Read (0, itemPtr); |
|
162 //aMessage.Complete(KErrNone); |
|
163 //RDEBUG("CDCMOSession::EWipe force complete the request"); |
|
164 lstatusValue = Server().WipeItem(); |
|
165 aMessage.Write (0, lstatus); |
|
166 //CleanupStack::PopAndDestroy(); |
|
167 RLDEBUG_2("CDCMOSession::DispatchMessageL EWipe %d", lstatusValue ); |
|
168 } |
|
169 break; |
|
170 |
|
171 case EWipeAll: |
|
172 { |
|
173 //TInt aForce(1); |
|
174 lstatusValue = Server().WipeAllItem(); |
|
175 aMessage.Write (0, lstatus); |
|
176 RLDEBUG_2("CDCMOSession::DispatchMessageL EWipeAll %d", lstatusValue ); |
|
177 } |
|
178 break; |
|
179 |
|
180 case EListItemName_Get: |
|
181 { |
|
182 HBufC* buf1 = HBufC::NewLC(KDCMOMaxStringSize); |
|
183 TPtr bufPtr1 = buf1->Des(); |
|
184 HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); |
|
185 TPtr itemPtr = item->Des(); |
|
186 aMessage.Read (0, itemPtr); |
|
187 lstatusValue = Server().GetListItemL(itemPtr, bufPtr1); |
|
188 aMessage.Write (1, bufPtr1); |
|
189 aMessage.Write (2, lstatus); |
|
190 CleanupStack::PopAndDestroy(2); |
|
191 RLDEBUG_2("CDCMOSession::DispatchMessageL EListItemName_Get %d", lstatusValue ); |
|
192 } |
|
193 break; |
|
194 |
|
195 case EToBeWiped_Get: |
|
196 { |
|
197 HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); |
|
198 TPtr itemPtr = item->Des(); |
|
199 HBufC* buf1 = HBufC::NewLC(KDCMOMaxStringSize); |
|
200 TPtr bufPtr1 = buf1->Des(); |
|
201 aMessage.Read (0, itemPtr); |
|
202 lstatusValue = Server().GetToBeWipedL(itemPtr, bufPtr1); |
|
203 aMessage.Write (1, bufPtr1); |
|
204 aMessage.Write (2, lstatus); |
|
205 CleanupStack::PopAndDestroy(2); |
|
206 RLDEBUG_2("CDCMOSession::DispatchMessageL EToBeWiped_Get %d", lstatusValue ); |
|
207 } |
|
208 break; |
|
209 |
|
210 case EToBeWiped_Set: |
|
211 { |
|
212 //TLex lex; |
|
213 //TInt val; |
|
214 //TBuf<255> wipeValue; |
|
215 HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); |
|
216 TPtr itemPtr = item->Des(); |
|
217 aMessage.Read (0, itemPtr); |
|
218 TInt val = aMessage.Int1(); |
|
219 //aMessage.Read (1, wipeValue); |
|
220 RLDEBUG_2("Tobewiped category %s",itemPtr.PtrZ()); |
|
221 //lex.Assign( wipeValue ); |
|
222 //TInt err = lex.Val( val ); |
|
223 RLDEBUG_2("Tobewiped value,int %d", val ); |
|
224 //if(err==KErrNone) |
|
225 // { |
|
226 // RLDEBUG("SetToBeWiped call" ); |
|
227 lstatusValue = Server().SetToBeWipedL(itemPtr, val); |
|
228 // } |
|
229 //else |
|
230 // { |
|
231 // RLDEBUG("SetToBeWiped not" ); |
|
232 // lstatusValue = ELawMoFail; |
|
233 // } |
|
234 aMessage.Write (2, lstatus); |
|
235 CleanupStack::PopAndDestroy(); |
|
236 RLDEBUG_2("CDCMOSession::DispatchMessageL EToBeWiped_Set %d", lstatusValue ); |
|
237 } |
|
238 break; |
160 default : |
239 default : |
161 RDEBUG("CDCMOSession::DispatchMessageL- Case Not Found" ); |
240 RDEBUG("CDCMOSession::DispatchMessageL- Case Not Found" ); |
162 } |
241 } |
163 |
242 |
164 CleanupStack::PopAndDestroy(); //category |
243 CleanupStack::PopAndDestroy(); //category |