--- a/messagingfw/msgcommonutils/src/MsgVoIPExtension.cpp Tue Aug 31 15:41:11 2010 +0300
+++ b/messagingfw/msgcommonutils/src/MsgVoIPExtension.cpp Wed Sep 01 12:27:27 2010 +0100
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2005, 2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005, 2007-2008 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"
@@ -11,13 +11,16 @@
*
* Contributors:
*
-* Description: Stub class for get count of VoIP profiles.
+* Description: Get count of VoIP profiles.
*
*/
#include "MsgVoIPExtension.h"
+#include <spsettings.h>
+#include <featmgr.h>
+
// ================= MEMBER FUNCTIONS =======================
// C++ default constructor can NOT contain any code, that
@@ -25,14 +28,15 @@
//
CMsgVoIPExtension::CMsgVoIPExtension()
{
+ iVoIPFeatureSupport = EFalse;
}
// Two-phased constructor.
//
EXPORT_C CMsgVoIPExtension* CMsgVoIPExtension::NewL()
{
- CMsgVoIPExtension *self =
- new ( ELeave ) CMsgVoIPExtension();
+ CMsgVoIPExtension *self =
+ new ( ELeave ) CMsgVoIPExtension();
CleanupStack::PushL( self );
self->ConstructL();
CleanupStack::Pop();
@@ -43,22 +47,44 @@
//
void CMsgVoIPExtension::ConstructL()
{
- }
-
+ FeatureManager::InitializeLibL();
+ //checking If VOIP is enabled
+ if( FeatureManager::FeatureSupported( KFeatureIdCommonVoip ) )
+ {
+ iVoIPFeatureSupport = ETrue;
+ }
+ FeatureManager::UnInitializeLib();
+ if(iVoIPFeatureSupport)
+ {
+ // for handling services related data
+ iSPSettings = CSPSettings::NewL();
+ }
+ }
// Destructor
//
CMsgVoIPExtension::~CMsgVoIPExtension()
{
+ if(iVoIPFeatureSupport)
+ {
+ delete iSPSettings;
+ }
}
// ----------------------------------------------------
// CMsgVoIPExtension::VoIPProfilesExistL
-//
+//
// ----------------------------------------------------
EXPORT_C TBool CMsgVoIPExtension::VoIPProfilesExistL() const
{
- return EFalse;
+ TBool result = EFalse;
+
+ if(iVoIPFeatureSupport)
+ {
+ result = iSPSettings->IsFeatureSupported( ESupportVoIPFeature ) &&
+ iSPSettings->IsFeatureSupported( ESupportInternetCallFeature );
+ }
+ return result;
}
-
+
// ----------------------------------------------------
// CMsgVoIPExtension::IsPreferredTelephonyVoIP
//
@@ -74,9 +100,13 @@
// ----------------------------------------------------
EXPORT_C TBool CMsgVoIPExtension::IsVoIPSupported() const
{
- return EFalse;
+ TBool result = EFalse;
+
+ if(iVoIPFeatureSupport)
+ {
+ return iSPSettings->IsFeatureSupported( ESupportVoIPFeature );
+ }
+ return result;
}
-
// End of File
-