--- a/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailspresencehandler.h Thu Aug 19 09:41:53 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,217 +0,0 @@
-/*
-* Copyright (c) 2008-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: Implementation of the presence handler
-*
-*/
-
-
-#ifndef CVIMPSTDETAILSPRESENCEHANDLER_H
-#define CVIMPSTDETAILSPRESENCEHANDLER_H
-
-// INCLUDES
-#include <e32base.h>
-
-#include <presencecachereadhandler2.h> // handling the presence cache events
-#include <mpresencebuddyinfo2.h> // buddy info class
-#include "tvimpstenums.h"
-#include "mvimpstdetailspresencehandler.h"
-
-// FORWARD DECLARATIONS
-class MVIMPSTDetailsPresenceObserver;
-class MPresenceBuddyInfo2;
-class MPresenceCacheReader2;
-class MXIMPClient;
-class MXIMPContext;
-
-// CLASS DECLARATION
-/**
- * Class implementing the header part control of vimpstdetailsviewplugin
- *
- * @lib vimpstdetailsviewplugin.dll
- * @since S60 v5.0
- */
-
-class CVIMPSTDetailsPresenceHandler :public CBase,
- public MVIMPSTDetailsPresenceHandler,
- public MPresenceCacheReadHandler2
- {
-public:
- // Construction & destruction
- /**
- * Two-phased constructor
- * @param aServiceName, service data.
- * @param aObserver, presence observer
- * @param aPresenceSupported, presence supported or not
- * @return instance of this class
- * @since S60 v5.0
- */
- static CVIMPSTDetailsPresenceHandler* NewL( const TDesC& aServiceName,
- MVIMPSTDetailsPresenceObserver& aObserver,
- TBool aPresenceSupported );
-
- /**
- * Destructor.
- * @since S60 v5.0
- */
- ~CVIMPSTDetailsPresenceHandler();
-
-
-public: // from MVIMPSTDetailsPresenceHandler
-
- /**
- * from MVIMPSTDetailsPresenceHandler
- * fetch presence from cache
- * @since S60 v5.0
- */
- void SubscribePresenceL(const TDesC& aUserId );
-
- /**
- * from MVIMPSTDetailsPresenceHandler
- * return the presence status
- * @since S60 v5.0
- */
- TVIMPSTEnums::TOnlineStatus GetPresenceStatus();
-
-
- /**
- * from MVIMPSTDetailsPresenceHandler
- * @param aIndex , index of the control
- * @return Label for control
- * @since S60 v5.0
- */
- const TDesC& GetHeaderLabelDataL( TInt aIndex );
-
- /**
- * from MVIMPSTDetailsPresenceHandler
- * @return the presence status message
- * @since S60 v5.0
- */
- const TDesC& GetStatusMessageL();
-
- /**
- * function to get supported or not
- * @since S60 v5.0
- * @return ETrue if supported
- */
- TBool IsSupported() const ;
-
-
-public: // prescachereadhandler
-
- /**
- * Handler for AllBuddiesPresenceInService method of MPresenceCacheReader.
- *
- * @param aErrorCode
- * @param aPresenceBuddyInfoList presence infos for all buddies requested.
- * Ownership of elements to callee. Can be empty if not found.
- */
- void HandlePresenceReadL(TInt aErrorCode,
- RPointerArray<MPresenceBuddyInfo2>& aPresenceBuddyInfoList) ;
-
- /**
- * Handler for Buddy presence change notifications.
- *
- * @param aErrorCode
- * @param aPresenceBuddyInfo presence info for buddy.
- * Ownership to callee. Can be NULL if aErrorCode exist.
- */
- void HandlePresenceNotificationL(TInt aErrorCode,
- MPresenceBuddyInfo2* aPresenceBuddyInfo);
-
-
-private:
-
- /**
- * Constructor for performing 1st stage construction
- * @param aObserver, presence observer
- * @param aPresenceSupported, check for PresenceSupported or not
- * @since S60 v5.0
- */
- CVIMPSTDetailsPresenceHandler(MVIMPSTDetailsPresenceObserver& aObserver,
- TBool aPresenceSupported );
-
- /**
- * Constructor for performing 2nd stage construction
- * @param aServiceName, service data.
- * @since S60 v5.0
- */
- void ConstructL( const TDesC& aServiceName );
-
- /**
-
- /**
- * Converts the presence cache status to client supported presence status.
- *
- * @since 5.0
- * @param aAvailabilityEnum presence cache status value.
- * @param aAvabilityText avability text,to support multiple presence states.
- * @return TVIMPSTEnums::TOnlineStatus client presence status.
- */
- void ConvertPresenceCacheEnums(MPresenceBuddyInfo2::TAvailabilityValues aAvailabilityEnum, TPtrC aAvabilityText);
-
- /**
- * Helper function for the setting the status text and status
- * @param aStatusMessage, status message .
- * @since S60 v5.0
- */
- void ProcessStatusMesssageL(const TDesC& aStatusMessage );
-
-
- /**
- * function to get the label text
- * @since S60 v5.0
- * @return status text
- */
- const TDesC& GetStatusTextL();
-
- /**
- * Converts the presence cache extension keys
- * user for block and pending states to client supported presence status.
- *
- * @since 5.0
- * @param aPresenceBuddyInfo presence buddy info class.
- */
- void GetKeyFieldsAndValuesL(MPresenceBuddyInfo2& aPresenceBuddyInfo);
-
-
-
-private: // data member
-
- // not owns: reference to presence observer
- MVIMPSTDetailsPresenceObserver& iPresenceObserver;
- // Owns : ximp client
- MXIMPClient* iXIMClient ;
- //Own : ximp context
- MXIMPContext* iPresenceContext;
- //owns : pointer to presence read interface
- MPresenceCacheReader2* iPresenceCacheReader;
- // owns, service name
- HBufC* iServiceName;
- // owns, user id
- HBufC* iUserId;
-
- // owns, status message from server if any
- HBufC* iStatusMessage;
-
- // owns, status text , online/offline etc
- HBufC* iStatusText;
-
- // owns, status
- TVIMPSTEnums::TOnlineStatus iStatus;
- // owns, presence supported or not
- TBool iPresenceSupported;
-
- };
-
-#endif // CVIMPSTDETAILSPRESENCEHANDLER_H