diff -r 000000000000 -r ba25891c3a9e ncdengine/provider/client/inc/ncdserverreportmanagerproxy.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ncdengine/provider/client/inc/ncdserverreportmanagerproxy.h Thu Dec 17 08:51:10 2009 +0200 @@ -0,0 +1,152 @@ +/* +* 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 MNcdNode interface +* +*/ + + +#ifndef NCD_SERVER_REPORT_MANAGER_PROXY_H +#define NCD_SERVER_REPORT_MANAGER_PROXY_H + +#include "ncdinterfacebaseproxy.h" +#include "ncdserverreportmanager.h" + +class MCatalogsClientServer; +class CNcdProviderProxy; +class CNcdNodeProxy; + + +/** + * CNcdServerReportManagerProxy provides proxy side functionality + * for MNcdServerReportManager interface. + * + * @see MNcdServerReportManager + * + * + */ +class CNcdServerReportManagerProxy : public CNcdInterfaceBaseProxy, + public MNcdServerReportManager + { + +public: + + /** + * @see CNcdServerReportManagerProxy::CNcdServerReportManagerProxy + * @return CNcdServerReportManagerProxy* Newly created object. + */ + static CNcdServerReportManagerProxy* NewL( MCatalogsClientServer& aSession, + TInt aHandle, + CNcdProviderProxy& aProvider ); + + /** + * @see CNcdServerReportManagerProxy::NewL + */ + static CNcdServerReportManagerProxy* NewLC( MCatalogsClientServer& aSession, + TInt aHandle, + CNcdProviderProxy& aProvider ); + + + /** + * Destructor + */ + virtual ~CNcdServerReportManagerProxy(); + + + /** + * This is meant only for the external installation reporting. + * + * @see CNcdNodeInstallProxy::SetAsInstalledL + * + * @param aNode Node that has been tried to install. + * @param aErroCode Error code describes the success of the install. + */ + void NodeSetAsInstalledL( CNcdNodeProxy& aNode, TInt aErrorCode ); + + +public: // MNcdServerReportManager + + /** + * @see MNcdServerReportManager::SetReportingMethodL + */ + virtual void SetReportingMethodL( const TReportingMethod& aMethod ); + + + /** + * @see MNcdServerReportManager::ReportingMethodL + */ + virtual TReportingMethod ReportingMethodL() const; + + + /** + * @see MNcdServerReportManager::SetReportingStyleL + */ + virtual void SetReportingStyleL( const TReportingStyle& aStyle ); + + + /** + * @see MNcdServerReportManager::ReportingStyleL + */ + virtual TReportingStyle ReportingStyleL() const; + + + /** + * @see MNcdServerReportManager::SendL + */ + virtual MNcdServerReportOperation* SendL( MNcdServerReportOperationObserver& aObserver ); + + +protected: + + // Prevent these if not implemented + CNcdServerReportManagerProxy( const CNcdServerReportManagerProxy& aObject ); + CNcdServerReportManagerProxy& operator =( const CNcdServerReportManagerProxy& aObject ); + + + /** + * Constructor + * + * @param aSession The session between the client proxy and the + * corresponding server object. + * @param aHandle The handle which identifies the server object + * that this proxy uses. + * @param aProvider Provider that owns this class object. + * + * + */ + CNcdServerReportManagerProxy( MCatalogsClientServer& aSession, + TInt aHandle, + CNcdProviderProxy& aProvider ); + + /** + * ConstructL + * + * + */ + virtual void ConstructL(); + + + /** + * @return CNcdProviderProxy Provider that owns this class object. + */ + CNcdProviderProxy& Provider(); + + +private: // data + + CNcdProviderProxy& iProvider; + + }; + +#endif // NCD_SERVER_REPORT_MANAGER_PROXY_H +