supl/locationsuplfw/gateway/inc/epos_csuplsessionmanager.h
branchRCL_3
changeset 41 d746aee05493
parent 0 667063e416a2
child 42 02ba3f1733c6
equal deleted inserted replaced
31:380473e13443 41:d746aee05493
    24 #include <e32base.h>
    24 #include <e32base.h>
    25 #include <lbspositioninfo.h>
    25 #include <lbspositioninfo.h>
    26 #include <epos_suplterminal.h>
    26 #include <epos_suplterminal.h>
    27 #include <epos_suplterminaltrigger.h>
    27 #include <epos_suplterminaltrigger.h>
    28 #include "epos_csuplecomeventwatcher.h"
    28 #include "epos_csuplecomeventwatcher.h"
       
    29 #include "epos_csuplsessionretryq.h"
       
    30 #include "epos_csuplcommunicationmanager.h"
    29 
    31 
    30 // FORWARD DECLARATIONS
    32 // FORWARD DECLARATIONS
    31 class CSUPLProtocolManagerBase;
    33 class CSUPLProtocolManagerBase;
    32 class CSuplSessionBase;
    34 class CSuplSessionBase;
    33 class CSuplCommunicationManager;
    35 class CSuplCommunicationManager;
    35 // CLASS DECLARATION
    37 // CLASS DECLARATION
    36 
    38 
    37 /**
    39 /**
    38 *  Class to handle SUPL sessions 
    40 *  Class to handle SUPL sessions 
    39 */
    41 */
    40 class CSuplSessionManager : public CBase
    42 class CSuplSessionManager : public CBase, MSuplConnectionMonitor
    41 	{
    43 	{
    42     public:  // Constructors and destructor
    44     public:  // Constructors and destructor
    43 
    45 
    44         /**
    46         /**
    45         * Two-phased constructor
    47         * Two-phased constructor
    65 		void CancelInitialize();
    67 		void CancelInitialize();
    66 		void ProtocolHUnloaded(); 
    68 		void ProtocolHUnloaded(); 
    67         void DeInitialize(TRequestStatus& aStatus);
    69         void DeInitialize(TRequestStatus& aStatus);
    68         void CancelDeInitialize();
    70         void CancelDeInitialize();
    69 
    71 
       
    72 		void QueueForReIssueRequestL(CSuplSessionRequest& aSessionRequest);
       
    73 		void RemoveFromQueueForReIssueRequest(CSuplSessionRequest& aSessionRequest);
       
    74 
    70 		void StartTriggerSessionL(
    75 		void StartTriggerSessionL(
    71 				CSuplSessionBase* aSuplSession,
    76 				CSuplSessionBase* aSuplSession,
    72 				TRequestStatus& aStatus,
    77 				TRequestStatus& aStatus,
    73 				TSuplTerminalPeriodicTrigger& aPTrigger,
    78 				TSuplTerminalPeriodicTrigger& aPTrigger,
    74 				const TDesC& aHslpAddress, 
    79 				const TDesC& aHslpAddress, 
    84 				TRequestStatus& aStatus,  
    89 				TRequestStatus& aStatus,  
    85         		TSuplTriggerFireInfo& aFireInfo
    90         		TSuplTriggerFireInfo& aFireInfo
    86         	);
    91         	);
    87 		
    92 		
    88 		TInt GetSUPLMessageVersionL(TInt& aMajorVersion, const TDesC8& aReceivedMessage);
    93 		TInt GetSUPLMessageVersionL(TInt& aMajorVersion, const TDesC8& aReceivedMessage);
    89 		
    94 
       
    95 		// from MSuplConnectionMonitor
       
    96 		void ConnectionOpened();
       
    97 		void ConnectionClosed();
       
    98 	
    90     private:
    99     private:
    91 
   100 
    92         /**
   101         /**
    93         * C++ default constructor.
   102         * C++ default constructor.
    94         */
   103         */
   108     private:	// Data
   117     private:	// Data
   109         CSUPLProtocolManagerBase*   iProtocolMgr;
   118         CSUPLProtocolManagerBase*   iProtocolMgr;
   110         CSuplCommunicationManager*  iCommMgr;
   119         CSuplCommunicationManager*  iCommMgr;
   111         TInt iConnectError;
   120         TInt iConnectError;
   112         CSuplEcomEventWatcher*      iEcomWatcher;
   121         CSuplEcomEventWatcher*      iEcomWatcher;
   113 
   122 		CSuplSessionRetryQ*			iSessionRetryQ;
   114     };
   123     };
   115 
   124 
   116 
   125 
   117 #endif // __CSuplSessionManager_H__
   126 #endif // __CSuplSessionManager_H__
   118 
   127