harvester/client/src/harvesterclient.cpp
changeset 28 c461c7fa72c2
parent 23 33ae025ac1e8
child 36 aa5a574040a4
--- a/harvester/client/src/harvesterclient.cpp	Fri May 14 16:17:23 2010 +0300
+++ b/harvester/client/src/harvesterclient.cpp	Thu May 27 13:18:43 2010 +0300
@@ -22,6 +22,7 @@
 #include "harvestereventobserverao.h"
 #include "harvesterlog.h"
 #include "harvesterclientao.h"
+#include "harvestersessionwatcher.h"
 #include "mdsutils.h"
 #include "harvesterrequestactive.h"
 #include "mdscommoninternal.h"
@@ -125,6 +126,8 @@
 
     iHEO = NULL;
     
+    iSessionWatcher = NULL;
+    
     return err;
     }
 
@@ -164,6 +167,9 @@
     {
     WRITELOG( "RHarvesterClient::Close()" );
     
+    delete iSessionWatcher;
+    iSessionWatcher = NULL;
+    
     // cancels Harvest Complete request if it exist at server
     UnregisterHarvestComplete();
     
@@ -199,8 +205,8 @@
 
     if ( iHarvesterClientAO )
         {
-       iHarvesterClientAO->SetObserver( aObserver );
-       }
+        iHarvesterClientAO->SetObserver( aObserver );
+        }
 	iObserver = aObserver;
     }
 
@@ -408,6 +414,33 @@
     }
 
 // ----------------------------------------------------------------------------------------
+// AddSessionObserver
+// ----------------------------------------------------------------------------------------
+//
+EXPORT_C void RHarvesterClient::AddSessionObserverL( MHarvesterSessionObserver& aObserver  )
+    {
+    if( iSessionWatcher )
+        {
+        delete iSessionWatcher;
+        iSessionWatcher = NULL;
+        }
+    iSessionWatcher = CHarvesterSessionWatcher::NewL( aObserver );
+    }
+
+// ----------------------------------------------------------------------------------------
+// RemoveSessionObserver
+// ----------------------------------------------------------------------------------------
+//
+EXPORT_C void RHarvesterClient::RemoveSessionObserver()
+    {
+    if( iSessionWatcher )
+        {
+        delete iSessionWatcher;
+        iSessionWatcher = NULL;
+        }
+    }
+
+// ----------------------------------------------------------------------------------------
 // RegisterHarvestComplete
 // ----------------------------------------------------------------------------------------
 //