diff -r 5886d40bb3de -r 2989b291cac7 voipplugins/sipconnectionprovider/src/scpsettinghandler.cpp --- a/voipplugins/sipconnectionprovider/src/scpsettinghandler.cpp Wed Sep 15 12:01:56 2010 +0300 +++ b/voipplugins/sipconnectionprovider/src/scpsettinghandler.cpp Wed Oct 13 14:20:32 2010 +0300 @@ -22,8 +22,8 @@ #include #include #include -#include -#include +#include +#include #include "scpsettinghandler.h" #include "scpservice.h" @@ -1010,6 +1010,41 @@ } // ----------------------------------------------------------------------------- +// CScpSettingHandler::IsVoIPOverWcdmaAllowedL +// ----------------------------------------------------------------------------- +// +TBool CScpSettingHandler::IsVoIPOverWcdmaAllowedL( + TUint32 aServiceId ) const + { + SCPLOGSTRING( "CScpSettingHandler::IsVoIPOverWcdmaAllowedL IN" ); + + TBool response( EFalse ); + RPointerArray entries; + + // Push entries to cleanup stack + CleanupStack::PushL( TCleanupItem( TScpUtility::ResetAndDestroyEntries, + &entries ) ); + + iRcseProfileRegistry->FindByServiceIdL( aServiceId, entries ); + + if ( entries.Count() ) + { + response = CRCSEProfileEntry::EOn == entries[ 0 ]->iAllowVoIPoverWCDMA; + } + else + { + User::Leave( KErrNotFound ); + } + + CleanupStack::PopAndDestroy( &entries ); + + SCPLOGSTRING2( + "CScpSettingHandler::IsVoIPOverWcdmaAllowedL : allowed : %d OUT", + response ); + return response; + } + +// ----------------------------------------------------------------------------- // CScpSettingHandler::UpdateImSettingsL // ----------------------------------------------------------------------------- //