--- a/bearermanagement/mpm/src/mpmwlanquerydialog.cpp Thu Jun 17 22:32:02 2010 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,271 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Handles displaying wlan dialogs
-*
-*/
-
-
-#include <wlanmgmtcommon.h>
-#include <e32std.h>
-#include <utf.h>
-#include <cmpluginwlandef.h>
-#include <ctsydomainpskeys.h>
-
-#include "mpmwlanquerydialog.h"
-#include "mpmiapselection.h"
-#include "mpmconnmonevents.h"
-#include "mpmlogger.h"
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::CMPMWlanQueryDialog
-// ---------------------------------------------------------------------------
-//
-CMPMWlanQueryDialog::CMPMWlanQueryDialog( CMPMIapSelection& aIapSelection,
- TUint32 aWlanIapId )
- : CActive( CActive::EPriorityStandard ),
- iIapSelection( aIapSelection ),
- iWlanQueryState( EOffline ),
- iWlanIapId( aWlanIapId ),
- iOverrideStatus( KErrNone )
- {
- CActiveScheduler::Add( this );
- }
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CMPMWlanQueryDialog::ConstructL()
- {
- User::LeaveIfError(iNotifier.Connect());
- }
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::NewL
-// ---------------------------------------------------------------------------
-//
-CMPMWlanQueryDialog* CMPMWlanQueryDialog::NewL( CMPMIapSelection& aSession,
- TUint32 aWlanIapElementId )
- {
- CMPMWlanQueryDialog* self = new( ELeave ) CMPMWlanQueryDialog( aSession,
- aWlanIapElementId );
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
- return self;
- }
-
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::~CMPMWlanQueryDialog
-// ---------------------------------------------------------------------------
-//
-CMPMWlanQueryDialog::~CMPMWlanQueryDialog()
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog enters" )
-
- // Check if this dialog instance was not started but only added to the queue
- if ( iIapSelection.Session()->MyServer().FirstInWlanQueryQueue() != this )
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog, not a active delete" )
-
- // Close notifier
- iNotifier.Close();
-
- // We're not first in the queue, thus we can just delete.
- // But remember the pointer in the array.
- iIapSelection.Session()->MyServer().RemoveFromWlanQueryQueue( this );
- MPMLOGSTRING( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog exits (break)" )
- return;
- }
-
- // Cancel previous dialogs if any.
- Cancel();
-
- // Close notifier
- iNotifier.Close();
-
- // Remove self from the queue
- iIapSelection.Session()->MyServer().RemoveFromWlanQueryQueue( this );
-
- // Start the next query
- CMPMWlanQueryDialog* dlg = iIapSelection.Session()->MyServer().FirstInWlanQueryQueue();
- if ( dlg )
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog starts new dialog" )
- dlg->OfferInformation( iStatus.Int() );
- // In destructor we cannot let the query leave
- TRAPD( err, dlg->StartWlanQueryL(); )
- if ( err != KErrNone )
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog caught Leave %d, executing RunError()", err )
- dlg->RunError( err );
- }
- }
-
- MPMLOGSTRING( "CMPMWlanQueryDialog::~CMPMWlanQueryDialog exits" )
- }
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::DoCancel
-// ---------------------------------------------------------------------------
-//
-void CMPMWlanQueryDialog::DoCancel()
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::DoCancel state %d", iWlanQueryState )
- if ( iWlanQueryState == EOffline )
- {
- iNotifier.CancelNotifier( KUidCOfflineWlanNoteDlg );
- }
- }
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::RunL
-// ---------------------------------------------------------------------------
-//
-void CMPMWlanQueryDialog::RunL()
- {
- MPMLOGSTRING3( "CMPMWlanQueryDialog::RunL status %d state %d",
- iStatus.Int(),
- iWlanQueryState )
-
- if( iWlanQueryState == EOffline )
- {
- if( iStatus.Int() == KErrNone )
- {
- iIapSelection.Session()->MyServer().SetOfflineWlanQueryResponse(
- EOfflineResponseYes );
- }
- else if ( iStatus.Int() == KErrCancel )
- {
- iIapSelection.Session()->MyServer().SetOfflineWlanQueryResponse(
- EOfflineResponseNo );
- MPMLOGSTRING2( "CMPMWlanQueryDialog::RunL offline query returned %d",
- iStatus.Int() )
- }
- else
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::RunL offline query returned %d",
- iStatus.Int() )
- }
- }
- // if an error was given through OfferInformation() -call we abort the execution.
- //
- else if ( iOverrideStatus != KErrNone )
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::StartWlanQuery inherited error %d", iOverrideStatus )
- iIapSelection.UserWlanSelectionDoneL( iOverrideStatus, iWlanIapId );
- }
- else
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::RunL, unknown state: %d", iWlanQueryState )
- User::Leave( KErrCancel );
- }
-
- iIapSelection.UserWlanSelectionDoneL( iStatus.Int(), iWlanIapId );
-
- iWlanIapId = 0;
- }
-
-// ---------------------------------------------------------------------------
-// CMPMWlanQueryDialog::RunError
-// ---------------------------------------------------------------------------
-//
-TInt CMPMWlanQueryDialog::RunError( TInt aError )
- {
- MPMLOGSTRING2( "CMPMWlanQueryDialog::RunError failed with %d", aError )
- iIapSelection.ChooseIapComplete( aError, NULL );
- return KErrNone;
- }
-
-// -----------------------------------------------------------------------------
-// CMPMWlanQueryDialog::StartWlanQueryL
-// -----------------------------------------------------------------------------
-//
-void CMPMWlanQueryDialog::StartWlanQueryL()
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::StartWlanQuery" )
-
- TUint32 activeWlanIap = iIapSelection.Session()->MyServer().IsWlanConnectionStartedL(
- iIapSelection.Session()->MyServer().CommsDatAccess() );
-
- // Get EmergencyCallInfo via Publish & Subscribe
- //
- TInt emergencyCallEstablished( 0 );
- RProperty::Get( KPSUidCtsyEmergencyCallInfo,
- KCTSYEmergencyCallInfo,
- emergencyCallEstablished );
- MPMLOGSTRING2( "CMPMWlanQueryDialog::StartWlanQuery KCTSYEmergencyCallInfo = %d",
- emergencyCallEstablished )
-
- // Get note behaviour setting
- TUint32 noteBehaviour( 0 );
- noteBehaviour = iIapSelection.MpmConnPref().NoteBehaviour();
- MPMLOGSTRING2( "CMPMWlanQueryDialog::StartWlanQuery noteBehaviour = %d", noteBehaviour )
-
- if( !emergencyCallEstablished &&
- iIapSelection.Session()->MyServer().IsPhoneOffline() &&
- !activeWlanIap &&
- iIapSelection.Session()->MyServer().OfflineWlanQueryResponse() != EOfflineResponseYes &&
- iOverrideStatus == KErrNone )
- {
- if ( noteBehaviour & TExtendedConnPref::ENoteBehaviourConnDisableQueries )
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::StartWlanQuery offline note query not shown due to disabled queries" )
- iIapSelection.UserWlanSelectionDoneL( KErrPermissionDenied, iWlanIapId );
- }
- else
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::StartWlanQuery, starting offline note" )
- iWlanQueryState = EOffline;
- iNotifier.StartNotifierAndGetResponse( iStatus,
- KUidCOfflineWlanNoteDlg,
- KNullDesC8(),
- iOfflineReply );
- SetActive();
- }
- }
- else
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::StartWlanQuery no wlan dialog to show" )
- iIapSelection.UserWlanSelectionDoneL( KErrNone, iWlanIapId );
- }
- }
-
-// -----------------------------------------------------------------------------
-// CMPMWlanQueryDialog::OfferInformation
-// -----------------------------------------------------------------------------
-//
-void CMPMWlanQueryDialog::OfferInformation( TInt aDialogStatus )
- {
- TOfflineWlanQueryResponse offlineResponse =
- iIapSelection.Session()->MyServer().OfflineWlanQueryResponse();
- if ( offlineResponse != EOfflineResponseUndefined )
- {
- MPMLOGSTRING3( "CMPMWlanQueryDialog<0x%x>::OfferInformation: offline response %d",
- iIapSelection.Session()->ConnectionId(),
- offlineResponse )
- iOverrideStatus = aDialogStatus;
- }
-
-#ifdef _LOG
- else
- {
- MPMLOGSTRING( "CMPMWlanQueryDialog::OfferInformation, information not taken." )
- }
-#endif
- }
-