supl/locationsuplfw/gateway/src/epos_csuplsessionmanager.cpp
changeset 39 3efc7a0e8755
parent 32 b12ea03c50a3
--- a/supl/locationsuplfw/gateway/src/epos_csuplsessionmanager.cpp	Fri Jul 23 19:40:48 2010 +0530
+++ b/supl/locationsuplfw/gateway/src/epos_csuplsessionmanager.cpp	Fri Aug 06 19:34:22 2010 +0530
@@ -49,7 +49,8 @@
 void CSuplSessionManager::ConstructL()
     {
     DEBUG_TRACE("CSuplSessionManager::ConstructL", __LINE__)            
-    iCommMgr = CSuplCommunicationManager::NewL();
+	iSessionRetryQ = CSuplSessionRetryQ::NewL();
+    iCommMgr = CSuplCommunicationManager::NewL(*this);
     iCommMgr->Initialize();
     iConnectError=KErrNone;
     }
@@ -72,6 +73,7 @@
     if(iProtocolMgr)          
     delete iProtocolMgr;
     delete iCommMgr;
+	delete iSessionRetryQ;
     delete iEcomWatcher;
     REComSession::FinalClose();
     }
@@ -510,4 +512,24 @@
      iProtocolMgr->CancelLocationConversionRequest(aSessn);
     }
     
+void CSuplSessionManager::ConnectionOpened()
+	{
+	iSessionRetryQ->SessionStarted();	
+	}
+
+void CSuplSessionManager::ConnectionClosed()
+	{
+	iSessionRetryQ->SessionEnded();	
+	}
+
+void CSuplSessionManager::QueueForReIssueRequestL(CSuplSessionRequest& aSessionRequest)
+	{
+	iSessionRetryQ->AddToQueueL(aSessionRequest);
+	}
+
+void CSuplSessionManager::RemoveFromQueueForReIssueRequest(CSuplSessionRequest& aSessionRequest)
+	{
+	iSessionRetryQ->RemoveFromQueueL(aSessionRequest);
+	}
+
 // End of File