--- a/presencefwsimpleadpt/inc/simpleplugingroups.h Thu Aug 19 10:19:02 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,441 +0,0 @@
-/*
-* Copyright (c) 2006 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: Simple Protocol implementation for Presence Framework
-*
-*/
-
-
-
-
-#ifndef CSIMPLEPLUGINGROUPS_H
-#define CSIMPLEPLUGINGROUPS_H
-
-#include <e32std.h>
-
-#include <ximpbase.h>
-#include <protocolpresentitygroups.h>
-
-#include <mrlspresxdmasynchandler.h>
-
-#include "simpleplugincommon.h"
-#include "msimplepluginconnectionobs.h"
-
-
-class TXIMPRequestId;
-class MXIMPIdentity;
-class MPresenceInfoFilter;
-class MProtocolPresentityGroupsDataHost;
-class MXIMPObjectCollection;
-
-class MSimpleWinfo;
-class CPresenceXDM;
-class CRLSXDM;
-class CXdmEngine;
-class CXdmDocument;
-
-
-/**
- * CSimplePluginGroups
- *
- * Simple Engine Connection
- *
- * @lib ?library
- * @since s60 v5.0
- */
-NONSHARABLE_CLASS( CSimplePluginGroups ) : public CActive,
- public MProtocolPresentityGroups
- {
-private:
-
-
- /**
- * Current operation
- */
- enum TPluginGroupsOperation
- {
- ENoOperation,
- ECreatePresentityGroup,
- EDeletePresentityGroup,
- EAddPresentityGroupMember,
- ERemovePresentityGroupMember,
- EGetListOfLists,
- EGetListContent
- };
-
- /**
- * Current actibe object state
- */
- enum TPluginGroupsState
- {
- EPluginIdle,
- EPluginInitXdm,
- EPluginFetchRls,
- EPluginAddGroupMember,
- EPluginRemoveGroupMember,
- EPluginCommitRls,
- EPluginCommitXdm,
- ERemoveGroupFromGranted
- };
-
-public:
- /**
- * Constructor.
- * @param aObs callback for complete requests
- */
- static CSimplePluginGroups* NewL(
- MSimplePluginConnectionObs& aObs );
-
- virtual ~CSimplePluginGroups();
-
-
-
-private:
-
- CSimplePluginGroups(
- MSimplePluginConnectionObs& aObs );
-
- void ConstructL( );
-
-
-// from base class MXIMPBase
-public:
-
- /**
- * Defined in a base class
- */
- TAny* GetInterface(
- TInt32 aInterfaceId,
- TIfGetOps aOps );
-
- /**
- * Defined in a base class
- */
- const TAny* GetInterface(
- TInt32 aInterfaceId,
- TIfGetOps aOps ) const;
-
- /**
- * Defined in a base class
- */
- TInt32 GetInterfaceId() const;
-
-
-// from base class MProtocolPresentityGroups
-
- /**
- * Defined in a base class
- */
- void DoSubscribePresentityGroupListL(
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoUnsubscribePresentityGroupListL(
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoCreatePresentityGroupL(
- const MXIMPIdentity& aGroupId,
- const TDesC16& aDisplayName,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoDeletePresentityGroupL(
- const MXIMPIdentity& aGroupId,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoUpdatePresentityGroupDisplayNameL(
- const MXIMPIdentity& aGroupId,
- const TDesC16& aDisplayName,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoSubscribePresentityGroupContentL(
- const MXIMPIdentity& aGroupId,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoUnsubscribePresentityGroupContentL(
- const MXIMPIdentity& aGroupId,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoAddPresentityGroupMemberL(
- const MXIMPIdentity& aGroupId,
- const MXIMPIdentity& aMemberId,
- const TDesC16& aMemberDisplayName,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoRemovePresentityGroupMemberL(
- const MXIMPIdentity& aGroupId,
- const MXIMPIdentity& aMemberId,
- TXIMPRequestId aReqId );
-
- /**
- * Defined in a base class
- */
- void DoUpdatePresentityGroupMemberDisplayNameL(
- const MXIMPIdentity& aGroupId,
- const MXIMPIdentity& aMemberId,
- const TDesC16& aMemberDisplayName,
- TXIMPRequestId aReqId );
-
-protected:
-
-// from base class CActive
-
- /**
- * Defined in a base class
- */
- void RunL();
-
- /**
- * Defined in a base class
- */
- TInt RunError( TInt aError );
-
- /**
- * Defined in a base class
- */
- void DoCancel();
-
-private:
-
- /**
- * Save presentity id
- * @param aPresentityId presentity id
- */
- void SetPresIdentityL(
- const MXIMPIdentity& aPresentityId );
-
- /**
- * Save presentity id
- * @param aPresentityId presentity id
- */
- void SetPresIdentity2L(
- const MXIMPIdentity& aPresentityId );
-
- /**
- * Calls MXIMPProtocolConnectionHost callback
- * @param aStatus error status
- */
- void CompletePrFwReq( TInt aStatus );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL(
- TXIMPRequestId aReqId,
- TPluginGroupsOperation aOperation );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL(
- const MXIMPIdentity& aId,
- TXIMPRequestId aReqId,
- TPluginGroupsOperation aOperation );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL(
- const MXIMPIdentity& aId,
- const TDesC16& aDisplayName,
- TXIMPRequestId aReqId,
- TPluginGroupsOperation aOperation );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL(
- const MXIMPIdentity& aId,
- const MXIMPIdentity& aMemberId,
- TXIMPRequestId aReqId,
- TPluginGroupsOperation aOperation );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL(
- const MXIMPIdentity& aId,
- const MXIMPIdentity& aMemberId,
- const TDesC16& aDisplayName,
- TXIMPRequestId aReqId,
- TPluginGroupsOperation aOperation );
-
- /**
- * Start XDM operation
- */
- void StartXdmOperationL();
-
- /**
- * Start XDM operation, StartXdmOperationL calls this.
- */
- void DoStartXdmOperationL( );
-
- /**
- * Call CSimpleXdmUtils operation
- */
- void CallActualXdmOperationL();
-
- /**
- * Get list of the entity lists
- */
- void GetListOfListsL();
-
- /**
- * Get content of the entity list
- */
- void GetListContentL();
-
- /**
- * Yields to active scheduler and runs next RunL loop
- * @param aStatus error status
- */
- void CompleteMe( TInt aStatus );
-
- /**
- * Copy data from aLists and from aNames into aCollection
- * @param aNames group names [IN]
- * @param aNames group display names [IN]
- * @param aCollection collection of MPresentityGroupInfo [OUT]
- */
- void CopyGroupArraysToCollectionL(
- CDesCArrayFlat& aLists, CDesCArrayFlat& aNames, MXIMPObjectCollection& aCollection );
-
- /**
- * Copy data from aIds and from aNames into aCollection
- * @param aNames group member names [IN]
- * @param aNames group member display names [IN]
- * @param aCollection collection of MPresentityGroupMemberInfo [OUT]
- */
- void CopyGroupMembersToCollectionL(
- CPtrCArray& aIds, CPtrCArray& aNames, MXIMPObjectCollection& aCollection);
-
-
- /**
- * Add presentity group
- * @param aGroupId group id
- * @param adispName display name
- */
- void HandleCreatePresentityGroupL(
- const TDesC& aGroupId, const TDesC& aDispName );
-
- /**
- * Delete presentity group
- * @param aGroupId group id
- */
- void HandleDeletePresentityGroupL( const TDesC& aGroupId );
-
- /**
- * Add presentity group member
- */
- void HandleAddPresentityGroupMemberL();
-
- /**
- * Remove group member
- */
- void HandleRemovePresentityGroupMemberL();
-
-
-
-private: // Data
-
- /**
- * PrFw Plugin connection observer
- */
- MSimplePluginConnectionObs& iConnObs;
-
- /**
- * XDM Settings id
- */
- TInt iSettingsId;
-
- /**
- * PrFW request id
- */
- TXIMPRequestId iPrFwId;
-
- /**
- * PrFW request id for own requests
- */
- TXIMPRequestId iPrFwIdOwn;
-
- /**
- * Simple Engine request id
- */
- TInt iSimpleId;
-
- /**
- * Subscribed items. Bitmask.
- */
- TUint iSubscribed;
-
- /**
- * Current operation
- */
- TPluginGroupsOperation iOperation;
-
- /**
- * Current presentity in progress
- * Own.
- */
- HBufC16* iPresIdentity;
-
- /**
- * Current presentity in progress
- * Own.
- */
- HBufC16* iPresIdentity2;
-
- /**
- * XDM Utils
- * Not own.
- */
- CSimplePluginXdmUtils* iXdmUtils;
-
- /**
- * Display name
- * Own
- */
- HBufC* iDisplayName;
-
- /**
- * Active object state
- */
- TPluginGroupsState iState;
-
- TBool iCompleted;
-
- };
-
-#endif // CSimplePluginGroups_H