realtimenetprots/sipfw/ProfileAgent/ApnManager/inc/sipapnconfigurationhandler.h
changeset 27 740ceea8e153
parent 15 8248b03a2669
child 32 2cdd984ec527
equal deleted inserted replaced
21:9565022eef45 27:740ceea8e153
    22 
    22 
    23 // INCLUDES
    23 // INCLUDES
    24 #include <etelpckt.h>
    24 #include <etelpckt.h>
    25 #include <es_enum.h>
    25 #include <es_enum.h>
    26 #include <es_enum_partner.h>
    26 #include <es_enum_partner.h>
       
    27 #include <centralrepository.h>
    27 #include "sipapnmanager.h"
    28 #include "sipapnmanager.h"
    28 
    29 
    29 // CONSTANTS
    30 // CONSTANTS
    30 const TInt KSecondaryApnMaxRetryCount = 100;
    31 const TInt KDBMaxRetryCount = 100;
    31 
    32 
    32 // FORWARD DECLARATIONS
    33 // FORWARD DECLARATIONS
    33 class CCommsDatabase;
    34 class CCommsDatabase;
    34 namespace CommsDat
    35 namespace CommsDat
    35     {
    36     {
   105 
   106 
   106         void StartMonitoringConnectionL( TConnectionInfo& aConnectionInfo );
   107         void StartMonitoringConnectionL( TConnectionInfo& aConnectionInfo );
   107         
   108         
   108         void WatchConnectionStatusChange();
   109         void WatchConnectionStatusChange();
   109         
   110         
   110         void WatchDatabaseStatusChangeL( TUint32 aIapId );
   111         void WatchDatabaseStatusChangeL();
   111         
   112         
   112         TBool ApnChangeNeededL( const TDesC8& aApn );
   113         TBool ApnChangeNeededL( const TDesC8& aApn );
   113         
   114         
   114         TBool ChangeApnIfNotInUseL( TBool aAllowAsync = ETrue );
   115         TBool ChangeApnIfNotInUseL( TBool aAllowAsync = ETrue );
   115         
   116         
   151 		CSIPApnConfigurationHandler( MSIPApnChangeObserver& aObserver,
   152 		CSIPApnConfigurationHandler( MSIPApnChangeObserver& aObserver,
   152                                                             TUint32 aIapId);
   153                                                             TUint32 aIapId);
   153 
   154 
   154 		/// 2nd phase constructor
   155 		/// 2nd phase constructor
   155 		void ConstructL();
   156 		void ConstructL();
       
   157 		
       
   158 		void BlockCellularDataUsageL();
       
   159 		
       
   160 		void AllowCellularDataUsage();
       
   161 
       
   162 		
       
   163 	    /**
       
   164 	    * Rollsback db in case of failure      
       
   165 	        * @param aDb 
       
   166 	    */
       
   167 	    static void RollBackDBTransaction(TAny* aDb);
   156 
   168 
   157 	private: // Data
   169 	private: // Data
   158 	
   170 	
   159 		MSIPApnChangeObserver& iObserver;
   171 		MSIPApnChangeObserver&          iObserver;    
   160 	    
   172 	    TSipApnMonitoringState          iMonitoringState;
   161 	    TSipApnMonitoringState iMonitoringState;
   173 		RSocketServ                     iSocketSrv;
   162 
   174 		RConnection                     iConnection;
   163 		RSocketServ iSocketSrv;
   175 		TPckgBuf<TConnectionInfo>       iConnectionInfo;
   164 		
   176         TNifProgressBuf                 iProgress;
   165 		RConnection iConnection;
   177         HBufC8*                         iApnProposal;
   166 		
   178         TUint32                         iIapId;
   167 		TPckgBuf<TConnectionInfo> iConnectionInfo;
   179         CCommsDatabase*                 iCommsDatabase;
   168         
   180         TInt                            iDBMonitoringRetryCount;
   169         TNifProgressBuf iProgress;
   181         HBufC8*                         iCurrentApn;
   170         
   182         TBool                           iApnUseSecureAuthProposal;
   171         HBufC8* iApnProposal;
   183         TBool                           iIsFailed;
   172         
   184         TBool                           iIsFatalFailure;
   173         TUint32 iIapId;
   185         HBufC8*                         iPrimaryApn;
   174         
   186         HBufC8*                         iSecondaryApn;
   175         CCommsDatabase* iCommsDatabase;
   187         CRepository*                    iRepository;
   176         
   188         TInt                            iCurrentUsageStatus;
   177         TInt iMonitoringRetryCount;
   189         TBool                           iCellularDataBlocked;
   178         
       
   179         HBufC8* iCurrentApn;
       
   180         
       
   181         TBool iApnUseSecureAuthProposal;
       
   182         
       
   183         TBool iIsFailed;
       
   184         
       
   185         TBool iIsFatalFailure;
       
   186         
       
   187         HBufC8* iPrimaryApn;
       
   188         HBufC8* iSecondaryApn;
       
   189         
   190         
   190 #ifdef CPPUNIT_TEST	
   191 #ifdef CPPUNIT_TEST	
   191 	    friend class CSIPApnManagerTest;
   192 	    friend class CSIPApnManagerTest;
   192 	    friend class CSIPApnManager;
   193 	    friend class CSIPApnManager;
   193 #endif
   194 #endif