diff -r 3104fc151679 -r 9a48e301e94b uiservicetab/vimpstengine/tsrc/vimpstengine_ut/src/stubs/s_presencefeatures.cpp --- /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; + } + +