uiservicetab/vimpstengine/tsrc/vimpstengine_ut/src/stubs/s_presencefeatures.cpp
branchRCL_3
changeset 29 9a48e301e94b
parent 0 5e5d6b214f4f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/vimpstengine/tsrc/vimpstengine_ut/src/stubs/s_presencefeatures.cpp	Wed Sep 01 12:33:36 2010 +0100
@@ -0,0 +1,167 @@
+/*
+* s_presencefeatures.cpp Copyright (c) 2006, 2007 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:  Interface for presence context.
+*
+*/
+
+#include "s_presencefeatures.h"
+#include "s_presentitygroups.h"
+#include "s_ximppresenceauthorization.h"
+#include "s_presencepublishing.h"
+#include "s_presenceobjectfactory.h"
+#include "s_presencewatching.h"
+
+MPresenceAuthorizationStub gPresenceAuthorizationStub;
+MPresencePublishingStub gMPresenceFeaturesStubPublishing;
+MPresenceObjectFactoryStub gMPresenceFeaturesStubObjectFactory;
+MPresenceWatchingStub gMPresenceFeaturesStubPresenceWatching;
+
+/**
+ * Factory method to instantiate MPresenceFeatures.
+ *
+ * Factory method to instantiate platform default
+ * MXIMPClient implementation through the ECom.
+ * If the default presence framework isn't supported
+ * in the platform, leaves with errorcode signalled
+ * from ECom.
+ *
+ * @return The new presence client object. Object
+ *         ownership is returned to caller.
+ */
+MPresenceFeatures* MyMPresenceFeatureStub::NewStubL( MXIMPContext* /*aContext*/ )
+	{
+	
+	MyMPresenceFeatureStub* ret = new (ELeave) MyMPresenceFeatureStub();
+	CleanupStack::PushL(ret);
+	ret->ContructL();
+	CleanupStack::Pop();
+	return ret;	
+	}
+
+void MyMPresenceFeatureStub::ContructL()
+	{
+	iGroups = new (ELeave) MyPresentityGroupsStub();	
+	}
+
+/**
+ * Public destructor.
+ * Objects can be deleted through this interface.
+ */
+MyMPresenceFeatureStub::~MyMPresenceFeatureStub()
+	{
+	delete iGroups;	
+	};
+
+
+/**
+ * Default constructor to zero initialize
+ * the iEcomDtorID member.
+ */
+MyMPresenceFeatureStub::MyMPresenceFeatureStub()
+	{
+		
+	}
+
+
+/**
+ * Gets reference to object factory interface.
+ *
+ * Returned object factory interface is used
+ * to instantiate presence objects.
+ *
+ * @return Object factory interface.
+ *         No ownership is returned caller.
+ */
+MPresenceObjectFactory& MyMPresenceFeatureStub::PresenceObjectFactory() const
+	{
+//	MPresenceObjectFactory* ret = NULL;
+//	return *ret;
+	return gMPresenceFeaturesStubObjectFactory;
+	};
+
+
+/**
+ * Gets reference to presence watching interface.
+ *
+ * @return Requested interface.
+ *         No ownership is returned caller.
+ */
+MPresenceWatching& MyMPresenceFeatureStub::PresenceWatching() const
+	{
+	//MPresenceWatching* ret = NULL;
+	//return *ret;	
+	return gMPresenceFeaturesStubPresenceWatching;
+	};
+
+
+
+/**
+ * Gets reference to presence publishing interface.
+ *
+ * @return Requested interface.
+ *         No ownership is returned caller.
+ */
+MPresencePublishing& MyMPresenceFeatureStub::PresencePublishing() const
+	{
+//	MPresencePublishing* ret = NULL;
+//	return *ret;	
+	return gMPresenceFeaturesStubPublishing;
+	};
+
+
+
+/**
+ * Gets reference to presentity groups interface.
+ *
+ * @return Requested interface.
+ *         No ownership is returned caller.
+ */
+MPresentityGroups& MyMPresenceFeatureStub::PresentityGroups() const
+	{
+	return *iGroups;	
+	};
+
+
+/**
+ * Gets reference to presence authorization interface.
+ *
+ * @return Requested interface.
+ *         No ownership is returned caller.
+ */
+MPresenceAuthorization& MyMPresenceFeatureStub::PresenceAuthorization() const
+	{
+	return gPresenceAuthorizationStub;
+	};
+
+
+const TAny* MyMPresenceFeatureStub::GetInterface(
+                    TInt32 /*aInterfaceId*/,
+                    TIfGetOps /*aOps*/ ) const
+    {
+    return NULL;
+    }
+
+TAny* MyMPresenceFeatureStub::GetInterface(
+                    TInt32 /*aInterfaceId*/,
+                    TIfGetOps /*aOps*/ )
+    {
+    return NULL;
+    }
+
+TInt32 MyMPresenceFeatureStub::GetInterfaceId() const
+    {
+    return 0;
+    }
+
+