supl/locationsuplfw/gateway/inc/epos_csuplsessionmanager.h
changeset 40 16118e24b93b
parent 32 b12ea03c50a3
equal deleted inserted replaced
33:834e27cad510 40:16118e24b93b
    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_suplgeocellinfo.h>
    28 #include <epos_suplgeocellinfo.h>
    29 #include "epos_csuplecomeventwatcher.h"
    29 #include "epos_csuplecomeventwatcher.h"
       
    30 #include "epos_csuplsessionretryq.h"
       
    31 #include "epos_csuplcommunicationmanager.h"
    30 
    32 
    31 // FORWARD DECLARATIONS
    33 // FORWARD DECLARATIONS
    32 class CSUPLProtocolManagerBase;
    34 class CSUPLProtocolManagerBase;
    33 class CSuplSessionBase;
    35 class CSuplSessionBase;
    34 class CSuplCommunicationManager;
    36 class CSuplCommunicationManager;
    37 // CLASS DECLARATION
    39 // CLASS DECLARATION
    38 
    40 
    39 /**
    41 /**
    40 *  Class to handle SUPL sessions 
    42 *  Class to handle SUPL sessions 
    41 */
    43 */
    42 class CSuplSessionManager : public CBase
    44 class CSuplSessionManager : public CBase, MSuplConnectionMonitor
    43 	{
    45 	{
    44     public:  // Constructors and destructor
    46     public:  // Constructors and destructor
    45 
    47 
    46         /**
    48         /**
    47         * Two-phased constructor
    49         * Two-phased constructor
    67 		void CancelInitialize();
    69 		void CancelInitialize();
    68 		void ProtocolHUnloaded(); 
    70 		void ProtocolHUnloaded(); 
    69         void DeInitialize(TRequestStatus& aStatus);
    71         void DeInitialize(TRequestStatus& aStatus);
    70         void CancelDeInitialize();
    72         void CancelDeInitialize();
    71 
    73 
       
    74 		void QueueForReIssueRequestL(CSuplSessionRequest& aSessionRequest);
       
    75 		void RemoveFromQueueForReIssueRequest(CSuplSessionRequest& aSessionRequest);
    72 		void StartTriggerSessionL(
    76 		void StartTriggerSessionL(
    73 				CSuplSessionBase* aSuplSession,
    77 				CSuplSessionBase* aSuplSession,
    74 				TRequestStatus& aStatus,
    78 				TRequestStatus& aStatus,
    75 				TSuplTerminalPeriodicTrigger& aPTrigger,
    79 				TSuplTerminalPeriodicTrigger& aPTrigger,
    76 				const TDesC& aHslpAddress, 
    80 				const TDesC& aHslpAddress, 
    85 				CSuplSessionBase *aSessn,        	
    89 				CSuplSessionBase *aSessn,        	
    86 				TRequestStatus& aStatus,  
    90 				TRequestStatus& aStatus,  
    87         		TSuplTriggerFireInfo& aFireInfo
    91         		TSuplTriggerFireInfo& aFireInfo
    88         	);
    92         	);
    89 		
    93 		
       
    94 	   /**
       
    95         * Get SUPL message version.
       
    96         */
    90 		TInt GetSUPLMessageVersionL(TInt& aMajorVersion, const TDesC8& aReceivedMessage);
    97 		TInt GetSUPLMessageVersionL(TInt& aMajorVersion, const TDesC8& aReceivedMessage);
    91 		
    98 		
    92 		
    99 		
       
   100 	   /**
       
   101         * Makes location conversion request.
       
   102         */
    93 		void MakeLocationConversionRequestL( CSuplSessionBase* aSuplSessn,
   103 		void MakeLocationConversionRequestL( CSuplSessionBase* aSuplSessn,
    94 		                                             TGeoCellInfo& aCellInfo,
   104 		                                             TGeoCellInfo& aCellInfo,
    95 		                                             TRequestStatus& aStatus
   105 		                                             TRequestStatus& aStatus
    96 		                                           );	                                           
   106 		                                           );	                                           
    97 		                                           
   107 		
       
   108 		/**
       
   109 		 * Cancels outstanding conversion request.
       
   110 		 */
    98 		void CancelLocationConversionRequest(CSuplSessionBase *aSessn);
   111 		void CancelLocationConversionRequest(CSuplSessionBase *aSessn);
    99 		
   112 		
       
   113 	
       
   114 		// from MSuplConnectionMonitor
       
   115 		void ConnectionOpened();
       
   116 		void ConnectionClosed();
       
   117 	
   100     private:
   118     private:
   101 
   119 
   102         /**
   120         /**
   103         * C++ default constructor.
   121         * C++ default constructor.
   104         */
   122         */
   118     private:	// Data
   136     private:	// Data
   119         CSUPLProtocolManagerBase*   iProtocolMgr;
   137         CSUPLProtocolManagerBase*   iProtocolMgr;
   120         CSuplCommunicationManager*  iCommMgr;
   138         CSuplCommunicationManager*  iCommMgr;
   121         TInt iConnectError;
   139         TInt iConnectError;
   122         CSuplEcomEventWatcher*      iEcomWatcher;
   140         CSuplEcomEventWatcher*      iEcomWatcher;
   123 
   141 		CSuplSessionRetryQ*			iSessionRetryQ;
   124     };
   142     };
   125 
   143 
   126 
   144 
   127 #endif // __CSuplSessionManager_H__
   145 #endif // __CSuplSessionManager_H__
   128 
   146