diff -r 65a3ef1d5bd0 -r f742655b05bf callcontinuity/vcc/src/tvccstatereleasing.cpp --- a/callcontinuity/vcc/src/tvccstatereleasing.cpp Thu Aug 19 09:45:22 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2007-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: Implementation for the VCC Releasing state -* -*/ - - - -#include "tvccstatereleasing.h" -#include "cvccperformer.h" -#include "rubydebug.h" - - -// ----------------------------------------------------------------------------- -// c'tor -// ----------------------------------------------------------------------------- -// - -TVccStateReleasing::TVccStateReleasing() - { - RUBY_DEBUG_BLOCK( "TVccStateReleasing::TVccStateReleasing" ); - } - -// ----------------------------------------------------------------------------- -// Name -// ----------------------------------------------------------------------------- -// -TUint TVccStateReleasing::Name() const - { - RUBY_DEBUG_BLOCK( "TVccStateReleasing::Name" ); - return KVccStateReleasing; - } - -// ----------------------------------------------------------------------------- -// LinkState -// ----------------------------------------------------------------------------- -// -void TVccStateReleasing::LinkState(TVccState& aInit) - { - RUBY_DEBUG_BLOCK( "TVccStateReleasing::LinkState" ); - iInit = &aInit; - } - -// ----------------------------------------------------------------------------- -// CallStateChanged -// ----------------------------------------------------------------------------- -// -void TVccStateReleasing::CallStateChanged( CVccPerformer& aContext, - const MCCPCallObserver::TCCPCallState aState, - MCCPCall* aCall ) - { - RUBY_DEBUG_BLOCK( "TVccStateReleasing::CallStateChanged" ); - __ASSERT_DEBUG( aContext.CallObserver()!=NULL, User::Invariant() ); - __ASSERT_DEBUG(aContext.PrimaryCall()!=NULL, User::Invariant()); - __ASSERT_DEBUG(aCall != NULL, User::Invariant()); - if (aState == MCCPCallObserver::ECCPStateIdle ) - { - //delete the actuall call object and move to the Init state - if( aCall == aContext.PrimaryCall() ) - { - ReleaseCall( aContext, *aContext.SecondaryCall(), *iInit, KVccHoNok ); - aContext.CallObserver()->CallStateChanged( aState, aCall ); - } - else - { - ReleaseCall( aContext, *aContext.SecondaryCall(), *iInit, KVccHoOk ); - - } - - } - //for some reason the old leg hasnt been released, so new leg's events must - //be passed forward. - else if( aCall == aContext.PrimaryCall() ) - { - aContext.CallObserver()->CallStateChanged( aState, aCall ); - } - - } - -// ----------------------------------------------------------------------------- -// From MCCPCallObserver, new leg events need to go through even when -// old leg has not yet been disconnected -// ----------------------------------------------------------------------------- -// -void TVccStateReleasing::CallEventOccurred( CVccPerformer& aContext, - const MCCPCallObserver::TCCPCallEvent aEvent, - MCCPCall* aCall) - { - if( aCall == aContext.PrimaryCall() ) - { - aContext.CallObserver()->CallEventOccurred( aEvent, - aContext.PrimaryCall()); - } - }