ImagePrint/ImagePrintEngine/DeviceProtocols/upnpprotocolfw2/inc/cprintercontrolpoint.h
--- a/ImagePrint/ImagePrintEngine/DeviceProtocols/upnpprotocolfw2/inc/cprintercontrolpoint.h Tue May 25 12:42:41 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,289 +0,0 @@
-/*
-* Copyright (c) 2002-2007 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: Declares CPrinterControlPoint class
-*
-*/
-
-
-#ifndef CPRINTERCONTROLPOINT_H
-#define CPRINTERCONTROLPOINT_H
-
-#include <upnpcontrolpoint.h>
-
-#include "mpcpobserver.h"
-#include "cjobstateevents.h"
-#include "upconsts.h"
-
-class CUpnpDevice;
-class CUpnpAction;
-class CUpnpHttpMessage;
-
-enum TPrintService
-{
- EServiceNone = 0,
- EPrintBasic,
- EPrintEnhanced
-};
-
-// CLASS DECLARATION
-
-/**
-* @brief Declares the CPrinterControlPoint
-*
-* Prior using the CPrinterControlPoint class, client application has to create
-* the network connection for the selected IAP. If connection is not up and
-* running, the CDispatcherEngine class construction will fail.
-*
-* The Printer Control Point starts XHTML folder sharing and printer search when it's constructed.
-*
-* See UPnP Print Design document for instuctions.
-*
-* @since Series60 2.0
-*/
-class CPrinterControlPoint : public CUpnpControlPoint//, public MUPnPSecurityObserver
- {
- public: // Constructors and destructors
-
- /**
- * Create a CPrinterControlPoint object using two phase construction.
- * @param aPCPObserver
- * @param aFriendlyName Specifies the friendly name of the control point.
- * @param aIapId IAP to use.
- * @result pointer to created CPrinterControlPoint object.
- */
- IMPORT_C static CPrinterControlPoint* NewL( MPCPObserver& aPCPObserver);
-
- /**
- * Destructor.
- */
- IMPORT_C ~CPrinterControlPoint();
-
- public: // From MUPnPSecurityObserver
- /**
- * Function informs when file sharing is ready
- * @since Series 60 3.0
- */
-
- public:
-
- /**
- * Create a print job to the printer. The XHTML-print files must be in folder defined by KUPnPDataPath.
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- * @param aPrintFile XHTML-Print file's name WITHOUT path (NOTE: path for files defined in KUPnPDataPath)
- * @param aCopies Number of copies of the document to be printed for the job.
- * @param aSides Specifies how pages are to be imposed upon the sides of a selected medium for the job.
- * @param aNumberUp Indicates the number of pages to impose upon a single side.
- * @param aOrientationRequest Indicates the desired orientation for printed pages.
- * @param aMediaSize Identifies the medium size name and dimensions.
- * @param aMediaType Identtifies the medium type.
- * @param aPrintQuality Specifies the print quality requested for the job.
- * @param aPrintBasic Specifies the service to use for printing.
- */
- IMPORT_C TInt CreateJobL( CUpnpDevice* aPrinter,
- const TDesC8& aPrintFile,
- const TDesC8& aUserName,
- const TDesC8& aCopies,
- const TDesC8& aSides,
- const TDesC8& aNumberUp,
- const TDesC8& aOrientationRequest,
- const TDesC8& aMediaSize,
- const TDesC8& aMediaType,
- const TDesC8& aPrintQuality,
- TBool aPrintBasic = EFalse );
-
- /**
- * Cancel a specified print job. Leaves if printer is invalid.
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- * @param aJobId Print job ID of cancelled job.
- */
- IMPORT_C void CancelJobL( CUpnpDevice* aPrinter, const TDesC8& aJobId );
-
- /**
- * Cancel a specified print job. Leaves if printer is invalid.
- * @since Series60 3.0
- * @param aSessionId Print job ID of cancelled job.
- */
- IMPORT_C void CancelJobL( const TInt aSessionId );
-
- /**
- * This function is used to query printer attributes.
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- */
- IMPORT_C void GetPrinterAttributesL( CUpnpDevice* aPrinter );
-
- /**
- * This function is used to query job attributes of specified print job.
- * @since Series60 3.
- * @param aPrinter Printer to be used.
- * @param aJobId Print job ID.
- */
- IMPORT_C void GetJobAttributesL( CUpnpDevice* aPrinter, const TDesC8& aJobId );
-
- /**
- * This function is used to query margin information from printers supporting PrintEnhanced:1.
- * If printer supports only PrintBasic:1, a function leaves with KErrNotSupported.
- *
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- * @param aMediaSize
- * @param aMediaType
- */
- IMPORT_C void GetMarginsL( CUpnpDevice* aPrinter, const TDesC8& aMediaSize, const TDesC8& aMediaType );
-
- /**
- * Allows a client to determine a valid combinations of MediaType and MediaSize that the printer supports.
- * Action is supported only in PrintEnhanced:1.
- * If printer supports only PrintBasic:1, a function leaves with KErrNotSupported.
- *
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- * @param aMediaSize
- * @param aMediaType
- */
- IMPORT_C void GetMediaListL( CUpnpDevice* aPrinter, const TDesC8& aMediaSize, const TDesC8& aMediaType );
-
-
- /**
- * Informs the control point that printing has finished and the event unsubscription can be done.
- * @since Series60 3.
- * @param aPrinter Printer to be used.
- * @param aJobId Print job ID.
- */
- IMPORT_C void PrintingFinishedL( CUpnpDevice* aPrinter );
-
-
- // From CControlPoint
-
- /**
- * StateUpdatedL
- * @since Series60 3.0
- * @param aService the service state updated
- */
- IMPORT_C void StateUpdatedL( CUpnpService* aService );
-
- /**
- * DeviceDiscoveredL
- * @since Series60 3.0
- * @param aDevice the device found
- */
- IMPORT_C void DeviceDiscoveredL( CUpnpDevice* aDevice );
-
- /**
- * DeviceDisappearedL
- * @since Series60 3.0
- * @param aDevice
- */
- IMPORT_C void DeviceDisappearedL( CUpnpDevice* aDevice );
-
- /**
- * ActionResponseReceivedL
- * @since Series60 3.0
- * @param aAction the action received
- */
- IMPORT_C void ActionResponseReceivedL( CUpnpAction* aAction );
-
- /**
- * HttpResponseReceivedL
- * @since Series60 3.0
- * @param aMessage the HTTP response message
- */
- IMPORT_C void HttpResponseReceivedL( CUpnpHttpMessage* aMessage );
-
- private:
-
- /**
- * First phase of the two phased construction.
- * @param aPCPObserver
- * @param aFriendlyName Specifies the friendly name of the control point.
- */
- CPrinterControlPoint( MPCPObserver& aPCPOBserver );
-
- /**
- * Runs base classes ConstructL, starts XHTML folder sharing and starts
- * printer search.
- *
- */
- void ConstructL( );
-
- /**
- * Get service from specified device.
- * @since Series60 3.0
- * @param aPrinter Printer to be used.
- * @param aService Service type
- * @return Pointer to the resolved service
- */
- CUpnpService* GetServiceFromDevice( CUpnpDevice* aPrinter, TPrintService& aService );
-
- /*
- * Function for parsing remote host address from Data Sink URL
- * @param aDataSinkUrl
- * @return Address
- */
- const TPtrC8 DataSinkUrlAddress( const TDesC8& aDataSinkUrl );
-
- /*
- * Function for parsing path from Data Sink URL
- * @param aDataSinkUrl
- * @return Path
- */
- const TPtrC8 DataSinkUrlPath( const TDesC8& aDataSinkUrl );
-
- /*
- * Function for parsing port from Data Sink URL
- * @param aDataSinkUrl
- * @return Port number
- */
- TInt DataSinkUrlPort( const TDesC8& aDataSinkUrl );
-
- /*
- * Sends the CancelJob action to the printer
- * @param aService Print service, from where the action will be created
- * @param aJobId Id of the job to be cancelled
- */
- void DoCancelJobL(CUpnpService& aService, const TDesC8& aJobId);
-
-
- /*
- * Function for removing tags (if exists) from actions received from UPnP
- * @param aString Descriptor to remove tags
- * @return Pointer to the descriptor without tags
- */
- TPtrC8 RemoveTags( const TDesC8& aString);
-
- /*
- * Function for writing the log of job state events
- * @param aService
- */
- void JobStateLog(CUpnpService* aService);
-
-
- private: // Data
-
- //@var iPCPObserver PCP observer for callbacks, not owned
- MPCPObserver& iPCPObserver;
-
- //@var iCancelledJobSIDs Contains session ids for jobs to be cancelled
- RArray<TInt> iCancelledJobSIDs;
-
- //@var iJobStateEvents Job state event maintainer
- CJobStateEvents* iJobStateEvents;
-
-};
-
-#endif // CPRINTERCONTROLPOINT_H
-
-// End Of File
\ No newline at end of file