diff -r 8ef833fbf5aa -r d0d9cc530d21 telephonyprotocols/umtsgprsscpr/spudfsm/src/cpdpfsm.cpp --- a/telephonyprotocols/umtsgprsscpr/spudfsm/src/cpdpfsm.cpp Wed Aug 18 10:57:47 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,431 +0,0 @@ -// Copyright (c) 2004-2009 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: -// PDP FSM implementation -// @internalTechnology -// -// - - -#include "tpdpstates.h" -#include "cpdpfsm.h" -#include "cpdpfsmfactory.h" -#include "spudfsmdebuglogger.h" -#include "eteldrivernmspace.h" - -void CPdpFsm::ConstructL() - { - // Create EtelDriver for this ID - does nothing on ETel - iEtelDriverInput->CreatePdpL(iPdpId); - - // we need a state - iState = &iPdpFsmFactory->iStateInitialised; - } - -CPdpFsm* CPdpFsm::NewL(TContextId aPdpId, CPdpFsmFactory * aPdpFsmFactory, REtelDriverInput * aEtelDriverInput) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::NewL()"); - CPdpFsm* self = new (ELeave)CPdpFsm(aPdpId, aPdpFsmFactory, aEtelDriverInput); - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - return self; - } - -CPdpFsm::CPdpFsm(TContextId aPdpId, CPdpFsmFactory * aPdpFsmFactory, REtelDriverInput * aEtelDriverInput) : - iPdpFsmFactory(aPdpFsmFactory), - iEtelDriverInput(aEtelDriverInput), - iPdpId(aPdpId) -// NOTE: Both pointers are valid when called - see CPdpFsmFactory and CPdpFsmInterface. -// No other caller is expected. - { - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - } - -CPdpFsm::~CPdpFsm() - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::~CPdpFsm()"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - } - - -TInt CPdpFsm::Input (const TInt aOperation, const TInt aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Input()"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - -#ifdef _DEBUG // NOT DEBUGRELEASE - SPUDFSMVERBOSE_LOG1(_L("State : %S"), &iState->iName); -#endif - - SPUDFSM_LOG3(_L("Pdp ID %d, State '%S', Operation '%S'"),iPdpId, &iState->iName, iState->LogOperation(*this, aOperation)); - - return iState->Input (*this, aOperation, aParam); - } - - -#ifdef SYMBIAN_NETWORKING_UMTSR5 -void CPdpFsm::Get(RPacketQoS::TQoSR5Requested& aParam) -{ - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(QoSR5Req)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - ASSERT(iQosRequested.ExtensionId() == TPacketDataConfigBase::KConfigRel5); - aParam = iQosRequested.RequestedQoSR5(); -} - -void CPdpFsm::Get(RPacketQoS::TQoSR5Negotiated& aParam) -{ - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(QoSR5Neg)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - ASSERT(iQosNegotiated.ExtensionId() == TPacketDataConfigBase::KConfigRel5); - aParam = iQosNegotiated.NegotiatedQoSR5(); -} - -#else -// !SYMBIAN_NETWORKING_UMTSR5 - -void CPdpFsm::Get(RPacketQoS::TQoSR99_R4Requested& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(QosReq)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iQosRequested.RequestedQoSR99_R4(); - } - -void CPdpFsm::Get(RPacketQoS::TQoSR99_R4Negotiated& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(QoSNeg)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iQosNegotiated.NegotiatedQoSR99_R4(); - } - -#endif -// SYMBIAN_NETWORKING_UMTSR5 - - -void CPdpFsm::Get(TTFTInfo& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(TFTInfo)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iTFT; - } - -void CPdpFsm::Get(TTFTOperationCode& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(TFTOperationCode)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iTFTOperationCode; - } - -void CPdpFsm::Get(RPacketContext::TDataChannelV2& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(RPacketContext::TDataChannelV2)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iDataChannelV2; - } - -void CPdpFsm::Get(RPacketContext::TContextConfigGPRS& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(RPacketContext::TContextConfigGPRS)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iGPRS; - } - -void CPdpFsm::Get(RPacketContext::TContextStatus& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Get(RPacketContext::TContextStatus)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - aParam = iContextStatus; - } - - -#ifdef SYMBIAN_NETWORKING_UMTSR5 -void CPdpFsm::Set(const RPacketQoS::TQoSR5Requested& aParam) -{ - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(QoSR5Req)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iQosRequested = aParam; -} - -void CPdpFsm::Set(const RPacketQoS::TQoSR5Negotiated& aParam) -{ - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(QoSR5Neg)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iQosNegotiated = aParam; -} - -#else -// !SYMBIAN_NETWORKING_UMTSR5 - - -void CPdpFsm::Set(const RPacketQoS::TQoSR99_R4Requested& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(QoSReq)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iQosRequested = aParam; - - } - - -void CPdpFsm::Set(const RPacketQoS::TQoSR99_R4Negotiated& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(QoSNeg)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iQosNegotiated = aParam; - } - - -#endif -// SYMBIAN_NETWORKING_UMTSR5 - - -void CPdpFsm::Set(const TTFTInfo& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(TFT)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iTFT = aParam; - } - -void CPdpFsm::Set(const TTFTOperationCode& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(TFTOperationCode)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iTFTOperationCode = aParam; - } - -void CPdpFsm::Set(const RPacketContext::TDataChannelV2& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(RPacketContext::TDataChannelV2)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iDataChannelV2 = aParam; - } - -void CPdpFsm::Set(const RPacketContext::TContextStatus& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(RPacketContext::TContextStatus)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iContextStatus = aParam; - } - -void CPdpFsm::Set(const RPacketContext::TContextConfigGPRS& aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::Set(RPacketContext::TContextConfigGPRS)"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iGPRS = aParam; - } - -void CPdpFsm::EtelInput (EtelDriver::TEtelInput aOperation) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::EtelInput"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iEtelDriverInput->Input (iPdpId, aOperation); - } - -void CPdpFsm::EtelCancel (void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::EtelCancel"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iEtelDriverInput->CancelPdp (iPdpId); - } - -void CPdpFsm::GetLastErrorCause (TInt& aLastErrorCause) -{ - SPUDFSMVERBOSE_FNLOG("CPdpFsm::GetLastErrorCause"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iEtelDriverInput->GetLastErrorCause (iPdpId, aLastErrorCause); -} - -void CPdpFsm::SpudInput (TInt aNotification, TInt aParam) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::SpudInput"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - - iPdpFsmFactory->SpudInput (iPdpId, aNotification, aParam); - } - -// state change members - -void CPdpFsm::ChangeStateToInitialised(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToInitialised"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : Initialised")); - - iState = &iPdpFsmFactory->iStateInitialised; - } - -void CPdpFsm::ChangeStateToOpeningPhone(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToOpeningPhone"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : OpeningPhone")); - - iState = &iPdpFsmFactory->iStateOpeningPhone; - } - -void CPdpFsm::ChangeStateToCreatingPrimary(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToCreatingPrimary"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : CreatingPrimary")); - - iState = &iPdpFsmFactory->iStateCreatingPrimary; - } - -void CPdpFsm::ChangeStateToActivatingPrimary(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToActivatingPrimary"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : ActivatingPrimary")); - - iState = &iPdpFsmFactory->iStateActivatingPrimary; - } - -void CPdpFsm::ChangeStateToCreatingSecondary(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToCreatingSecondary"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : CreatingSecondary")); - - iState = &iPdpFsmFactory->iStateCreatingSecondary; - } - -void CPdpFsm::ChangeStateToCreatedSecondary(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToCreatedSecondary"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : CreatedSecondary")); - - iState = &iPdpFsmFactory->iStateCreatedSecondary; - } - -void CPdpFsm::ChangeStateToSettingTFT(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToSettingTFT"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : SettingTFT")); - - iState = &iPdpFsmFactory->iStateSettingTFT; - } - -void CPdpFsm::ChangeStateToSettingQoS(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToSettingQoS"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : SettingQoS")); - - iState = &iPdpFsmFactory->iStateSettingQoS; - } - -void CPdpFsm::ChangeStateToActivatingSecondary(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToActivatingSecondary"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : ActivatingSecondary")); - - iState = &iPdpFsmFactory->iStateActivatingSecondary; - } - -void CPdpFsm::ChangeStateToOpen(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToOpen"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : Open")); - - iState = &iPdpFsmFactory->iStateOpen; - } - -void CPdpFsm::ChangeStateToChangingQoS(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToChangingQoS"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : ChangingQoS")); - - iState = &iPdpFsmFactory->iStateChangingQoS; - } - -void CPdpFsm::ChangeStateToChangingTFT(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToChangingTFT"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : ChangingTFT")); - - iState = &iPdpFsmFactory->iStateChangingTFT; - } - -void CPdpFsm::ChangeStateToGettingNegQoS(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToGettingNegQoS"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : GettingNegQoS")); - - iState = &iPdpFsmFactory->iStateGettingNegQoS; - } - - - -void CPdpFsm::ChangeStateToModifingActive(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToModifingActive"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : ModifingActive")); - - iState = &iPdpFsmFactory->iStateModifyingActive; - } - -void CPdpFsm::ChangeStateToSuspended(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToSuspended"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : Suspended")); - - iState = &iPdpFsmFactory->iStateSuspended; - } - -void CPdpFsm::ChangeStateToClosing(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToClosing"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : Closing")); - - iState = &iPdpFsmFactory->iStateClosing; - } - -void CPdpFsm::ChangeStateToStopping(void) - { - SPUDFSMVERBOSE_FNLOG("CPdpFsm::ChangeStateToStopping"); - SPUDFSMVERBOSE_LOG1(_L("Pdp ID %d"),iPdpId); - SPUDFSM_LOG(_L("New State : Stopping")); - - iState = &iPdpFsmFactory->iStateStopping; - }