--- a/bearermanagement/mpm/inc/mpmserver.h Wed Mar 31 22:15:10 2010 +0300
+++ b/bearermanagement/mpm/inc/mpmserver.h Wed Apr 14 16:22:04 2010 +0300
@@ -38,6 +38,7 @@
class CMPMCommsDatAccess;
class CMpmCsIdWatcher;
class CMpmDataUsageWatcher;
+class CMpmOfflineWatcher;
// CONSTANTS
_LIT( KMPMPanicCategory, "Mobility Policy Manager Server" );
@@ -167,6 +168,13 @@
EMPMBearerTypeOther
};
+enum TOfflineWlanQueryResponse
+ {
+ EOfflineResponseUndefined,
+ EOfflineResponseYes,
+ EOfflineResponseNo
+ };
+
// FUNCTION PROTOTYPES
void PanicServer( TInt aPanic );
@@ -792,6 +800,14 @@
inline CMpmCsIdWatcher* CsIdWatcher();
/**
+ * Change state of the P&S keys according to active connection.
+ * Non-leaving version. Resets variables in case error happens.
+ * @since 5.2
+ * @param aSession Handle to session used by connection.
+ */
+ void UpdateActiveConnection( CMPMServerSession& aSession );
+
+ /**
* Change state of the P&S keys according to active connection.
* @since 5.0
* @param aSession Handle to session used by connection.
@@ -813,11 +829,12 @@
void PublishActiveConnection();
/**
- * Returns number of active connections.
+ * Returns number of active iaps.
* @since 5.0
+ * @param aKeysUpToDate Tells whether P&S keys are valid or not.
* @return Number of active connections
*/
- TInt NumberOfActiveConnections();
+ TInt NumberOfActiveConnections( TBool& aKeysUpToDate );
/**
* Returns server session instance that corresponds to given
@@ -835,6 +852,30 @@
*/
void StopCellularConns();
+ /**
+ * Offline mode watcher updates the mode variable stored by MPM server.
+ * @since 5.2
+ */
+ void UpdateOfflineMode( TInt newModeValue );
+
+ /**
+ * Returns true if the phone is in offline mode.
+ * @since 5.2
+ */
+ TBool IsPhoneOffline();
+
+ /**
+ * Tells the "Use WLAN in offline mode" query response.
+ * @since 5.2
+ */
+ TOfflineWlanQueryResponse OfflineWlanQueryResponse();
+
+ /**
+ * Called when the "Use WLAN in offline mode" query has been responded.
+ * @since 5.2
+ */
+ void SetOfflineWlanQueryResponse( TOfflineWlanQueryResponse aResponse);
+
private:
/**
@@ -940,10 +981,15 @@
CMpmCsIdWatcher* iMpmCsIdWatcher;
/**
- * Handle to another central repository watcher
+ * Handle to central repository watcher
*/
CMpmDataUsageWatcher* iMpmDataUsageWatcher;
+ /**
+ * Handle to central repository watcher
+ */
+ CMpmOfflineWatcher* iMpmOfflineWatcher;
+
// Iap id of the active connection
TUint32 iActiveIapId;
@@ -958,6 +1004,12 @@
// Used for commsdat related functionalities
CMPMCommsDatAccess* iCommsDatAccess;
+
+ // Offline mode.
+ TInt iOfflineMode;
+
+ // Is WLAN usage already accepted in this offline session.
+ TOfflineWlanQueryResponse iOfflineWlanQueryResponse;
};
#include "mpmserver.inl"