diff -r 7d48bed6ce0c -r 987c9837762f vmbx/vmbxengine/src/vmbxvoipengine.cpp --- a/vmbx/vmbxengine/src/vmbxvoipengine.cpp Tue Aug 31 15:45:17 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,325 +0,0 @@ -/* -* Copyright (c) 2009-2010 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 of the CVmbxVoIpEngine class -* -*/ - -// INCLUDE FILES -#include -#include - -#include "vmbxenginebase.h" -#include "vmbxlogger.h" -#include "vmbxuiutilities.h" -#include "vmbxutilities.h" -#include "vmspshandler.h" -#include "vmbshandler.h" -#include "voicemailboxdefsinternal.h" -#include "vmbxvoipengine.h" - -// ============================ MEMBER FUNCTIONS ============================= - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::CVmbxVoIpEngine -// C++ default constructor can NOT contain any code, that -// might leave. -// --------------------------------------------------------------------------- -// -CVmbxVoIpEngine::CVmbxVoIpEngine( MVmbxResourceProvider& aProvider ) - : CVmbxEngineBase( aProvider ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::CVmbxVoIpEngine =>" ); - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::CVmbxVoIpEngine <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::~CVmbxVoIpEngine -// Destructor. -// --------------------------------------------------------------------------- -// -CVmbxVoIpEngine::~CVmbxVoIpEngine() - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::~CVmbxVoIpEngine =>" ); - delete iVmSpsHandler; - delete iVmBsHandler; - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::~CVmbxVoIpEngine <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::NewL -// Two-phased constructor. -// --------------------------------------------------------------------------- -// -CVmbxVoIpEngine* CVmbxVoIpEngine::NewL( MVmbxResourceProvider& aProvider) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::NewL =>" ); - if ( !VmbxUtilities::VoIPSupported() ) - { - User::Leave( KErrNotSupported ); - } - - CVmbxVoIpEngine* self = new( ELeave ) CVmbxVoIpEngine( aProvider ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::NewL <=" ); - return self; - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::ConstructL -// Symbian 2nd phase constructor can leave. -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::ConstructL() - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::ConstructL =>" ); - if ( VmbxUtilities::VoIPSupported() ) - { - iVmSpsHandler = CVmSPSHandler::NewL(); - } - - iVmBsHandler = CVmBSHandler::NewL(); - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::ConstructL <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::GetL -// Gets voice mailbox number -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::GetL( CVoiceMailboxEntry*& aEntry ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetL =>" ); - TInt result( KErrNone ); - CVoiceMailboxEntry* vmbxEntry = CVoiceMailboxEntry::NewLC(); - - vmbxEntry->SetVoiceMailboxType( EVmbxVoip ); - vmbxEntry->SetServiceId( iVmbxServiceId ); - - HBufC8* brandId = HBufC8::NewLC( KSPMaxDesLength ); - TPtr8 ptr( brandId->Des() ); - BrandIdL( iVmbxServiceId, ptr ); - // set brand id - result = vmbxEntry->SetBrandId( ptr ); - CleanupStack::PopAndDestroy( brandId ); - if ( KErrNone == result ) - { - TVmbxServiceInfo serviceInfo; - serviceInfo.iServiceId = iVmbxServiceId; - result = GetServiceInfo( serviceInfo ); - if ( KErrNone == result ) - { - // set voip name - result = vmbxEntry->SetVmbxName( serviceInfo.iName ); - if ( KErrNone == result ) - { - // set voip address - result = vmbxEntry->SetVmbxNumber( serviceInfo.iAddress ); - } - } - } - VMBLOGSTRING2( "VMBX: CVmbxVoIpEngine::GetL: result=%I", result ); - User::LeaveIfError( result ); - CleanupStack::Pop( vmbxEntry ); - aEntry = vmbxEntry; - vmbxEntry = NULL; - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetL <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::SaveL -// Saves voice mailbox number -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::SaveL( const CVoiceMailboxEntry& /*aEntry*/, - TBool /*aShowNotesAllowed*/ ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::SaveL <=>" ); - User::Leave( KErrNotSupported ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::SaveProvisionedEntryL -// Saves Provisioned voice mailbox number -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::SaveProvisionedEntryL( - const CVoiceMailboxEntry& /*aEntry*/ ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::SaveProvisionedEntryL <=>" ); - User::Leave( KErrNotSupported ); - } - -// ---------------------------------------------------------------------------- -// CVmbxVoIpEngine::CheckConfiguration() -// ---------------------------------------------------------------------------- -// -TBool CVmbxVoIpEngine::CheckConfiguration( - const TVoiceMailboxParams& aParams, const TInt aFlags ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::CheckConfiguration: =>" ); - TBool result( EFalse ); - result = CVmbxEngineBase::CheckConfiguration(aParams, aFlags); - VMBLOGSTRING2( "VMBX: CVmbxVoIpEngine::CheckConfiguration: result%I <=", - result ); - return result; - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::QueryDefineNumberL -// -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::QueryDefineNumberL( CVoiceMailboxEntry& /*aEntry*/ ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::QueryDefineNumberL <=>" ); - User::Leave( KErrNotSupported ); - } - -// ---------------------------------------------------------------------------- -// CVmbxEngineBase::QueryChangeNumberL -// -// ---------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::QueryChangeNumberL( CVoiceMailboxEntry& /*aEntry*/ ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::QueryChangeNumberL <=>" ); - User::Leave( KErrNotSupported ); - } - -// Commented out because branding is not supported yet. -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::GetVmbxImageL -// -// --------------------------------------------------------------------------- -// -/* CGulIcon* CVmbxVoIpEngine::GetVmbxImageL( const TVoiceMailboxParams& aParams ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetVmbxImageL =>" ); - CGulIcon* guiIcon( NULL ); - if ( IsVoIPProfilesFound() ) - { - TBuf8 brandId( KNullDesC8 ); - BrandIdL(aParams.iServiceId, brandId ); - - CFbsBitmap* brandedBitmap( NULL ); - CFbsBitmap* brandedBitmapMask( NULL ); - TRAPD( err, GetBrandedIconL( - brandId, brandedBitmap, brandedBitmapMask ) ); - - if ( KErrNotFound == err ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetVmbxImageL: \ - no found profiles<= " ); - guiIcon = iProvider.VmbxUiUtilities().GetVmbxImageL( aParams ); - } - else if ( KErrNone == err ) - { - guiIcon = - CGulIcon::NewL( brandedBitmap, brandedBitmapMask ); - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetVmbxImageL: \ - found profiles" ); - } - } - else - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetVmbxImageL: use default " ); - guiIcon = iProvider.VmbxUiUtilities().GetVmbxImageL( aParams ); - } - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetVmbxImageL <=" ); - return guiIcon; - } */ - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::IsVoIPProfilesFound -// -// --------------------------------------------------------------------------- -// -TBool CVmbxVoIpEngine::IsVoIPProfilesFound() - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::IsVoIPProfilesFound <=>" ); - return iVmSpsHandler->IsVoIPProfilesFound(); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::GetServiceIds -// -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::GetServiceIdsL( RIdArray& aProfileIds ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetServiceIds: =>" ); - if ( VmbxUtilities::VoIPSupported() && IsVoIPProfilesFound() ) - { - iVmSpsHandler->GetServiceIdsL( aProfileIds ); - } - else - { - User::Leave( KErrNotFound ); - } - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetServiceIds: <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::GetBrandedIconL -// -// --------------------------------------------------------------------------- -// -/* void CVmbxVoIpEngine::GetBrandedIconL( const TDesC8& aBrandingId, - CFbsBitmap*& aBrandedBitmap, CFbsBitmap*& aBrandedBitmapMask ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetBrandedIconL: =>" ); - - iVmBsHandler->GetBrandedIconL( - aBrandingId, aBrandedBitmap, aBrandedBitmapMask ); - - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetBrandedIconL: <=" ); - } - */ -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::BrandIdL -// -// --------------------------------------------------------------------------- -// -void CVmbxVoIpEngine::BrandIdL( TInt aServiceId, TDes8& aBrandId ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::BrandIdL: =>" ); - - if ( VmbxUtilities::VoIPSupported() ) - { - iVmSpsHandler->BrandIdL( aServiceId, aBrandId ); - } - - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::BrandIdL: <=" ); - } - -// --------------------------------------------------------------------------- -// CVmbxVoIpEngine::GetServiceInfo -// -// --------------------------------------------------------------------------- -// -TInt CVmbxVoIpEngine::GetServiceInfo( TVmbxServiceInfo& aServiceInfo ) - { - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetServiceInfo: =>" ); - TInt ret( KErrNotFound ); - if ( VmbxUtilities::VoIPSupported() ) - { - ret = iVmSpsHandler->GetServiceInfo( aServiceInfo ); - } - VMBLOGSTRING( "VMBX: CVmbxVoIpEngine::GetServiceInfo: <=" ); - return ret; - } - -// End of file