williamr@2: // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@2: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef __MWAPPLUGINSP_H__ williamr@2: #define __MWAPPLUGINSP_H__ williamr@2: williamr@2: // System includes williamr@2: // williamr@2: #include williamr@2: williamr@2: // Forward class declarations williamr@2: // williamr@2: class CDocumentNode; williamr@2: class CNode; williamr@2: class CDTDNode; williamr@2: class CXmlElement; williamr@2: class CAttributeLookupTable; williamr@2: williamr@2: williamr@2: typedef TAny CWmlLibrary; williamr@2: williamr@2: williamr@2: //##ModelId=3B666FA402F4 williamr@2: class MWapPluginSP williamr@2: /** williamr@2: @publishedAll williamr@2: @deprecated williamr@2: */ williamr@2: { williamr@2: public: williamr@2: williamr@2: /** williamr@2: Intended Usage : Resets the content data pointers in the given document williamr@2: node and any dependents. This could also reset the data pointer in an williamr@2: associated data dictionary node and its client document nodes. williamr@2: @since 6.0 williamr@2: @param aDocumentNode The pointer to the document root node williamr@2: @param aDataPtr The pointer to the new data content williamr@2: @pre None williamr@2: @post The data pointers in the specified document node and williamr@2: dependents have been set to the new data williamr@2: */ williamr@2: //##ModelId=3B666FA40331 williamr@2: virtual void ResetDocumentNodeData(CDocumentNode* aDocumentNode, TAny* aDataPtr) const =0; williamr@2: williamr@2: /** williamr@2: Intended Usage : Gets hold of the actual node that holds the data for the williamr@2: specified document node. The document data may actually be shared amongst williamr@2: several document nodes and actually held in the data dictionary. williamr@2: @since 6.0 williamr@2: @param aDocumentNode The pointer to a document node williamr@2: @return A pointer to node that actual holds the data. williamr@2: */ williamr@2: //##ModelId=3B666FA4032C williamr@2: virtual CNode& DataStorageNode(const CDocumentNode* aDocumentNode) const =0; williamr@2: williamr@2: /** williamr@2: Intended Usage : Preload the specified DTD for validating recieved WML williamr@2: and WMLC decks. The document data handler needs to call this as soon as it williamr@2: knows what type of DTD the document is using. When the document completes, williamr@2: this DTD will be used to validate it before the 100% complete message is williamr@2: passed up to the engine observer. williamr@2: @since 6.0 williamr@2: @param aDocType The specified DTD type williamr@2: @param aDTDURL The URL of the DTD to be fetched williamr@2: @param aDocRootNode The root node of the document to be validated williamr@2: @return A pointer to the DTD if the specified DTD is available, williamr@2: otherwise NULL. williamr@2: @todo Add the pre and post conditions. williamr@2: @pre None williamr@2: @post Unspecified williamr@2: */ williamr@2: //##ModelId=3B666FA40328 williamr@2: virtual const CDTDNode* PrepareDTDL(const TDesC& aDocType, williamr@2: const TDesC& aDTDURL, williamr@2: const CDocumentNode* aDocRootNode) =0; williamr@2: williamr@2: /** williamr@2: Intended Usage : Provide a CWmlLibrary object. This object is ready to williamr@2: process data and build a document tree to the given root node. williamr@2: @since 6.0 williamr@2: @warning The CWmlLibrary object is owned by the WAP Engine. williamr@2: @param aDocRootNode A pointer to the root node where the document williamr@2: tree is to be built. williamr@2: @return A pointer the CWmlLibrary object. williamr@2: */ williamr@2: //##ModelId=3B666FA40326 williamr@2: virtual CWmlLibrary* WmlLibL(CXmlElement* aDocRootNode) =0; williamr@2: williamr@2: /** williamr@2: Intended Usage : Gets the Attribute Look Up Table. williamr@2: @since 6.0 williamr@2: @return A reference to the Attribute Look Up Table. williamr@2: */ williamr@2: //##ModelId=3B666FA4031C williamr@2: virtual CAttributeLookupTable& AttributeLUT() =0; williamr@2: williamr@2: }; williamr@2: williamr@2: #endif // __MWAPPLUGINSP_H__