presencefwsimpleadpt/inc/simplepluginauthorization.h
branchRCL_3
changeset 17 2669f8761a99
parent 16 2580314736af
child 18 fbd2e7cec7ef
--- a/presencefwsimpleadpt/inc/simplepluginauthorization.h	Thu Aug 19 10:19:02 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,450 +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 CSIMPLEPLUGINAUTHORIZATION_H
-#define CSIMPLEPLUGINAUTHORIZATION_H
-
-#include <e32std.h>
-
-#include <ximpbase.h>
-#include <protocolpresenceauthorization.h>
-
-#include "simpleplugincommon.h"
-#include "msimplepluginconnectionobs.h"
-
-class TXIMPRequestId;
-class MXIMPIdentity;
-class MPresenceInfoFilter;
-class MProtocolPresenceAuthorizationDataHost;
-
-class MSimpleWinfo;
-class CPresenceXDM;
-class CRLSXDM;
-class CXdmEngine;
-class CXdmDocument;
-
-
-/**
- * CSimplePluginAuthorization
- *
- * Simple Engine Connection
- *
- * @lib ?library
- * @since s60 v5.0
- */
-NONSHARABLE_CLASS( CSimplePluginAuthorization ) : public CActive,
-    public MProtocolPresenceAuthorization
-    {
-public:
-
-
-    /**
-     * Current operation
-     */
-    enum TPluginAuthOperation
-        {
-        ENoOperation,
-        // XDM operations
-        EGrantPresenceForPresentity,
-        EGrantPresenceForPresentityGroupMembers,
-        EWithdrawFromPresentity,
-        EWithdrawFromGroupMembers,
-        EGrantForEveryone,
-        EWithdrawFromEveryone,
-        ESubscribeBlockList,
-        EUnsubscribeBlockList,
-        EBlockPresentity,
-        EUnblockPresentity,
-        // SIP and XDM  operations
-        ESubscribePresenceGrantRequestList,
-        EUnsubscribePresenceGrantRequestList        
-        };
-        
-    /**
-     * Current default rule
-     */
-    enum TPluginAuthDefRule
-        {
-        ERuleDef,
-        ERuleConfirm,
-        ERuleAllow
-        };     
-
-    /**
-     * Constructor.
-     * @param aObs callback for complete requests
-     */
-    static CSimplePluginAuthorization* NewL(
-        MSimplePluginConnectionObs& aObs );
-
-    virtual ~CSimplePluginAuthorization();
-
-    /**
-     * SetDataHost
-     *
-     * Set Data Host
-     *
-     * @lib ?library
-     * @since s60 v5.0
-     */
-    void SetDataHost( MProtocolPresenceAuthorizationDataHost& aDataHost );
-
-    /**
-     * WinfoTerminatedL
-     *
-     * SIMPLE Winfo watcher subscription is terminated
-     * @param aReason reason code
-     */
-    void WinfoTerminatedL( TInt aReason );
-
-    /**
-     * WINFO received from SIMPLE
-     * @param aWinfo WINFO
-     */
-    void WinfoNotificationL( MSimpleWinfo& aWinfo );
-    
-    /**
-     * This is to ensure that WINFO watchers responses are detected.
-     * @param aPrFwId framework request id to be completed
-     * @param sStatus error code
-     */
-    TBool HandleIfMine( TXIMPRequestId aPrFwId, TInt aStatus );
-
-
-private:
-
-    CSimplePluginAuthorization(
-        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 MProtocolPresenceAuthorization
-
-    /**
-     * Defined in a base class
-     */
-    void DoSubscribePresenceGrantRequestListL(
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoUnsubscribePresenceGrantRequestListL(
-                    TXIMPRequestId aReqId );
-
-// Granting presence information access to single presentities
-
-    /**
-     * Defined in a base class
-     */
-    void DoGrantPresenceForPresentityL(
-                    const MXIMPIdentity& aPresentityId,
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoUpdatePresenceGrantPifForPresentityL(
-                    const MXIMPIdentity& aPresentityId,
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoWithdrawPresenceGrantFromPresentityL(
-                    const MXIMPIdentity& aPresentityId,
-                    TXIMPRequestId aReqId );
-
-// Granting presence information access to presentity group members
-
-    /**
-     * Defined in a base class
-     */
-    void DoGrantPresenceForPresentityGroupMembersL(
-                    const MXIMPIdentity& aGroupId,
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoUpdatePresenceGrantPifForPresentityGroupMembersL(
-                    const MXIMPIdentity& aGroupId,
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoWithdrawPresenceGrantFromPresentityGroupMembersL(
-                    const MXIMPIdentity& aGroupId,
-                    TXIMPRequestId aReqId );
-
-// Granting presence information access to everyone
-
-    /**
-     * Defined in a base class
-     */
-    void DoGrantPresenceForEveryoneL(
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoUpdatePresenceGrantPifForEveryoneL(
-                    const MPresenceInfoFilter& aPif,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoWithdrawPresenceGrantFromEveryoneL(
-                    TXIMPRequestId aReqId );
-
-// Subscribe presence block list
-
-    /**
-     * Defined in a base class
-     */
-    void DoSubscribePresenceBlockListL(
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoUnsubscribePresenceBlockListL(
-                    TXIMPRequestId aReqId );
-
-// Blocking presence information access from single presentities
-
-    /**
-     * Defined in a base class
-     */
-    void DoBlockPresenceForPresentityL(
-                    const MXIMPIdentity& aPresentityId,
-                    TXIMPRequestId aReqId );
-
-    /**
-     * Defined in a base class
-     */
-    void DoCancelPresenceBlockFromPresentityL(
-                    const MXIMPIdentity& aPresentityId,
-                    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 );
-
-    /**
-     * Calls MXIMPProtocolConnectionHost callback
-     * @param aStatus error status
-     */
-    void CompletePrFwReq( TInt aStatus );
-
-
-    /**
-     * Start XDM operation
-     */
-    void StartXdmOperationL(
-        const MXIMPIdentity& aId,
-        TXIMPRequestId aReqId,
-        TPluginAuthOperation aOperation );
-        
-    /**
-     * Start XDM operation. StartXdmOperationL calls this.
-     */
-    void DoStartXdmOperationL(
-        const MXIMPIdentity& aId,
-        TXIMPRequestId aReqId,
-        TPluginAuthOperation aOperation ); 
-        
-    /**
-     * Start XDM operation. HandleIfMine calls this.
-     */
-    void DoStartXdmOperationL(
-        TXIMPRequestId aReqId,
-        TPluginAuthOperation aOperation );                
-
-    /**
-     * Call CSimpleXdmUtils operation
-     */
-    void CallActualXdmOperationL();
-    
-    /**
-     * Copy data from aBlockers to aBlockedSouls
-     * @param aBlockers user ids
-     * @param aBlockedSouls user PrFwIdentities
-     *
-     */
-    void CopyBlockersToArrayL( 
-        CPtrCArray& aBlockers, RPointerArray<MXIMPIdentity>& aBlockedSouls ); 
-        
-    /**
-     * Handle full Winfo notification
-     * @param aWinfo WINFO
-     */    
-    void HandleFullWinfoNotificationL( MSimpleWinfo& aWinfo ); 
-    
-    /**
-     * Handle partial Winfo notification
-     * @param aWinfo WINFO     
-     */    
-    void HandlePartialWinfoNotificationL( MSimpleWinfo& aWinfo );
-    
-    /**
-     * Call HandlePresenceGrantRequestReceivedL
-     * @param aUserId user id
-     */
-    void CallHandlePresenceGrantRequestReceivedL( const TDesC& aUserId );
-
-    /**
-     * Call HandlePresenceGrantRequestObsoletedL(
-     * @param aUserId user id
-     */
-    void CallHandlePresenceGrantRequestObsoletedL( const TDesC& aUserId ); 
-    
-    /**
-     * Handle block list subscription routines
-     */
-    void HandleSubscribeBlockListL();        
-    
-
-private: // Data
-
-    /**
-     * PrFw Plugin connection observer
-     */
-    MSimplePluginConnectionObs& iConnObs;
-
-    /**
-     * PrFw Plugin Authorization Data Host
-     * Not own.
-     */
-    MProtocolPresenceAuthorizationDataHost* iDataHost;
-
-    /**
-     * XDM Settings id
-     */
-    TInt iSettingsId;
-
-    /**
-     * PrFW request id
-     */
-    TXIMPRequestId iPrFwId;
-
-    /**
-     * PrFW request id for own requests
-     */
-    TXIMPRequestId iPrFwIdOwn;
-
-    /**
-     * Simple Engine request id
-     */
-    TInt iSimpleId;
-
-    /**
-     * Current operation
-     */
-    TPluginAuthOperation iOperation;
-
-    /**
-     * Current presentity in progress
-     * Own.
-     */
-    HBufC16* iPresIdentity;
-
-    /**
-     * Whether XDM utility is initialized
-     */
-    TBool iXdmOk;
-
-    /**
-     * XDM Utils
-     * Not own.
-     */
-    CSimplePluginXdmUtils* iXdmUtils;
-    
-    /**
-     * Current default rule
-     */
-    TPluginAuthDefRule iDefRule; 
-    
-    /**
-     * Active WINFO subscription
-     */
-    TBool iWinfoSubs;   
-
-
-    };
-
-#endif // CSimplePluginAuthorization_H