diff -r 88330f36f634 -r 41137c634688 omadrm/drmplugins/drmromtm/ui/src/RoMtmUi.cpp --- a/omadrm/drmplugins/drmromtm/ui/src/RoMtmUi.cpp Wed Jun 23 18:30:42 2010 +0300 +++ b/omadrm/drmplugins/drmromtm/ui/src/RoMtmUi.cpp Tue Jul 06 14:34:12 2010 +0300 @@ -50,6 +50,8 @@ #include //StringLoader #include //rconeresloader #include // test +#include "drmmsgwatcherobserver.h" + // EXTERNAL DATA STRUCTURES // EXTERNAL FUNCTION PROTOTYPES // CONSTANTS @@ -230,8 +232,6 @@ CRightsObjectMtmUi::CRightsObjectMtmUi( CBaseMtm& aBaseMtm , CRegisteredMtmDll& aRegisteredMtmDll ) : CBaseMtmUi( aBaseMtm , aRegisteredMtmDll ) { - iOpenService = NULL; - iDocHandler = NULL; iHostProcess = NULL; iType = ERo; } @@ -272,9 +272,6 @@ TRAP(err,WriteL(_L8("~CRightsObjectMtmUi"))); #endif iFs.Close(); - - delete iOpenService; - delete iDocHandler; } @@ -568,15 +565,11 @@ BaseMtm().LoadMessageL(); CRichText& body = BaseMtm().Body(); TPtrC ptr16( body.Read(0) ); - const TUid KUidDRMUI = { 0x101f85c7 }; + //const TUid KUidDRMUI = { 0x101f85c7 }; + CDrmMsgWatcherObserver* operation = NULL; if ( iType == ERoapTrigger || iType == ERoapTriggerRoAcquisition ) { - -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-iDocHandler")); -#endif - _LIT8( KRoapTriggerMimeType, "application/vnd.oma.drm.roap-trigger+xml" ); TDataType type = TDataType( KRoapTriggerMimeType ); HBufC* filename = NULL; @@ -593,60 +586,33 @@ return CompletedOperationL( aStatus ); } -#ifdef _DRM_TESTING - WriteL(ptr,ptr.Length()); -#endif - if (iDocHandler) - { - delete iDocHandler; - iDocHandler = NULL; - } -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-iDocHandler-NewL")); -#endif - iDocHandler = CDocumentHandler::NewL(); -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-iDocHandler-SetExitObserver")); -#endif - iDocHandler->SetExitObserver(this); -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-iDocHandler-OpenFileEmbeddedL")); -#endif - iDocHandler->OpenFileEmbeddedL(ptr,type); - CleanupStack::PopAndDestroy(filename); -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-iDocHandler-End")); -#endif + operation = CDrmMsgWatcherObserver::NewL( + Session(), + CActive::EPriorityStandard, + aStatus, + Type(), + ptr, + type ); } else { - if ( iOpenService ) - { - delete iOpenService; - iOpenService = NULL; - } -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-CAknOpenFileService::NewL")); -#endif CAiwGenericParamList* paramList = CAiwGenericParamList::NewLC(); TAiwVariant variantObject( ptr16 ); TAiwGenericParam param( EGenericParamFile, variantObject ); paramList->AppendL( param ); - TRAPD( err, iOpenService = CAknLaunchAppService::NewL( KUidDRMUI, this, paramList ) ); - if (err != KErrNone) - { - // just return to Inbox - } + operation = CDrmMsgWatcherObserver::NewL( + Session(), + CActive::EPriorityStandard, + aStatus, + Type(), + paramList ); CleanupStack::PopAndDestroy( paramList ); // paramList } -#ifdef _DRM_TESTING - WriteL(_L8("LaunchEditorApplicationL-End")); -#endif - return CompletedOperationL( aStatus ); + return operation; }