diff -r 2b7283837edb -r 3104fc151679 uiservicetab/vimpstengine/inc/cvimpstenginecontactmgmtextention.h --- a/uiservicetab/vimpstengine/inc/cvimpstenginecontactmgmtextention.h Thu Aug 19 09:41:53 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,166 +0,0 @@ -/* -* Copyright (c) 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" -* 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: Implements the Contact Management Extention Feature -* -*/ - -#ifndef __CVIMPSTENGINECONTACTMGMTEXTENTION_H -#define __CVIMPSTENGINECONTACTMGMTEXTENTION_H - -// INCLUDES -#include - -#include "mvimpstenginecontactmgmtextention.h" -#include "tvimpstenums.h" -#include "mvimpstenginesessioncntxtobserver.h" - -// FORWARD DECLARATIONS -class CVIMPSTEngineRequestMapper; -class MPresentityGroups; -class MXIMPContext; -class MXIMPIdentity; - -// CLASS DECLARATION -/** - * This Class implements the Contact Management Extention Feature - * @lib vimpstengine.lib - * @since S60 5.0 - */ -NONSHARABLE_CLASS( CVIMPSTEngineContactMgmtExtention ) : public CBase, - public MVIMPSTEngineContactMgmtExtention, - public MVIMPSTEngineSessionCntxtObserver - - { - //for test cases - friend class T_VIMPSTEngineContactMgmtExtention; - - public: // Two-phased constructors and destructor - - /** - * Two-phased constructor. - * @param aPresContext: presence context - * @param aPresGroup - Presentity Group - * @param aRequestMapper: Request Mapper for XIMP Events - */ - - static CVIMPSTEngineContactMgmtExtention* NewL( - MXIMPContext& aPresenceCtx, - MPresentityGroups& aPresGroup, - CVIMPSTEngineRequestMapper& aRequestMapper); - /** - * Two-phased constructor. - * @param aPresContext: presence context - * @param aPresGroup - Presentity Group - * @param aRequestMapper: Request Mapper for XIMP Events - */ - static CVIMPSTEngineContactMgmtExtention* NewLC( - MXIMPContext& aPresenceCtx, - MPresentityGroups& aPresGroup, - CVIMPSTEngineRequestMapper& aRequestMapper); - - /** - * C++ Destructor. - */ - virtual ~CVIMPSTEngineContactMgmtExtention(); - - - private: - - /** - * default constructor - * @param aPresContext: presence context - * @param aPresGroup - Presentity Group - * @param aRequestMapper: event observer to get the notifications of the events. - */ - CVIMPSTEngineContactMgmtExtention( - MXIMPContext& aPresenceCtx, - MPresentityGroups& aPresGroup, - CVIMPSTEngineRequestMapper& aRequestMapper); - - - /** - * CreateIdentityLC - * create the identity for given param - * @ aparam aListId, to create - * @ return pointer to MPrFwIdentity - */ - MXIMPIdentity* CreateIdentityLC(const TDesC& aListId) ; - - - public: // See MVIMPSTEngineContactMgmtExtention - - /** - * See MVIMPSTEngineContactMgmtExtention - */ - TInt AddServerContactL(const TDesC& aContactList, - const TDesC& aUserId,const TDesC& aNickname, - TBool aWaitToComplete = ETrue ) ; - - - /** - * See MVIMPSTEngineContactMgmtExtention - */ - TInt DeleteServerContactL( const TDesC& aContactListId, const TDesC& aUserId ) ; - - - private: - /** - * See MVIMPSTEngineSessionCntxtObserver - */ - void HandleSessionContextEventL( const MXIMPContext& aContext, - const MXIMPBase& aEvent, - TXimpOperation aXimpOperation = EVIMPSTXimpOperationNoOperation); - - public: // From MVIMPSTEngineExtentionFeatures - - /** - * See MVIMPSTEngineExtentionFeatures - */ - TVIMPSTEnums::FeatureSupport IsSupported() const; - - - /** - * See MVIMPSTEngineExtentionFeatures - */ - TVIMPSTEnums::ExtentionType Type() const; - - /** - * See MVIMPSTEngineExtentionFeatures - */ - void SetSupported(TVIMPSTEnums::FeatureSupport aSupported) ; - - - private: - - // not own - MXIMPContext& iPresenceCtx; - - // not deletable - MPresentityGroups& iPresGroup; - - - //doesnt own - CVIMPSTEngineRequestMapper& iRequestMapper; - - //Whether the extention Feature Supported or not - TVIMPSTEnums::FeatureSupport iSupported; - - //Result code from waited request - TInt iReqResult; - - }; - -#endif //__CVIMPSTENGINECONTACTMGMTEXTENTION_H - -// End of File