idlefw/plugins/wrtdataplugin/src/wrtdataobserver.cpp
branchRCL_3
changeset 64 b276298d5729
parent 59 a0713522ab97
child 74 edd621764147
equal deleted inserted replaced
59:a0713522ab97 64:b276298d5729
    53 // ---------------------------------------------------------------------------
    53 // ---------------------------------------------------------------------------
    54 // Constructor
    54 // Constructor
    55 // ---------------------------------------------------------------------------
    55 // ---------------------------------------------------------------------------
    56 //
    56 //
    57 CWrtDataObserver::CWrtDataObserver ()
    57 CWrtDataObserver::CWrtDataObserver ()
    58     {
    58     {    
    59 
       
    60     }
    59     }
    61         
    60         
    62 // ---------------------------------------------------------------------------
    61 // ---------------------------------------------------------------------------
    63 // Destructor
    62 // Destructor
    64 // ---------------------------------------------------------------------------
    63 // ---------------------------------------------------------------------------
    65 //
    64 //
    66 CWrtDataObserver ::~CWrtDataObserver ()
    65 CWrtDataObserver ::~CWrtDataObserver ()
    67     {
    66     {
       
    67     TRAP_IGNORE( ReleaseL() );
       
    68     
    68     iInterface = NULL;
    69     iInterface = NULL;
    69     iData = NULL;
    70     iData = NULL;
    70     }
    71     }
    71 
    72 
    72 // ---------------------------------------------------------------------------
    73 // ---------------------------------------------------------------------------
   183     
   184     
   184     CleanupStack::PopAndDestroy( outParamList );
   185     CleanupStack::PopAndDestroy( outParamList );
   185     CleanupStack::PopAndDestroy( inParamList ); 
   186     CleanupStack::PopAndDestroy( inParamList ); 
   186     }
   187     }
   187 
   188 
       
   189 // ---------------------------------------------------------------------------
       
   190 // CWrtDataObserver ::ReleaseL
       
   191 // Sing off to notification
       
   192 // ---------------------------------------------------------------------------
       
   193 //
       
   194 void CWrtDataObserver::ReleaseL()
       
   195     {
       
   196     if( iInterface )
       
   197         {
       
   198         CLiwGenericParamList* inParamList = CLiwGenericParamList::NewL();
       
   199         CleanupStack::PushL( inParamList );
       
   200         CLiwGenericParamList* outParamList = CLiwGenericParamList::NewL();
       
   201         CleanupStack::PushL( outParamList );
       
   202         
       
   203         TInt err(KErrNone);
       
   204         TRAP(err, iInterface->ExecuteCmdL( 
       
   205                 KRequestNotification,
       
   206                 *inParamList,
       
   207                 *outParamList,
       
   208                 KLiwOptCancel,
       
   209                 this ));
       
   210         
       
   211         CleanupStack::PopAndDestroy( outParamList );
       
   212         CleanupStack::PopAndDestroy( inParamList );
       
   213         }
       
   214     }
       
   215 
   188 // End of file
   216 // End of file
   189