diff -r 000000000000 -r 1bce908db942 multimediacommsengine/tsrc/MCETestUI/MCETestUIEngine/src/CMCETestUIEngineMultimediaObserver.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/multimediacommsengine/tsrc/MCETestUI/MCETestUIEngine/src/CMCETestUIEngineMultimediaObserver.cpp Tue Feb 02 01:04:58 2010 +0200 @@ -0,0 +1,885 @@ +/* +* Copyright (c) 2005 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. +* +*/ + + + + +#include +#include "CMCETestUIEngineMultimediaObserver.h" +#include "TMCETestUIEngineCmdAcceptSession.h" +#include "CMCETestUIEngineSession.h" +#include "CMCETestUIEngineInSession.h" +#include "CMCETestUIEngine.h" + +#include "CMCETestUIEngineInSession.h" +#include "CMCETestUIEngineOutSession.h" +#include "CMCETestUIEngineSession.h" +#include "CMCETestUIEngineAudioStream.h" +#include "MCETestUIEngineConstants.h" +#include "TMCETestUIEngineCmdAnswerSession.h" +#include "mcetransactiondatacontainer.h" + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include "MCETestUIDebug.h" + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::NewL +// ----------------------------------------------------------------------------- +// +CMCETestUIEngineMultimediaObserver* CMCETestUIEngineMultimediaObserver::NewL( + CMCETestUIEngine& aEngine ) + { + CMCETestUIEngineMultimediaObserver* self = + new (ELeave) CMCETestUIEngineMultimediaObserver( aEngine ); + + CleanupStack::PushL( self ); + self->ConstructL(); + CleanupStack::Pop( self ); + + return self; + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::CMCETestUIEngineMultimediaObserver +// ----------------------------------------------------------------------------- +// +CMCETestUIEngineMultimediaObserver::CMCETestUIEngineMultimediaObserver( + CMCETestUIEngine& aEngine): + iEngine( aEngine ) + { + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::ConstructL +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::ConstructL() + { + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::~CMCETestUIEngineMultimediaObserver +// ----------------------------------------------------------------------------- +// +CMCETestUIEngineMultimediaObserver::~CMCETestUIEngineMultimediaObserver() + { + } + + +// -- From MMCEInSessionObserver-------------------------------------------------- + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::IncomingSession +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::IncomingSession( + CMceInSession* aSession, + TMceTransactionDataContainer* /*aContainer*/ ) + { + if(iEngine.iAutoResponse) + { + TInt state = aSession->State(); + + switch( state ) + { + case CMceSession::EIncoming: + { + aSession->UpdateL(); + break; + } + + default: + { + break; + } + } + } + else if(iEngine.iVoIPFlag) + { + TInt state = aSession->State(); + + switch( state ) + { + case CMceSession::EIncoming: + { + iEngine.NotifyUser( KMiscIncomingVoIPSession ); + iEngine.UpdateIncomingSessionVoIPDataL(aSession); + break; + } + + default: + { + break; + } + } + } + else + { + CMCETestUIEngineInSession& engineSession = + iEngine.CreateInSessionL( aSession ); + } + + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::IncomingUpdate +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::IncomingUpdate( + CMceSession& aOrigSession, + CMceInSession* aUpdatedSession, + TMceTransactionDataContainer* /*aContainer*/ ) + { +// CMCETestUIEngineInSession& engineSession = +// iEngine.CreateInSessionL( aUpdatedSession); + iEngine.IncomingUpdateL( aOrigSession, aUpdatedSession ) ; + } + +// -- From MMCESessionObserver ------------------------------------------------- + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::SessionStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::SessionStateChanged( + CMceSession& aSession, + TMceTransactionDataContainer* aContainer ) + { + if(iEngine.iAutoResponse) + { + TInt state = aSession.State(); + + + switch( state ) + { + case CMceSession::EProceeding: + { + CMceInSession& inSession = + static_cast(aSession); + inSession.AcceptL(); + break; + } + + default: + { + break; + } + } + } + else if(iEngine.iVoIPFlag) + { + TInt state = aSession.State(); + switch( state ) + { + case CMceSession::EProceeding: + { + CMceInSession& inSession = + static_cast(aSession); + inSession.RingL(); + inSession.AcceptL(); + iEngine.UpdateIncomingSessionVoIPDataAfterAnswerL(inSession); + + break; + } + case CMceSession::EEstablished: + { + CMceInSession& inSession = + static_cast(aSession); +// iEngine.UpdateIncomingSessionVoIPDataAfterAnswerL(inSession); + CMCETestUIEngineInSession* session = CMCETestUIEngineInSession::NewL( + iEngine, &inSession ); + CleanupStack::PushL( session ); + iEngine.iInSessions.Append( session ); + iEngine.EngineStateChangedL(); + CleanupStack::Pop( session ); + } + default: + { + break; + } + } + } + if( CMceSession::EEstablished == aSession.State() ) + { + const RPointerArray& outsessions = + iEngine.OutSessions(); + const RPointerArray& insessions = + iEngine.InSessions(); + + for ( TInt i = 0; i < outsessions.Count(); ++i ) + { + if ( &outsessions[i]->Session() == &aSession && outsessions[i]->iHoldInProgress ) + { + outsessions[i]->EnableAudioL(); + outsessions[i]->iHoldInProgress = EFalse; + } + } + for ( TInt i = 0; i < insessions.Count(); ++i ) + { + if ( &insessions[i]->Session() == &aSession && insessions[i]->iHoldInProgress ) + { + insessions[i]->EnableAudioL(); + insessions[i]->iHoldInProgress = EFalse; + } + } + } + + + + + HBufC8* hbuf = aContainer->GetReasonPhrase(); + if(hbuf) + { + HBufC* buf = HBufC::NewL(hbuf->Length()); + TPtr ptr = buf->Des(); + ptr.Copy(*hbuf); + TBuf16<100> buf16; + buf16.Append(KUserNotificationSessionStateChanged ); + buf16.Append(KSpace); + TInt code = aContainer->GetStatusCode(); + buf16.AppendNum(code); + buf16.Append(*buf); + iEngine.NotifyUser(buf16); + delete buf; + } + else + { + iEngine.NotifyUser( KUserNotificationSessionStateChanged ); + } + + delete hbuf; + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::SessionConnectionStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::SessionConnectionStateChanged( + CMceSession& /*aSession*/, + TBool /*aActive*/) + { + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::Failed +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::Failed( CMceSession& /*aSession*/, + TInt /*aError*/ ) + { + iEngine.NotifyUser( KUserNotificationSessionFailed ); + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::UpdateFailed +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::UpdateFailed( + CMceSession& /*aSession*/, + TMceTransactionDataContainer* /*aContainer*/ ) + { + iEngine.NotifyUser( KUpdateFailed ); + iEngine.EngineStateChangedL(); + } + + + +// From MMCETransactionObserver ------------------------------------------------- +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::TransactionResponse +// ----------------------------------------------------------------------------- +void CMCETestUIEngineMultimediaObserver::TransactionResponse( + CMceSession& /*aSession*/, + TMceTransactionId aTransactionId, + TMceTransactionDataContainer* aContainer ) + + { + MCE_TESTUI_DEBUG1("CMCETestUIEngineMultimediaObserver::TransactionResponse entry") + + iEngine.NotifyUser( KResponseReceived ); + iEngine.EngineStateChangedL(); + + //Clean the Container + LogContainer( aContainer, aTransactionId ); + + MCE_TESTUI_DEBUG1("CMCETestUIEngineMultimediaObserver::TransactionResponse exit") + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::TransactionFailed +// ----------------------------------------------------------------------------- + +void CMCETestUIEngineMultimediaObserver::TransactionFailed( + CMceSession& /*aSession*/, + TMceTransactionId aTransactionId, + TInt aError ) + + + { + MCE_TESTUI_DEBUG1("CMCETestUIEngineMultimediaObserver::TransactionFailed entry") + + iEngine.RemoveTransactionId( aTransactionId ); + iEngine.NotifyUser( KTransactionFailed ); + iEngine.EngineStateChangedL(); + + MCE_TESTUI_DEBUG3("CMCETestUIEngineMultimediaObserver::TransactionFailed aTransactionId", aTransactionId ) + MCE_TESTUI_DEBUG3("CMCETestUIEngineMultimediaObserver::TransactionFailed aError", aError ) + + MCE_TESTUI_DEBUG1("CMCETestUIEngineMultimediaObserver::TransactionFailed exit") + } + +// From MMCEInTransactionObserver ------------------------------------------------- +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::TransactionResponse +// ----------------------------------------------------------------------------- +void CMCETestUIEngineMultimediaObserver::IncomingRequest( + const TDesC8& /*aMethod*/, + CMceSession& /*aSession*/, + TMceTransactionId aTransactionId, + TMceTransactionDataContainer* aContainer ) + { + MCE_TESTUI_DEBUG1("CMCETestUIEngineMultimediaObserver::IncomingRequest entry") + + TUint code = 200; + _LIT8( KMceSipOK,"OK"); + + iEngine.AddTransactionIdL( aTransactionId ); + iEngine.NotifyUser( KRequestReceived ); + iEngine.EngineStateChangedL(); + + LogContainer( aContainer, aTransactionId ); + + } + + +// -- from MMCEStreamObserver -------------------------------------------------- + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::StreamStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::StreamStateChanged( + CMceMediaStream& aStream ) + { + iEngine.NotifyStreamStateChangeL( aStream ); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::StreamStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::StreamStateChanged( + CMceMediaStream& aStream, + CMceMediaSink& /*aSink*/ ) + { + iEngine.NotifyStreamStateChangeL( aStream ); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::StreamStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::StreamStateChanged( + CMceMediaStream& aStream, + CMceMediaSource& aSource) + { + TInt state = aStream.State(); + + TBuf16<100> buf16; +// buf16.Append(KUserNotificationStreamStateChanged ); +// buf16.Append(KLeftParenthesis); + TInt transProgress; + + switch( state ) + { + case CMceMediaStream::ETranscodingRequired: + buf16.Append(KStreamTranscodingRequired); + iEngine.NotifyUser(buf16); + break; + case CMceMediaStream::ETranscoding: + { + buf16.Append(KStreamTranscoding); + CMceFileSource& fileSource = static_cast(aSource); + transProgress = fileSource.TranscodingProgressL(); + buf16.Append(KLeftParenthesis); + buf16.AppendNum(transProgress); + buf16.Append(KRightParenthesis); + } + + break; + default: + buf16.Append(KSessionStateUnknown); + } + if( transProgress == 10 || transProgress == 100 ) + { + iEngine.NotifyUser(buf16); + } + } + + + +// -- from MMCERtpObserver ----------------------------------------------------- + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::SRReceived +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::SRReceived( + CMceSession& /*aStream*/, + CMceMediaStream& /*aSource*/ ) + { + RDebug::Print(_L("SR Received ")); + if(iEngine.iRtcpFlag) + { + iEngine.NotifyUser( KUserNotificationSRReceived ); + iEngine.EngineStateChangedL(); + } + else + { + iEngine.iSRCount++; + if(iEngine.iSRCount == 20) + { + iEngine.NotifyUser( KUserNotificationSRReceived ); + iEngine.EngineStateChangedL(); + iEngine.iSRCount = 0; + } + } + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::RRReceived +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::RRReceived( + CMceSession&/* aStream*/, + CMceMediaStream& /*aSource*/ ) + { + RDebug::Print(_L("RR Received ")); + if(iEngine.iRtcpFlag) + { + iEngine.NotifyUser( KUserNotificationRRReceived ); + iEngine.EngineStateChangedL(); + } + else + { + iEngine.iRRCount++; + if(iEngine.iRRCount == 20) + { + iEngine.NotifyUser( KUserNotificationRRReceived ); + iEngine.EngineStateChangedL(); + iEngine.iRRCount = 0; + } + } + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::InactivityTimeout +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::InactivityTimeout( + CMceMediaStream& /*aStream*/, + CMceRtpSource& /*aSource*/ ) + { + iEngine.NotifyUser( KUserInactivityTimeoutReceived ); + iEngine.EngineStateChangedL(); + } + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::Activity +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::Activity( + CMceMediaStream& /*aStream*/, + CMceRtpSource& /*aSource*/ ) + { + iEngine.NotifyUser( KUserActivityTimeReceived ); + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::IncomingEvent +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::IncomingEvent( + CMceInEvent* aEvent, + TMceTransactionDataContainer*/* aContainer*/ ) + { + CMCETestUIEngineInEvent& engineEvent = + iEngine.CreateInEventL( aEvent ); + } +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::EventStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::EventStateChanged( + CMceEvent& /*aEvent*/, + TMceTransactionDataContainer* aContainer ) + { + HBufC8* hbuf = aContainer->GetReasonPhrase(); + if(hbuf) + { + HBufC* buf = HBufC::NewL(hbuf->Length()); + TPtr ptr = buf->Des(); + ptr.Copy(*hbuf); + TBuf16<100> buf16; + buf16.Append(KUserNotificationEventStateChanged ); + buf16.Append(KSpace); + TInt code = aContainer->GetStatusCode(); + buf16.AppendNum(code); + buf16.Append(*buf); + iEngine.NotifyUser(buf16); + delete buf; + } + else + { + iEngine.NotifyUser( KUserNotificationEventStateChanged ); + } + + delete hbuf; + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::NotifyReceived +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::NotifyReceived( + CMceEvent&/* aEvent*/, + TMceTransactionDataContainer*/* aContainer*/ ) + { + iEngine.NotifyUser( KUserNotificationEventNotifyReceived ); + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::EventConnectionStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::EventConnectionStateChanged( + CMceEvent& /*aEvent*/, + TBool aActive ) + { + if(aActive) + { + iEngine.NotifyUser( KUserNotificationEventActiveConnectionStateChangedReceived ); + } + else + { + iEngine.NotifyUser( KUserNotificationEventNotActiveConnectionStateChangedReceived ); + } + + iEngine.EngineStateChangedL(); + } +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::Failed +// ----------------------------------------------------------------------------- +// + +void CMCETestUIEngineMultimediaObserver::Failed + (CMceEvent& /*aEvent*/, TInt /*aError*/ ) + { + iEngine.NotifyUser( KUserNotificationEventFailed ); + iEngine.EngineStateChangedL(); + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::IncomingRefer +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::IncomingRefer( + CMceInRefer* aRefer, + const TDesC8& /*aReferTo*/, + TMceTransactionDataContainer* /*aContainer*/ ) + { + CMCETestUIEngineInRefer& engineRefer = + iEngine.CreateInReferL( aRefer ); + } +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::ReferStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::ReferStateChanged( + CMceRefer& /*aRefer*/, + TMceTransactionDataContainer* aContainer ) + { + HBufC8* hbuf = aContainer->GetReasonPhrase(); + if(hbuf) + { + HBufC* buf = HBufC::NewL(hbuf->Length()); + TPtr ptr = buf->Des(); + ptr.Copy(*hbuf); + TBuf16<100> buf16; + buf16.Append(KUserNotificationReferStateChanged ); + buf16.Append(KSpace); + TInt code = aContainer->GetStatusCode(); + buf16.AppendNum(code); + buf16.Append(*buf); + iEngine.NotifyUser(buf16); + delete buf; + } + else + { + iEngine.NotifyUser( KUserNotificationReferStateChanged ); + } + + delete hbuf; + iEngine.EngineStateChangedL(); + } + + + +void CMCETestUIEngineMultimediaObserver::SsrcAdded( + CMceMediaStream& /*aStream*/, + CMceRtpSource& /*aSource*/, + TUint /*aSsrc*/ ) + + { + } +void CMCETestUIEngineMultimediaObserver::SsrcRemoved( + CMceMediaStream& /*aStream*/, + CMceRtpSource& /*aSource*/, + TUint /*aSsrc*/ ) + { + } + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::ReferConnectionStateChanged +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::ReferConnectionStateChanged( + CMceRefer& /*aRefer*/, + TBool aActive ) + { + if(aActive) + { + iEngine.NotifyUser( KUserNotificationReferActiveConnectionStateChangedReceived ); + } + else + { + iEngine.NotifyUser( KUserNotificationReferNotActiveConnectionStateChangedReceived ); + } + + iEngine.EngineStateChangedL(); + } +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::Failed +// ----------------------------------------------------------------------------- +// + +void CMCETestUIEngineMultimediaObserver::Failed + (CMceRefer& /*aRefer*/, TInt /*aError*/ ) + { + iEngine.NotifyUser( KUserNotificationReferFailed ); + iEngine.EngineStateChangedL(); + } + + +void CMCETestUIEngineMultimediaObserver::FCMsgReceived(CMceSession& /*aSession*/, + HBufC8* aMessage) + { + if(aMessage) + { + HBufC* buf = HBufC::NewL(aMessage->Length()); + TPtr ptr = buf->Des(); + ptr.Copy(*aMessage); + TBuf16<100> buf16; + buf16.Append(KFCMessageReceived ); + buf16.Append(KSpace); + buf16.Append(*buf); + iEngine.NotifyUser(buf16); + delete buf; + } + delete aMessage; + iEngine.EngineStateChangedL(); + } + +void CMCETestUIEngineMultimediaObserver::FCMsgErrorOccurred(CMceSession& /*aSession*/, + TInt /*aError*/) + { + TBuf16<100> buf16; + buf16.Append(KFCMessageErrorOccured); + iEngine.NotifyUser(buf16); + iEngine.EngineStateChangedL(); + } + + + +// ----------------------------------------------------------------------------- +// CMCETestUIEngineMultimediaObserver::Failed +// ----------------------------------------------------------------------------- +// +void CMCETestUIEngineMultimediaObserver::CsStatusChangedL( + TPoCOmaCsState aStatus ) + + { + iEngine.CsStatusChangedL( aStatus ); + } + +/** +* Incoming DTMF tone received. +* @param aSession Session that tone was received. +* @param aStream Stream that tone was received. +* @param aTone Received tone. +*/ +void CMCETestUIEngineMultimediaObserver::DtmfToneReceived( CMceSession& /*aSession*/, + CMceAudioStream& /*aStream*/, + const TChar& aTone ) + { + TBuf16<100> buf16; + buf16.Append(KDtmfToneReceived); + buf16.Append(aTone); + iEngine.NotifyUser(buf16); + iEngine.EngineStateChangedL(); + } +/** +* DTMF event received. +* @param aSession Session that event was received. +* @param aStream Stream that event was received. +* @param aSource Source that event was received. +* @param aEvent Received event. +*/ +void CMCETestUIEngineMultimediaObserver::DtmfEventReceived( CMceSession& /*aSession*/, + CMceAudioStream& /*aStream*/, + CMceMediaSource& /*aSource*/, + TMceDtmfEvent aEvent ) + { + TBuf16<100> buf16; + buf16.Append(KDtmfEventReceived); + switch( aEvent ) + { + case EDtmfSendStarted: + { + buf16.Append(KDtmfStarted); + break; + } + case EDtmfSendCompleted: + { + buf16.Append(KDtmfCompleted); + break; + } + default: + { + break; + } + + } + iEngine.NotifyUser(buf16); + iEngine.EngineStateChangedL(); + } + +/** +* DTMF error occured. If error occurs, DTMFs becomes +* unavailable for that source. +* @param aSession Session that event was received. +* @param aStream Stream that event was received. +* @param aStream Stream that event was received. +* @param aError Error code. +*/ +void CMCETestUIEngineMultimediaObserver::DtmfErrorOccured( + CMceSession& /*aSession*/, + CMceAudioStream& /*aStream*/, + CMceMediaSource& /*aSource*/, + TInt /*aError*/ ) + { + TBuf16<100> buf16; + buf16.Append(KDtmfErrorOccured); + iEngine.NotifyUser(buf16); + iEngine.EngineStateChangedL(); + } + +void CMCETestUIEngineMultimediaObserver::LogContainer( TMceTransactionDataContainer* aContainer, + TMceTransactionId aTransactionId ) const + { + MCE_TESTUI_DEBUG1( "CMCETestUIEngineMultimediaObserver::LogContainer entry" ) + + MCE_TESTUI_DEBUG3( "CMCETestUIEngineMultimediaObserver::LogContainer aTransactionId", aTransactionId ) + MCE_TESTUI_DEBUG1( "Headers:" ) + + CDesC8Array* arr = NULL; + HBufC8* p = NULL; + TInt count = 0; + + arr = aContainer->GetHeaders(); + if ( arr ) + { + count = arr->Count(); + for ( TInt i=0 ; i < count ; ++i ) + { + MCE_TESTUI_DEBUG6( "", arr->MdcaPoint( i ) ) + } + delete arr; + arr = 0; + } + + arr = aContainer->GetContentHeaders(); + if ( arr ) + { + count = arr->Count(); + for ( TInt i=0 ; i < count ; ++i ) + { + MCE_TESTUI_DEBUG6( "", arr->MdcaPoint( i ) ) + } + delete arr; + arr = 0; + } + + p = aContainer->GetContentType(); + if ( p ) + { + MCE_TESTUI_DEBUG6( "ContentType ", *p ); + delete p; + arr = 0; + } + + p = aContainer->GetContent(); + if ( p ) + { + MCE_TESTUI_DEBUG6( "Content ", *p ); + delete p; + arr = 0; + } + + p = aContainer->GetReasonPhrase(); + if ( p ) + { + MCE_TESTUI_DEBUG6( "ReasonPhrase ", *p ); + delete p; + arr = 0; + } + + MCE_TESTUI_DEBUG1( "CMCETestUIEngineMultimediaObserver::LogContainer exit" ) + } + + +// End of File. \ No newline at end of file