diff -r 63be7eb3fc78 -r f28ada11abbf hotspotfw/hsbrowser/src/hsbrowserictsobserver.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspotfw/hsbrowser/src/hsbrowserictsobserver.cpp Wed Sep 01 12:20:32 2010 +0100 @@ -0,0 +1,121 @@ +/* +* Copyright (c) 2007 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: Implements callback interface for Internet Connectivity Test Service +* notifications. +* +*/ + + + +// INCLUDE FILES +#include +#include + +#include "hsbrowserictsobserver.h" +#include "hsbrowsercontainer.h" +#include "hotspotclientserver.h" +#include "hsbrowsermodel.h" +#include "am_debug.h" + +// ================= MEMBER FUNCTIONS ======================= + +// --------------------------------------------------------- +// CHsBrowserIctsObserver::NewL +// --------------------------------------------------------- +// +CHsBrowserIctsObserver* CHsBrowserIctsObserver::NewL( + CHsBrowserContainer* aContainer ) + { + DEBUG( "CHsBrowserIctsObserver::CHsBrowserIctsObserver::NewL()()" ); + CHsBrowserIctsObserver* self = new(ELeave) CHsBrowserIctsObserver( aContainer ); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop( self ); + return self; + } + +// --------------------------------------------------------- +// CHsBrowserIctsObserver::~CHsBrowserIctsObserver +// --------------------------------------------------------- +// +CHsBrowserIctsObserver::~CHsBrowserIctsObserver() + { + DEBUG( "CHsBrowserIctsObserver::~CHsBrowserIctsObserver()" ); + } + +// ----------------------------------------------------------------------------- +// CHsBrowserIctsObserver::ConnectivityObserver +// ----------------------------------------------------------------------------- +// +void CHsBrowserIctsObserver::ConnectivityObserver( TIctsTestResult aResult, + const TDesC& /* aString */ ) + { + DEBUG1("CHsBrowserIctsObserver::ConnectivityObserver() result: %d", aResult); + switch ( aResult ) + { + case EConnectionOk : + ProcessConnectionOk(); + break; + case EHttpAuthenticationNeeded : + case EConnectionNotOk : + case ETimeout : + default: + break; + } + } + +// --------------------------------------------------------- +// CHsBrowserIctsObserver::ProcessConnectionOk +// --------------------------------------------------------- +// +void CHsBrowserIctsObserver::ProcessConnectionOk() + { + DEBUG( "CHsBrowserIctsObserver::ProcessConnectionOk()" ); + if ( iContainer ) + { + CHsBrowserModel* model = iContainer->Model(); + if ( model && !iAuthenticatedOkSent ) + { + // Send this only once per session + iAuthenticatedOkSent = ETrue; + model->SetState( EHsBrowserUiAuthenticatedOk, ETrue ); + // Do this only once too + iContainer->ShowLoginCompleteNote(); + iContainer->SendToBackground(); + iContainer->UpdateSoftkeys(); + } + } + } + +// --------------------------------------------------------- +// CHsBrowserIctsObserver::CHsBrowserIctsObserver +// --------------------------------------------------------- +// +CHsBrowserIctsObserver::CHsBrowserIctsObserver( + CHsBrowserContainer* aContainer ) : iContainer( aContainer ), + iAuthenticatedOkSent( EFalse ) + { + DEBUG( "CHsBrowserIctsObserver::CHsBrowserIctsObserver()" ); + } + +// --------------------------------------------------------- +// CHsBrowserIctsObserver::ConstructL +// --------------------------------------------------------- +// +void CHsBrowserIctsObserver::ConstructL() + { + DEBUG( "CHsBrowserIctsObserver::ConstructL()" ); + } + +// End of File