diff -r 000000000000 -r 32704c33136d ncdengine/provider/server/inc/ncdserverreportmanagerimpl.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ncdengine/provider/server/inc/ncdserverreportmanagerimpl.h Tue Jan 26 12:06:03 2010 +0200 @@ -0,0 +1,138 @@ +/* +* 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: Contains CNcdServerReportManager class +* +*/ + + +#ifndef NCD_SERVER_REPORT_IMPL_H +#define NCD_SERVER_REPORT_IMPL_H + + +#include "catalogscommunicable.h" +#include "ncdproviderimpl.h" + +class CNcdNode; +class CNcdNodeMetaData; +class CNcdReportManager; +class MCatalogsHttpSession; + + +/** + * This class object provides node specific functions. + * Node contains additional classes that will contain more node + * or metadata specific information. + * + * @lib ?library + * @since S60 ?S60_version *** for example, S60 v3.0 + */ +class CNcdServerReportManager : public CCatalogsCommunicable + { + +public: + + /** + * NewL + * + * @param aProvider + * @return CNcdServerReportManager* Pointer to the created object + * of this class. + */ + static CNcdServerReportManager* NewL( CNcdProvider& aProvider ); + + /** + * @see CNcdServerReportManager::NewL + */ + static CNcdServerReportManager* NewLC( CNcdProvider& aProvider ); + + + /** + * Destructor + */ + virtual ~CNcdServerReportManager(); + + +public: // CCatalogsCommunicable + + /** + * @see CCatalogsCommunicable::ReceiveMessage + */ + virtual void ReceiveMessage( MCatalogsBaseMessage* aMessage, + TInt aFunctionNumber ); + + /** + * @see CCatalogsCommunicable::CounterPartLost + */ + virtual void CounterPartLost( const MCatalogsSession& aSession ); + + +protected: + + /** + * Constructor + * + * @param aProvider + */ + CNcdServerReportManager( CNcdProvider& aProvider ); + + /** + * ConstructL + */ + virtual void ConstructL(); + + + CNcdProvider& Provider(); + + CNcdReportManager& ReportManagerL( MCatalogsBaseMessage& aMessage ); + + + // Here are all the functions that are used when ReceiveMessageL is called and + // the functionality is delegated according to the given function number. + + void SetReportingMethodRequestL( MCatalogsBaseMessage& aMessage ); + void ReportingMethodRequestL( MCatalogsBaseMessage& aMessage ); + void SetReportingStyleRequestL( MCatalogsBaseMessage& aMessage ); + void ReportingStyleRequestL( MCatalogsBaseMessage& aMessage ); + void NodeSetAsInstalledRequestL( MCatalogsBaseMessage& aMessage ); + void ReleaseRequest( MCatalogsBaseMessage& aMessage ) const; + + void UpdateInstallReportAccessPointL( const TUid& aClientUid, + TInt aReportId, + CNcdNode& aNode, + CNcdNodeMetaData& aMetaData, + CNcdReportManager& aReportManager, + MCatalogsHttpSession& aHttpSession ); + + MCatalogsHttpSession& HttpSessionL( MCatalogsContext& aContext ); + + +private: + + // Prevent if not implemented + CNcdServerReportManager( const CNcdServerReportManager& aObject ); + CNcdServerReportManager& operator =( const CNcdServerReportManager& aObject ); + + +private: // data + + // The message is set when ReceiveMessage is called. The message + // is used in the CounterPartLost-function that informs the message + // if the session has been lost. + MCatalogsBaseMessage* iMessage; + + CNcdProvider& iProvider; + }; + + +#endif // NCD_SERVER_REPORT_IMPL_H