williamr@4: // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@4: // All rights reserved. williamr@4: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@4: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: // williamr@4: // Initial Contributors: williamr@4: // Nokia Corporation - initial contribution. williamr@4: // williamr@4: // Contributors: williamr@4: // williamr@4: // Description: williamr@4: // Content handler for binary data williamr@4: // williamr@4: williamr@4: williamr@4: williamr@4: /** williamr@4: @file williamr@4: @publishedAll williamr@4: @released williamr@4: */ williamr@4: #ifndef XMLENGEXTENDEDCONTENTHANDLER_H williamr@4: #define XMLENGEXTENDEDCONTENTHANDLER_H williamr@4: williamr@4: #include <xml/dom/xmlengdatacontainer.h> williamr@4: williamr@4: /** williamr@4: This class extends MContentHandler with functions for binary data handling. williamr@4: Used by clients during XOP deserialization. williamr@4: williamr@4: @see Xml::MContentHandler williamr@4: */ williamr@4: class MXmlEngExtendedHandler williamr@4: { williamr@4: public: williamr@4: /** The uid identifying this extension interface. */ williamr@4: enum TExtInterfaceUid {EExtInterfaceUid = 0x101F9794}; williamr@4: williamr@4: /** williamr@4: Called when binary content has been parsed. williamr@4: williamr@4: @param aBytes The raw binary data of the element williamr@4: @param aCid The CID of the binary data williamr@4: @param aErrorcode The parsing error code. If this is not KErrNone, special williamr@4: action may be required. williamr@4: @leave - One of the system-wide error codes williamr@4: */ williamr@4: virtual void OnBinaryContentL(const TDesC8& aBytes, williamr@4: const TDesC8& aCid, williamr@4: TInt aErrorCode) = 0; williamr@4: williamr@4: /** williamr@4: Called when a reference to external data has been parsed. williamr@4: @see CXmlEngDeserializer::ExternalData() williamr@4: williamr@4: Any class derived from TXmlEngDataContainer may be passed to this function. williamr@4: @see TXmlEngBinaryContainer williamr@4: @see TXmlEngChunkContainer williamr@4: @see TXmlEngFileContainer williamr@4: williamr@4: @param aContainer The container that holds the external binary data. williamr@4: @param aErrorcode The parsing error code. If this is not KErrNone, special williamr@4: action may be required. williamr@4: @leave - One of the system-wide error codes williamr@4: */ williamr@4: virtual void OnDataContainerL( const TXmlEngDataContainer& aContainer, williamr@4: TInt aErrorCode) = 0; williamr@4: }; williamr@4: williamr@4: #endif //XMLENGINE_EXTENDEDCONTENTHANDLER_H williamr@4: