--- a/bearermanagement/mpm/inc/mpmserver.h Fri Apr 16 15:21:37 2010 +0300
+++ b/bearermanagement/mpm/inc/mpmserver.h Mon May 03 12:53:07 2010 +0300
@@ -29,6 +29,7 @@
#include <etel.h> // RTelServer
#include <etelmm.h> // RMobilePhone
#include <etelpckt.h> // RPacketService
+#include <ConnectionUiUtilities.h>
#include "mpmcommon.h"
#include "rmpm.h"
@@ -38,6 +39,7 @@
class CMPMCommsDatAccess;
class CMpmCsIdWatcher;
class CMpmDataUsageWatcher;
+class CMpmOfflineWatcher;
// CONSTANTS
_LIT( KMPMPanicCategory, "Mobility Policy Manager Server" );
@@ -167,6 +169,13 @@
EMPMBearerTypeOther
};
+enum TOfflineWlanQueryResponse
+ {
+ EOfflineResponseUndefined,
+ EOfflineResponseYes,
+ EOfflineResponseNo
+ };
+
// FUNCTION PROTOTYPES
void PanicServer( TInt aPanic );
@@ -179,7 +188,6 @@
class CMPMConfirmDlgStarting;
class CMPMDefaultConnection;
class CMPMWlanQueryDialog;
-class CMPMDialog;
// CLASS DECLARATION
/**
@@ -343,8 +351,10 @@
* Checks if the connection is started for the Iap Id.
* @since 3.2
* @param aIapId IAP Id of the connection
+ * @param aConnId Connection Id
*/
- TBool CheckIfStarted( const TUint32 aIapId );
+ TBool CheckIfStarted( const TUint32 aIapId,
+ const TConnectionId aConnId );
/**
* Checks if a connection is started with wlan iap.
@@ -445,12 +455,6 @@
const TPrefIAPNotifCaller aCaller );
/**
- * Update Connection dialog of each session
- * @since 3.2
- */
- void UpdateSessionConnectionDlgL();
-
- /**
* Handling of blacklisting certain IAP and the presumed IAP for
* the certain connection.
* @since 3.1
@@ -629,13 +633,6 @@
inline CMPMWlanQueryDialog* FirstInWlanQueryQueue();
/**
- * Get the ConnectDialogQueue.
- * @since 3.2
- * @return Pointer to the CMPMDialogQueue.
- */
- inline CArrayPtrFlat<CMPMDialog>* ConnectDialogQueue();
-
- /**
* Get the Default Connection object.
* @since 3.2
* @return Pointer to the Default Connection object.
@@ -790,34 +787,6 @@
inline CMpmCsIdWatcher* CsIdWatcher();
/**
- * Change state of the P&S keys according to active connection.
- * @since 5.0
- * @param aSession Handle to session used by connection.
- */
- void UpdateActiveConnectionL( CMPMServerSession& aSession );
-
- /**
- * Map bearer type between MPM and commsdat.
- * @since 5.0
- * @param aBearerType Bearer type used by MPM for active connection selection.
- * @return Bearer type used by commsdat
- */
- TUint32 MapBearerType( TMPMBearerType aBearerType );
-
- /**
- * Writes new active connection to the P&S keys
- * @since 5.0
- */
- void PublishActiveConnection();
-
- /**
- * Returns number of active connections.
- * @since 5.0
- * @return Number of active connections
- */
- TInt NumberOfActiveConnections();
-
- /**
* Returns server session instance that corresponds to given
* connection id.
* @since 5.2
@@ -832,6 +801,39 @@
* @since 5.2
*/
void StopCellularConns();
+
+ /**
+ * Handle to connection ui utilities
+ */
+ inline CConnectionUiUtilities* ConnUiUtils() const;
+
+ /**
+ * Offline mode watcher updates the mode variable stored by MPM server.
+ * @since 5.2
+ * @param aNewModeValue New offline mode value to be updated.
+ */
+ void UpdateOfflineMode( TInt aNewModeValue );
+
+ /**
+ * Tells if the phone is in offline mode.
+ * @since 5.2
+ * @return ETrue if phone is in offline mode.
+ */
+ TBool IsPhoneOffline();
+
+ /**
+ * Tells the "Use WLAN in offline mode" query response.
+ * @since 5.2
+ * @return TOfflineWlanQueryResponse (not_responded/yes/no).
+ */
+ TOfflineWlanQueryResponse OfflineWlanQueryResponse();
+
+ /**
+ * Called when the "Use WLAN in offline mode" query has been responded.
+ * @since 5.2
+ * @param aResponse setting the query response value (not_responded/yes/no).
+ */
+ void SetOfflineWlanQueryResponse( TOfflineWlanQueryResponse aResponse);
private:
@@ -912,9 +914,6 @@
// Solves problem with overlapping Wlan Queries
CArrayPtrFlat<CMPMWlanQueryDialog>* iWlanQueryQueue;
-
- // Solves problem with overlapping Connection Dialogs
- CArrayPtrFlat<CMPMDialog>* iConnectDialogQueue;
// Handles Default Connection selection
CMPMDefaultConnection* iDefaultConnection;
@@ -938,24 +937,30 @@
CMpmCsIdWatcher* iMpmCsIdWatcher;
/**
- * Handle to another central repository watcher
+ * Handle to central repository watcher
*/
CMpmDataUsageWatcher* iMpmDataUsageWatcher;
- // Iap id of the active connection
- TUint32 iActiveIapId;
-
- // Snap id of the active connection
- TUint32 iActiveSnapId;
-
- // Bearer type of the active connection
- TMPMBearerType iActiveBearerType;
+ /**
+ * Handle to central repository watcher
+ */
+ CMpmOfflineWatcher* iMpmOfflineWatcher;
// Dedicated clients
RArray<TUint32> iDedicatedClients;
// Used for commsdat related functionalities
CMPMCommsDatAccess* iCommsDatAccess;
+
+ // Handle to connection UI utilities
+ //
+ CConnectionUiUtilities* iConnUiUtils;
+
+ // Offline mode.
+ TInt iOfflineMode;
+
+ // Is WLAN usage already accepted in this offline session.
+ TOfflineWlanQueryResponse iOfflineWlanQueryResponse;
};
#include "mpmserver.inl"