diff -r 4af31167ea77 -r 13d7c31c74e0 dcmofw/dcmoserver/src/dcmosession.cpp --- a/dcmofw/dcmoserver/src/dcmosession.cpp Thu Jul 15 19:36:11 2010 +0300 +++ b/dcmofw/dcmoserver/src/dcmosession.cpp Thu Aug 19 10:44:50 2010 +0300 @@ -20,7 +20,7 @@ #include "dcmosession.h" #include "dcmoclientserver.h" #include "dcmodebug.h" - +#include "lawmodebug.h" // ---------------------------------------------------------------------------------------- // CDCMOSession::CDCMOSession @@ -68,8 +68,10 @@ RDEBUG_2("CDCMOSession::DispatchMessageL; %d", aMessage.Function() ); TInt value; TDCMOStatus statusValue; + TLawMoStatus lstatusValue; TDCMONode nodeValue; TPckg status(statusValue); + TPckg lstatus(lstatusValue); TPckg node(nodeValue); TPckg intvalue(value); @@ -152,6 +154,88 @@ RDEBUG("CDCMOSession::DispatchMessageL - EDcmoSearchAdapter status " ); } break; + case EWipe: + { + //HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); + //TPtr itemPtr = category->Des(); + //aMessage.Read (0, itemPtr); + //aMessage.Complete(KErrNone); + //RDEBUG("CDCMOSession::EWipe force complete the request"); + lstatusValue = Server().WipeItem(); + aMessage.Write (0, lstatus); + //CleanupStack::PopAndDestroy(); + RLDEBUG_2("CDCMOSession::DispatchMessageL EWipe %d", lstatusValue ); + } + break; + + case EWipeAll: + { + //TInt aForce(1); + lstatusValue = Server().WipeAllItem(); + aMessage.Write (0, lstatus); + RLDEBUG_2("CDCMOSession::DispatchMessageL EWipeAll %d", lstatusValue ); + } + break; + + case EListItemName_Get: + { + HBufC* buf1 = HBufC::NewLC(KDCMOMaxStringSize); + TPtr bufPtr1 = buf1->Des(); + HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); + TPtr itemPtr = item->Des(); + aMessage.Read (0, itemPtr); + lstatusValue = Server().GetListItemL(itemPtr, bufPtr1); + aMessage.Write (1, bufPtr1); + aMessage.Write (2, lstatus); + CleanupStack::PopAndDestroy(2); + RLDEBUG_2("CDCMOSession::DispatchMessageL EListItemName_Get %d", lstatusValue ); + } + break; + + case EToBeWiped_Get: + { + HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); + TPtr itemPtr = item->Des(); + HBufC* buf1 = HBufC::NewLC(KDCMOMaxStringSize); + TPtr bufPtr1 = buf1->Des(); + aMessage.Read (0, itemPtr); + lstatusValue = Server().GetToBeWipedL(itemPtr, bufPtr1); + aMessage.Write (1, bufPtr1); + aMessage.Write (2, lstatus); + CleanupStack::PopAndDestroy(2); + RLDEBUG_2("CDCMOSession::DispatchMessageL EToBeWiped_Get %d", lstatusValue ); + } + break; + + case EToBeWiped_Set: + { + //TLex lex; + //TInt val; + //TBuf<255> wipeValue; + HBufC* item = HBufC::NewLC(KDCMOMaxStringSize); + TPtr itemPtr = item->Des(); + aMessage.Read (0, itemPtr); + TInt val = aMessage.Int1(); + //aMessage.Read (1, wipeValue); + RLDEBUG_2("Tobewiped category %s",itemPtr.PtrZ()); + //lex.Assign( wipeValue ); + //TInt err = lex.Val( val ); + RLDEBUG_2("Tobewiped value,int %d", val ); + //if(err==KErrNone) + // { + // RLDEBUG("SetToBeWiped call" ); + lstatusValue = Server().SetToBeWipedL(itemPtr, val); + // } + //else + // { + // RLDEBUG("SetToBeWiped not" ); + // lstatusValue = ELawMoFail; + // } + aMessage.Write (2, lstatus); + CleanupStack::PopAndDestroy(); + RLDEBUG_2("CDCMOSession::DispatchMessageL EToBeWiped_Set %d", lstatusValue ); + } + break; default : RDEBUG("CDCMOSession::DispatchMessageL- Case Not Found" ); }