diff -r b183ec05bd8c -r 19bba8228ff0 dcmofw/dcmoserver/src/dcmosession.cpp --- a/dcmofw/dcmoserver/src/dcmosession.cpp Tue Aug 31 16:04:06 2010 +0300 +++ b/dcmofw/dcmoserver/src/dcmosession.cpp Wed Sep 01 12:27:42 2010 +0100 @@ -19,9 +19,8 @@ #include "dcmosession.h" #include "dcmoclientserver.h" -#include "dcmomessagebox.h" #include "dcmodebug.h" - +#include "lawmodebug.h" // ---------------------------------------------------------------------------------------- // CDCMOSession::CDCMOSession @@ -69,15 +68,13 @@ 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); - if(CDCMOMessageBox::IsMsgBoxClosed()) - { - Server().CleanDcmoArray(); - } HBufC* category = HBufC::NewLC(KDCMOMaxStringSize); TPtr categoryptr = category->Des(); aMessage.Read (0, categoryptr); @@ -157,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" ); }