diff -r 6b1d113cdff3 -r 6638e7f4bd8f telephonyserverplugins/simatktsy/src/csatmessagerouterproxy.cpp --- a/telephonyserverplugins/simatktsy/src/csatmessagerouterproxy.cpp Mon May 03 13:37:20 2010 +0300 +++ b/telephonyserverplugins/simatktsy/src/csatmessagerouterproxy.cpp Thu May 06 15:10:38 2010 +0100 @@ -1,633 +1,633 @@ -// Copyright (c) 2006-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: -// Name : CSatMessageRouterProxy.cpp -// Part of : Common SIM ATK TSY / commonsimatktsy -// Routes between Tsy objects and Message Handler objects -// Version : 1.0 -// INCLUDE FILES -// - - - -#include -// Tsy module files -#include "CSatDataPackage.h" -// Sat -#include "CSatMessageRouterProxy.h" -#include "CSatTsy.h" -#include "CSatNotificationsTsy.h" -#include "CSatCCTsy.h" -#include "CSatIconTsy.h" -#include "CSatNotifyDisplayText.h" -#include "CSatNotifyGetInkey.h" -#include "CSatNotifyGetInput.h" -#include "CSatNotifyPlayTone.h" -#include "CSatNotifySetUpMenu.h" -#include "CSatNotifySelectItem.h" -#include "CSatNotifySendSm.h" -#include "CSatNotifySendUssd.h" -#include "CSatNotifySendSs.h" -#include "CSatNotifySetUpIdleModeText.h" -#include "CSatNotifyLaunchBrowser.h" -#include "CSatNotifySimSessionEnd.h" -#include "CSatNotifyCallControlRequest.h" -#include "CSatNotifySetUpCall.h" -#include "CSatNotifySetUpEventList.h" -#include "CSatNotifyTimerMgmt.h" -#include "CSatNotifyLanguageNotification.h" -#include "CSatNotifySendDtmf.h" -#include "CSatNotifyPollingOff.h" -#include "CSatNotifyPollInterval.h" -#include "CSatNotifyLocalInfo.h" -#include "CSatNotifyRefresh.h" -#include "CSatNotifyMoSmControlRequest.h" -#include "CSatEventDownloadTsy.h" -#include "CSatDataDownloadTsy.h" -// Utilities -#include "tflogger.h" -#include "msattsy_ipcdefs.h" -#include "ctsydelegates.h" - -// EXTERNAL DATA STRUCTURES - //None - -// EXTERNAL FUNCTION PROTOTYPES - //None - -// CONSTANTS - //None - -// MACROS - //None - -// LOCAL CONSTANTS AND MACROS - //None - -// MODULE DATA STRUCTURES - //None - -// LOCAL FUNCTION PROTOTYPES - //None - -// ==================== LOCAL FUNCTIONS ===================================== - - //None - - -// ================= MEMBER FUNCTIONS ======================================= - -// ----------------------------------------------------------------------------- -// CSatDataDownloadTsy::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CSatMessageRouterProxy* CSatMessageRouterProxy::NewL(CTsyDelegates& aTsyDelegates) - { - TFLOGSTRING( "CSAT: CSatMessageRouterProxy::NewL" ); - - CSatMessageRouterProxy* satMessageRouterProxy = - new ( ELeave ) CSatMessageRouterProxy(aTsyDelegates); - CleanupStack::PushL( satMessageRouterProxy ); - satMessageRouterProxy->ConstructL(); - CleanupStack::Pop(); - - TFLOGSTRING("CSAT: CSatMessageRouterProxy::NewL, end of method"); - return satMessageRouterProxy; - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::~CSatMessageRouterProxy -// Destructor -// ----------------------------------------------------------------------------- -// -CSatMessageRouterProxy::~CSatMessageRouterProxy - ( - void - ) - { - TFLOGSTRING( "CSAT: CSatMessageRouterProxy::~CSatMessageRouterProxy" ); - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::CSatMessageRouterProxy -// C++ constructor -// ----------------------------------------------------------------------------- -// -CSatMessageRouterProxy::CSatMessageRouterProxy(CTsyDelegates& aTsyDelegates) -: iTsyDelegates(aTsyDelegates) - { - // None - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::ConstructL -// Symbian 2nd phase constructor. Initialises internal attributes. -// ----------------------------------------------------------------------------- -// -void CSatMessageRouterProxy::ConstructL - ( - void - ) - { - TFLOGSTRING( "CSAT: CSatMessageRouterProxy::ConstructL, noes nothing" ); - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::RouteRequest -// Dummy implementation -// ----------------------------------------------------------------------------- -// -MMmMessHandlerBase* CSatMessageRouterProxy::RouteRequest - ( - TInt /*aIpc*/ - ) - { - // Dummy implementation - TFLOGSTRING( "CSAT: CSatMessageRouterProxy::RouteRequest: DUMMY" ); - return NULL; - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::RouteCompletion -// Completes a request or notification via the specific Tsy object, based on -// IPC number and data package -// ----------------------------------------------------------------------------- -// -void CSatMessageRouterProxy::RouteCompletion - ( - TInt aIpc, - CSatDataPackage* aDataPackage, - TInt aResult - ) - { - TInt trapError( KErrNone ); - TRAP( trapError, RouteCompletionL( aIpc, aDataPackage, aResult ) ); - - if ( KErrNone != trapError ) - { - TFLOGSTRING2("CSatMessageRouterProxy::RouteCompletion, trapError=%d", - trapError); - } - } - - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::GetObjectForCompletion -// Returns the pointer to the Tsy object needed for completion, based -// on the IPC number and the data package -// ----------------------------------------------------------------------------- -// -CBase* CSatMessageRouterProxy::GetObjectForCompletion - ( - const TInt aIpc, - CSatDataPackage* /*aDataPackage*/ - ) - { - TFLOGSTRING("CSAT: CMmMessageRouterBase::GetObjectForCompletion"); - CBase* satObject = NULL; - - CMmMessageManagerBase::TTsyObjects tsyObject = - GetTsyObjectFromIpc( aIpc ); - // Get the object - satObject = iTsyDelegates.GetTsyObject(tsyObject); - return satObject; - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::GetTsyObjectFromIpc -// Returns the type of Tsy object needed for completion, based -// on the IPC number -// ----------------------------------------------------------------------------- -// - CMmMessageManagerBase::TTsyObjects CSatMessageRouterProxy::GetTsyObjectFromIpc - ( - const TInt aIpc - ) const - - { - TFLOGSTRING( "CSAT: CSatMessageRouterProxy::GetTsyObjectFromIpc" ); - // A default value must be given as a initialization, however, nothing will - // be done if the IPC does not mach as well in RouteCompletion - CMmMessageManagerBase::TTsyObjects retObject = - CMmMessageManagerBase::ESatTsyObjType; - - switch ( aIpc ) - { - // General - case ESatTerminalRsp: - case ESatMenuSelection: - case ESatSendMessageNoLogging: - { - retObject = CMmMessageManagerBase::ESatTsyObjType; - break; - } - // Icon - case ESatTsyGetIconData: - case ESatTsyGetImageInstance: - case ESatTsyGetClut: - { - retObject = CMmMessageManagerBase::ESatIconTsyObjType; - break; - } - // Notifications - case ESatTsyPCmd: - case ESatTsySetPolling: - case ESatTsySetProactiveCommandOnGoingStatus: - { - retObject = CMmMessageManagerBase::ESatNotificationsTsyObjType; - break; - } - case ESatNotifyProactiveSimSessionEnd: - { - retObject = CMmMessageManagerBase::ESatNotifySimSessionEndObjType; - break; - } - case ESatTsyRefresh: - case ESatTsyCompleteRefresh: - case ESatTsyImsiChanged: - { - retObject = CMmMessageManagerBase::ESatNotifyRefreshObjType; - break; - } - case ESatTsyNotifyLocalInfo: - case ESatTsyProvideLocalInfo: - case ESatTsyLocalInformationNmr: - case ESatTsyAccTech: - case ESatTsyTimingAdvance: - case ESatTsyTimeZone: - case ESatTsyGetIMEI: - case ESatNotifyLocalInfoPCmd: - { - retObject = CMmMessageManagerBase::ESatNotifyLocalInfoObjType; - break; - } - case ESatNotifySetUpEventListPCmd: - { - retObject = CMmMessageManagerBase::ESatNotifySetUpEventListObjType; - break; - } - case ESatNotifyMoSmControlRequest: - case ESatTsyMoSmControlEnvelope: - case ESatTsyMoSmsControlActivation: - { - retObject = - CMmMessageManagerBase::ESatNotifyMoSmControlRequestObjType; - break; - } - case ESatTsySsStatus: - { - retObject = CMmMessageManagerBase::ESatNotifyLaunchBrowserObjType; - break; - } - case ESatNotifyCallControlRequest: - { - retObject = - CMmMessageManagerBase::ESatNotifyCallControlRequestObjType; - break; - } - // Event Download - case ESatTsyCallDisconnected: - case ESatTsyLocationStatus: - case ESatTsyCallConnected: - case ESatTsyMTCall: - case ESatTsyAccessTechnologyChange: - case ESatEventDownload: - case ESatTsyRemoveEventList: - { - retObject = CMmMessageManagerBase::ESatEventDownloadTsyObjType; - break; - } - // Call Control - case ESatTsyGetBearerCapability: - case ESatTsyCheckAtkDataForAlphaId: - case ESatTsyCallEvent: - case ESatTsySSEvent: - case ESatTsyUSSDEvent: - case ESatTsyCreateEnvelope: - case ESatTsyUssdStatus: - { - retObject = CMmMessageManagerBase::ESatCCTsyObjType; - break; - } - case ESatTsyCellBroadcast: - case ESatTsySmsPpDdl: - case ESatTsyReadCbmids: - case ESatTsySmsPpDdlStatus: - case ESatTsySmsDeliverReport: - { - retObject = CMmMessageManagerBase::ESatDataDownloadTsyObjType; - break; - } - default: - break; - } - - return retObject; - } - -// --------------------------------------------------------------------------- -// CMmMessageRouterProxy::Complete -// Complete with a data package -// (other items were commented in a header). -// --------------------------------------------------------------------------- -// -void CSatMessageRouterProxy::Complete( - TInt aIpc, - CMmDataPackage* aData, - TInt aResult ) - { -TFLOGSTRING3("TSY: CMmMessageRouterProxy::Complete. IPC = %d, result: %d", aIpc, aResult); - RouteCompletion( aIpc, static_cast(aData), aResult ); - } - -// --------------------------------------------------------------------------- -// CMmMessageRouterProxy::Complete -// Complete without a data package -// (other items were commented in a header). -// --------------------------------------------------------------------------- -// -void CSatMessageRouterProxy::Complete( TInt aIpc, TInt aResult ) - { - CSatDataPackage emptyDataPackage; - Complete( aIpc, &emptyDataPackage, aResult ); - } - -// ----------------------------------------------------------------------------- -// CSatMessageRouterProxy::RouteCompletion -// Completes a request or notification via the specific Tsy object, based on -// IPC number and data package -// ----------------------------------------------------------------------------- -// -void CSatMessageRouterProxy::RouteCompletionL - ( - TInt aIpc, - CSatDataPackage* aDataPackage, - TInt aResult - ) - { - TFLOGSTRING3("CSAT: CSatMessageRouterProxy::RouteCompletion ipc=%d, \ - error: %d", aIpc, aResult); - CBase* object = GetObjectForCompletion( aIpc, aDataPackage ); - - if ( NULL != object ) - { - switch ( aIpc ) - { - case ESatTsyPCmd: - { - reinterpret_cast( object )-> - CompletePCmdL( aDataPackage, aResult ); - break; - } - case ESatNotifyProactiveSimSessionEnd: - { - reinterpret_cast( object )-> - CompleteNotifyL( aDataPackage, aResult ); - break; - } - case ESatTsyProvideLocalInfo: - { - reinterpret_cast( object )-> - CompleteUpdateLocalInfo( aDataPackage, aResult ); - break; - } - case ESatTsyLocalInformationNmr: - { - reinterpret_cast( object )-> - CompleteUpdateNetInfo( aDataPackage, aResult ); - break; - } - case ESatTsyAccTech: - { - reinterpret_cast( object )-> - CompleteUpdateAccTech( aDataPackage, aResult ); - break; - } - case ESatTsyTimeZone: - { - reinterpret_cast( object )-> - CompleteUpdateTimeZone( aDataPackage, aResult ); - break; - } - case ESatTsyGetIMEI: - { - reinterpret_cast( object )-> - CompleteUpdateIMEI( aDataPackage, aResult ); - break; - } - case ESatTsyTimingAdvance: - { - reinterpret_cast( object )-> - CompleteUpdateTimingAdvAndMEStatus( aDataPackage, aResult ); - break; - } - case ESatTsyNotifyLocalInfo: - { - reinterpret_cast( object )-> - CompleteTerminalRespDataL( aDataPackage, aResult ); - break; - } - case ESatTsySetPolling: - { - reinterpret_cast( object )-> - SetPollingResultL( aDataPackage, aResult ); - break; - } - case ESatTsyCreateEnvelope: - { - reinterpret_cast( object )->CreateEnvelopeL( - aDataPackage ); - break; - } - case ESatTsyMoSmControlEnvelope: - { - reinterpret_cast( object )-> - CreateMoSmsCtrlEnvelopeL( aDataPackage, aResult) ; - break; - } - case ESatTsyGetBearerCapability: - { - reinterpret_cast( object )-> - CompleteBearerCapability( aDataPackage, aResult ); - break; - } - case ESatTsyCheckAtkDataForAlphaId: - { - reinterpret_cast( object )->CheckIfAlphaIdPresent( - aDataPackage ); - break; - } - case ESatTsyCallEvent: - case ESatTsySSEvent: - case ESatTsyUSSDEvent: - { - reinterpret_cast( object )->CompleteCCEventL( - aIpc, aDataPackage ); - break; - } - case ESatNotifyCallControlRequest: - { - reinterpret_cast( object )-> - CompleteNotifyL( aDataPackage, aResult ); - break; - } - case ESatNotifyMoSmControlRequest: - { - reinterpret_cast( object )-> - CompleteNotifyL( aDataPackage, aResult) ; - break; - } - case ESatTsyMoSmsControlActivation: - { - reinterpret_cast( object )-> - SetActivationStatus( aDataPackage ) ; - break; - } - case ESatTsyCallConnected: - { - reinterpret_cast( object )-> - CompleteCallConnectedL( aDataPackage ); - break; - } - case ESatTsyCallDisconnected: - { - reinterpret_cast( object )-> - CompleteCallDisconnectedL( aDataPackage ); - break; - } - case ESatTsyLocationStatus: - { - reinterpret_cast( object )-> - CompleteLocationStatusL( aDataPackage ); - break; - } - case ESatTsyAccessTechnologyChange: - { - reinterpret_cast( object )-> - CompleteAccessTechnologyChangeL( aDataPackage ); - break; - } - case ESatTsyMTCall: - { - reinterpret_cast( object )-> - CompleteMTCallL( aDataPackage ); - break; - } - case ESatTsyRemoveEventList: - { - reinterpret_cast( object )-> - SetUpEventList( 0 ); - break; - } - case ESatTsyCellBroadcast: - { - reinterpret_cast( object )-> - CompleteCellBroadcastDdlL( aDataPackage ); - break; - } - case ESatTsySmsPpDdl: - { - reinterpret_cast( object )-> - CompleteSmsPpDdlL( aDataPackage ); - break; - } - case ESatTsyReadCbmids: - { - reinterpret_cast( object )-> - CompleteReadCbmidsL( ); - break; - } - case ESatTsySmsPpDdlStatus: - { - reinterpret_cast( object )-> - SetSmsPpDdlStatus( aDataPackage ) ; - break; - } - case ESatTsySmsDeliverReport: - { - reinterpret_cast( object )-> - CreateSmsDeliverReportL( aResult ) ; - break; - } - case ESatTsyGetIconData: - { - reinterpret_cast( object )-> - CompleteGetIcon( aDataPackage, aResult ); - break; - } - case ESatTsyGetImageInstance: - { - reinterpret_cast( object )-> - CompleteGetImageInstance( aDataPackage, aResult ); - break; - } - case ESatTsyGetClut: - { - reinterpret_cast( object )-> - CompleteGetClut( aDataPackage, aResult ); - break; - } - case ESatTsyRefresh: - { - reinterpret_cast( object )-> - CompleteTerminalRespDataL( aDataPackage, aResult); - break; - } - case ESatTsyCompleteRefresh: - { - reinterpret_cast( object )-> - CompleteRequest( aDataPackage, aResult); - break; - } - case ESatTsyImsiChanged: - { - reinterpret_cast( object )-> - CompleteImsiChange(); - break; - } - case ESatTsySetProactiveCommandOnGoingStatus: - { - reinterpret_cast( object )-> - SetProactiveCommandOnGoingStatus( aDataPackage, aResult ); - break; - } - case ESatTsySsStatus: - { - reinterpret_cast( object )-> - SetSsStatus( aDataPackage ) ; - break; - } - case ESatTsyUssdStatus: - { - reinterpret_cast( object )->SetUssdStatus( - aDataPackage ) ; - break; - } - default: - break; - } - } - else - { - TFLOGSTRING("CSatMessageRouterProxy::RouteCompletion, IPC NOT HANDLED.!!!"); - } - } - -// ================= OTHER EXPORTED FUNCTIONS =============================== - - //None - - -// End of File - +// Copyright (c) 2006-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: +// Name : CSatMessageRouterProxy.cpp +// Part of : Common SIM ATK TSY / commonsimatktsy +// Routes between Tsy objects and Message Handler objects +// Version : 1.0 +// INCLUDE FILES +// + + + +#include +// Tsy module files +#include "CSatDataPackage.h" +// Sat +#include "CSatMessageRouterProxy.h" +#include "CSatTsy.h" +#include "CSatNotificationsTsy.h" +#include "CSatCCTsy.h" +#include "CSatIconTsy.h" +#include "CSatNotifyDisplayText.h" +#include "CSatNotifyGetInkey.h" +#include "CSatNotifyGetInput.h" +#include "CSatNotifyPlayTone.h" +#include "CSatNotifySetUpMenu.h" +#include "CSatNotifySelectItem.h" +#include "CSatNotifySendSm.h" +#include "CSatNotifySendUssd.h" +#include "CSatNotifySendSs.h" +#include "CSatNotifySetUpIdleModeText.h" +#include "CSatNotifyLaunchBrowser.h" +#include "CSatNotifySimSessionEnd.h" +#include "CSatNotifyCallControlRequest.h" +#include "CSatNotifySetUpCall.h" +#include "CSatNotifySetUpEventList.h" +#include "CSatNotifyTimerMgmt.h" +#include "CSatNotifyLanguageNotification.h" +#include "CSatNotifySendDtmf.h" +#include "CSatNotifyPollingOff.h" +#include "CSatNotifyPollInterval.h" +#include "CSatNotifyLocalInfo.h" +#include "CSatNotifyRefresh.h" +#include "CSatNotifyMoSmControlRequest.h" +#include "CSatEventDownloadTsy.h" +#include "CSatDataDownloadTsy.h" +// Utilities +#include "tflogger.h" +#include "msattsy_ipcdefs.h" +#include "ctsydelegates.h" + +// EXTERNAL DATA STRUCTURES + //None + +// EXTERNAL FUNCTION PROTOTYPES + //None + +// CONSTANTS + //None + +// MACROS + //None + +// LOCAL CONSTANTS AND MACROS + //None + +// MODULE DATA STRUCTURES + //None + +// LOCAL FUNCTION PROTOTYPES + //None + +// ==================== LOCAL FUNCTIONS ===================================== + + //None + + +// ================= MEMBER FUNCTIONS ======================================= + +// ----------------------------------------------------------------------------- +// CSatDataDownloadTsy::NewL +// Two-phased constructor. +// ----------------------------------------------------------------------------- +// +CSatMessageRouterProxy* CSatMessageRouterProxy::NewL(CTsyDelegates& aTsyDelegates) + { + TFLOGSTRING( "CSAT: CSatMessageRouterProxy::NewL" ); + + CSatMessageRouterProxy* satMessageRouterProxy = + new ( ELeave ) CSatMessageRouterProxy(aTsyDelegates); + CleanupStack::PushL( satMessageRouterProxy ); + satMessageRouterProxy->ConstructL(); + CleanupStack::Pop(); + + TFLOGSTRING("CSAT: CSatMessageRouterProxy::NewL, end of method"); + return satMessageRouterProxy; + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::~CSatMessageRouterProxy +// Destructor +// ----------------------------------------------------------------------------- +// +CSatMessageRouterProxy::~CSatMessageRouterProxy + ( + void + ) + { + TFLOGSTRING( "CSAT: CSatMessageRouterProxy::~CSatMessageRouterProxy" ); + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::CSatMessageRouterProxy +// C++ constructor +// ----------------------------------------------------------------------------- +// +CSatMessageRouterProxy::CSatMessageRouterProxy(CTsyDelegates& aTsyDelegates) +: iTsyDelegates(aTsyDelegates) + { + // None + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::ConstructL +// Symbian 2nd phase constructor. Initialises internal attributes. +// ----------------------------------------------------------------------------- +// +void CSatMessageRouterProxy::ConstructL + ( + void + ) + { + TFLOGSTRING( "CSAT: CSatMessageRouterProxy::ConstructL, noes nothing" ); + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::RouteRequest +// Dummy implementation +// ----------------------------------------------------------------------------- +// +MMmMessHandlerBase* CSatMessageRouterProxy::RouteRequest + ( + TInt /*aIpc*/ + ) + { + // Dummy implementation + TFLOGSTRING( "CSAT: CSatMessageRouterProxy::RouteRequest: DUMMY" ); + return NULL; + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::RouteCompletion +// Completes a request or notification via the specific Tsy object, based on +// IPC number and data package +// ----------------------------------------------------------------------------- +// +void CSatMessageRouterProxy::RouteCompletion + ( + TInt aIpc, + CSatDataPackage* aDataPackage, + TInt aResult + ) + { + TInt trapError( KErrNone ); + TRAP( trapError, RouteCompletionL( aIpc, aDataPackage, aResult ) ); + + if ( KErrNone != trapError ) + { + TFLOGSTRING2("CSatMessageRouterProxy::RouteCompletion, trapError=%d", + trapError); + } + } + + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::GetObjectForCompletion +// Returns the pointer to the Tsy object needed for completion, based +// on the IPC number and the data package +// ----------------------------------------------------------------------------- +// +CBase* CSatMessageRouterProxy::GetObjectForCompletion + ( + const TInt aIpc, + CSatDataPackage* /*aDataPackage*/ + ) + { + TFLOGSTRING("CSAT: CMmMessageRouterBase::GetObjectForCompletion"); + CBase* satObject = NULL; + + CMmMessageManagerBase::TTsyObjects tsyObject = + GetTsyObjectFromIpc( aIpc ); + // Get the object + satObject = iTsyDelegates.GetTsyObject(tsyObject); + return satObject; + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::GetTsyObjectFromIpc +// Returns the type of Tsy object needed for completion, based +// on the IPC number +// ----------------------------------------------------------------------------- +// + CMmMessageManagerBase::TTsyObjects CSatMessageRouterProxy::GetTsyObjectFromIpc + ( + const TInt aIpc + ) const + + { + TFLOGSTRING( "CSAT: CSatMessageRouterProxy::GetTsyObjectFromIpc" ); + // A default value must be given as a initialization, however, nothing will + // be done if the IPC does not mach as well in RouteCompletion + CMmMessageManagerBase::TTsyObjects retObject = + CMmMessageManagerBase::ESatTsyObjType; + + switch ( aIpc ) + { + // General + case ESatTerminalRsp: + case ESatMenuSelection: + case ESatSendMessageNoLogging: + { + retObject = CMmMessageManagerBase::ESatTsyObjType; + break; + } + // Icon + case ESatTsyGetIconData: + case ESatTsyGetImageInstance: + case ESatTsyGetClut: + { + retObject = CMmMessageManagerBase::ESatIconTsyObjType; + break; + } + // Notifications + case ESatTsyPCmd: + case ESatTsySetPolling: + case ESatTsySetProactiveCommandOnGoingStatus: + { + retObject = CMmMessageManagerBase::ESatNotificationsTsyObjType; + break; + } + case ESatNotifyProactiveSimSessionEnd: + { + retObject = CMmMessageManagerBase::ESatNotifySimSessionEndObjType; + break; + } + case ESatTsyRefresh: + case ESatTsyCompleteRefresh: + case ESatTsyImsiChanged: + { + retObject = CMmMessageManagerBase::ESatNotifyRefreshObjType; + break; + } + case ESatTsyNotifyLocalInfo: + case ESatTsyProvideLocalInfo: + case ESatTsyLocalInformationNmr: + case ESatTsyAccTech: + case ESatTsyTimingAdvance: + case ESatTsyTimeZone: + case ESatTsyGetIMEI: + case ESatNotifyLocalInfoPCmd: + { + retObject = CMmMessageManagerBase::ESatNotifyLocalInfoObjType; + break; + } + case ESatNotifySetUpEventListPCmd: + { + retObject = CMmMessageManagerBase::ESatNotifySetUpEventListObjType; + break; + } + case ESatNotifyMoSmControlRequest: + case ESatTsyMoSmControlEnvelope: + case ESatTsyMoSmsControlActivation: + { + retObject = + CMmMessageManagerBase::ESatNotifyMoSmControlRequestObjType; + break; + } + case ESatTsySsStatus: + { + retObject = CMmMessageManagerBase::ESatNotifyLaunchBrowserObjType; + break; + } + case ESatNotifyCallControlRequest: + { + retObject = + CMmMessageManagerBase::ESatNotifyCallControlRequestObjType; + break; + } + // Event Download + case ESatTsyCallDisconnected: + case ESatTsyLocationStatus: + case ESatTsyCallConnected: + case ESatTsyMTCall: + case ESatTsyAccessTechnologyChange: + case ESatEventDownload: + case ESatTsyRemoveEventList: + { + retObject = CMmMessageManagerBase::ESatEventDownloadTsyObjType; + break; + } + // Call Control + case ESatTsyGetBearerCapability: + case ESatTsyCheckAtkDataForAlphaId: + case ESatTsyCallEvent: + case ESatTsySSEvent: + case ESatTsyUSSDEvent: + case ESatTsyCreateEnvelope: + case ESatTsyUssdStatus: + { + retObject = CMmMessageManagerBase::ESatCCTsyObjType; + break; + } + case ESatTsyCellBroadcast: + case ESatTsySmsPpDdl: + case ESatTsyReadCbmids: + case ESatTsySmsPpDdlStatus: + case ESatTsySmsDeliverReport: + { + retObject = CMmMessageManagerBase::ESatDataDownloadTsyObjType; + break; + } + default: + break; + } + + return retObject; + } + +// --------------------------------------------------------------------------- +// CMmMessageRouterProxy::Complete +// Complete with a data package +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +void CSatMessageRouterProxy::Complete( + TInt aIpc, + CMmDataPackage* aData, + TInt aResult ) + { +TFLOGSTRING3("TSY: CMmMessageRouterProxy::Complete. IPC = %d, result: %d", aIpc, aResult); + RouteCompletion( aIpc, static_cast(aData), aResult ); + } + +// --------------------------------------------------------------------------- +// CMmMessageRouterProxy::Complete +// Complete without a data package +// (other items were commented in a header). +// --------------------------------------------------------------------------- +// +void CSatMessageRouterProxy::Complete( TInt aIpc, TInt aResult ) + { + CSatDataPackage emptyDataPackage; + Complete( aIpc, &emptyDataPackage, aResult ); + } + +// ----------------------------------------------------------------------------- +// CSatMessageRouterProxy::RouteCompletion +// Completes a request or notification via the specific Tsy object, based on +// IPC number and data package +// ----------------------------------------------------------------------------- +// +void CSatMessageRouterProxy::RouteCompletionL + ( + TInt aIpc, + CSatDataPackage* aDataPackage, + TInt aResult + ) + { + TFLOGSTRING3("CSAT: CSatMessageRouterProxy::RouteCompletion ipc=%d, \ + error: %d", aIpc, aResult); + CBase* object = GetObjectForCompletion( aIpc, aDataPackage ); + + if ( NULL != object ) + { + switch ( aIpc ) + { + case ESatTsyPCmd: + { + reinterpret_cast( object )-> + CompletePCmdL( aDataPackage, aResult ); + break; + } + case ESatNotifyProactiveSimSessionEnd: + { + reinterpret_cast( object )-> + CompleteNotifyL( aDataPackage, aResult ); + break; + } + case ESatTsyProvideLocalInfo: + { + reinterpret_cast( object )-> + CompleteUpdateLocalInfo( aDataPackage, aResult ); + break; + } + case ESatTsyLocalInformationNmr: + { + reinterpret_cast( object )-> + CompleteUpdateNetInfo( aDataPackage, aResult ); + break; + } + case ESatTsyAccTech: + { + reinterpret_cast( object )-> + CompleteUpdateAccTech( aDataPackage, aResult ); + break; + } + case ESatTsyTimeZone: + { + reinterpret_cast( object )-> + CompleteUpdateTimeZone( aDataPackage, aResult ); + break; + } + case ESatTsyGetIMEI: + { + reinterpret_cast( object )-> + CompleteUpdateIMEI( aDataPackage, aResult ); + break; + } + case ESatTsyTimingAdvance: + { + reinterpret_cast( object )-> + CompleteUpdateTimingAdvAndMEStatus( aDataPackage, aResult ); + break; + } + case ESatTsyNotifyLocalInfo: + { + reinterpret_cast( object )-> + CompleteTerminalRespDataL( aDataPackage, aResult ); + break; + } + case ESatTsySetPolling: + { + reinterpret_cast( object )-> + SetPollingResultL( aDataPackage, aResult ); + break; + } + case ESatTsyCreateEnvelope: + { + reinterpret_cast( object )->CreateEnvelopeL( + aDataPackage ); + break; + } + case ESatTsyMoSmControlEnvelope: + { + reinterpret_cast( object )-> + CreateMoSmsCtrlEnvelopeL( aDataPackage, aResult) ; + break; + } + case ESatTsyGetBearerCapability: + { + reinterpret_cast( object )-> + CompleteBearerCapability( aDataPackage, aResult ); + break; + } + case ESatTsyCheckAtkDataForAlphaId: + { + reinterpret_cast( object )->CheckIfAlphaIdPresent( + aDataPackage ); + break; + } + case ESatTsyCallEvent: + case ESatTsySSEvent: + case ESatTsyUSSDEvent: + { + reinterpret_cast( object )->CompleteCCEventL( + aIpc, aDataPackage ); + break; + } + case ESatNotifyCallControlRequest: + { + reinterpret_cast( object )-> + CompleteNotifyL( aDataPackage, aResult ); + break; + } + case ESatNotifyMoSmControlRequest: + { + reinterpret_cast( object )-> + CompleteNotifyL( aDataPackage, aResult) ; + break; + } + case ESatTsyMoSmsControlActivation: + { + reinterpret_cast( object )-> + SetActivationStatus( aDataPackage ) ; + break; + } + case ESatTsyCallConnected: + { + reinterpret_cast( object )-> + CompleteCallConnectedL( aDataPackage ); + break; + } + case ESatTsyCallDisconnected: + { + reinterpret_cast( object )-> + CompleteCallDisconnectedL( aDataPackage ); + break; + } + case ESatTsyLocationStatus: + { + reinterpret_cast( object )-> + CompleteLocationStatusL( aDataPackage ); + break; + } + case ESatTsyAccessTechnologyChange: + { + reinterpret_cast( object )-> + CompleteAccessTechnologyChangeL( aDataPackage ); + break; + } + case ESatTsyMTCall: + { + reinterpret_cast( object )-> + CompleteMTCallL( aDataPackage ); + break; + } + case ESatTsyRemoveEventList: + { + reinterpret_cast( object )-> + SetUpEventList( 0 ); + break; + } + case ESatTsyCellBroadcast: + { + reinterpret_cast( object )-> + CompleteCellBroadcastDdlL( aDataPackage ); + break; + } + case ESatTsySmsPpDdl: + { + reinterpret_cast( object )-> + CompleteSmsPpDdlL( aDataPackage ); + break; + } + case ESatTsyReadCbmids: + { + reinterpret_cast( object )-> + CompleteReadCbmidsL( ); + break; + } + case ESatTsySmsPpDdlStatus: + { + reinterpret_cast( object )-> + SetSmsPpDdlStatus( aDataPackage ) ; + break; + } + case ESatTsySmsDeliverReport: + { + reinterpret_cast( object )-> + CreateSmsDeliverReportL( aResult ) ; + break; + } + case ESatTsyGetIconData: + { + reinterpret_cast( object )-> + CompleteGetIcon( aDataPackage, aResult ); + break; + } + case ESatTsyGetImageInstance: + { + reinterpret_cast( object )-> + CompleteGetImageInstance( aDataPackage, aResult ); + break; + } + case ESatTsyGetClut: + { + reinterpret_cast( object )-> + CompleteGetClut( aDataPackage, aResult ); + break; + } + case ESatTsyRefresh: + { + reinterpret_cast( object )-> + CompleteTerminalRespDataL( aDataPackage, aResult); + break; + } + case ESatTsyCompleteRefresh: + { + reinterpret_cast( object )-> + CompleteRequest( aDataPackage, aResult); + break; + } + case ESatTsyImsiChanged: + { + reinterpret_cast( object )-> + CompleteImsiChange(); + break; + } + case ESatTsySetProactiveCommandOnGoingStatus: + { + reinterpret_cast( object )-> + SetProactiveCommandOnGoingStatus( aDataPackage, aResult ); + break; + } + case ESatTsySsStatus: + { + reinterpret_cast( object )-> + SetSsStatus( aDataPackage ) ; + break; + } + case ESatTsyUssdStatus: + { + reinterpret_cast( object )->SetUssdStatus( + aDataPackage ) ; + break; + } + default: + break; + } + } + else + { + TFLOGSTRING("CSatMessageRouterProxy::RouteCompletion, IPC NOT HANDLED.!!!"); + } + } + +// ================= OTHER EXPORTED FUNCTIONS =============================== + + //None + + +// End of File +