voipplugins/sipconnectionprovider/src/scpsettinghandler.cpp
branchRCL_3
changeset 33 2989b291cac7
parent 28 d38647835c2e
--- 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 <spproperty.h>
 #include <spsettingsvoiputils.h>
 #include <pressettingsapi.h>
-#include <XdmSettingsApi.h>
-#include <XdmSettingsCollection.h>
+#include <xdmsettingsapi.h>
+#include <xdmsettingscollection.h>
 
 #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<CRCSEProfileEntry> 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
 // -----------------------------------------------------------------------------
 //