diff -r 77cb48a03620 -r d9861ae9169c xdmprotocols/XdmXmlParser/inc/XdmXmlParser.h --- a/xdmprotocols/XdmXmlParser/inc/XdmXmlParser.h Thu Jul 01 14:09:06 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,175 +0,0 @@ -/* -* Copyright (c) 2005 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: CXdmXmlParser -* -*/ - - - - -#ifndef __XDMXMLPARSER__ -#define __XDMXMLPARSER__ - -#include - -//CONSTANTS -_LIT( KParserLogFile, "XcapXml" ); -_LIT8( KDefaultMimeType, "text/xml" ); - -using namespace Xml; - -//FORWARD DECLARATION -class CXdmDocument; -class CXdmLogWriter; -class CXmlFormatter; -class CXdmDocumentNode; -class MXdmNodeInterface; -class CXdmXmlContentHandler; -class MXdmNamespaceContainer; - -// CLASS DECLARATION -class CXdmXmlParser: public CBase - { - public: // Constructors and destructor - - /** - * Symbian OS Constructor - * @return CXdmXmlParser New parser intance - */ - IMPORT_C static CXdmXmlParser* NewL(); - - /** - * Parse an XML document - * @param CXdmDocument Document instance - * @param TDesC8& The raw XML data - * @return void - */ - IMPORT_C void ParseDocumentL( CXdmDocument* aDocument, - const TDesC8& aXmlDocument ); - - /** - * Parse an XML document - * @param CXdmDocument Document instance - * @param TDesC8& The raw XML data - * @param Pointer to the document/fragment root - * @return void - */ - IMPORT_C void ParseDocumentL( CXdmDocument* aDocument, - const TDesC8& aXmlDocument, - CXdmDocumentNode* aDocumentSubset ); - - /** - * Parse an XML document - * @param TDesC8& The raw XML data - * @param Pointer to the document/fragment root - * @return void - */ - IMPORT_C void ParseDocumentL( const TDesC8& aXmlDocument, - CXdmDocumentNode* aDocumentRoot ); - - /** - * Format a document model into textual form - * @param TBool Indicates whether the document is whole - * @param CXdmDocument The document instance - * @param CXdmDocumentNode Pointer to the document/fragment root - * @return HBufC8* The document in textual form - */ - IMPORT_C HBufC8* FormatToXmlLC( TBool aIsWholeDocument, - const CXdmDocument* aDocument, - const CXdmDocumentNode* aRootNode ); - - /** - * Format a document model into textual form and append the fragment - * in the first parameter to the correct place inside the document. - * @param TDesC8& The fragment to append - * @param CXdmDocument The document instance - * @param CXdmDocumentNode Pointer to the fragment - * @return HBufC8* The document in textual form - */ - IMPORT_C HBufC8* FormatToXmlLC( const TDesC8& aXmlFragment, - const CXdmDocument* aDocument, - const CXdmDocumentNode* aTargetNode ); - - /** - * Destructor. - */ - IMPORT_C virtual ~CXdmXmlParser(); - - public: - - #ifdef _DEBUG - - /** - * Write to log file - * @param TRefByValue The log line - * @return void - */ - void WriteToLog( TRefByValue aFmt,... ) const; - - #endif - - public: - - /** - * Stop the parser - * @return void - */ - void FinishParsingL(); - - private: - - /** - * C++ constructor is private - * @return CXdmXmlParser - */ - CXdmXmlParser(); - - /** - * Second-phase constructor - * @return void - */ - void ConstructL(); - - #ifdef _DEBUG - - /** - * Return the current system time - * @return TInt Current system time in integer format - */ - static TInt TimeL(); - - /** - * Write the formatted document to the log folder - * @param HBufC8* Pointer to the data segment - * @return void - */ - void DumpDocumentL( HBufC8* aDocData ); - - #endif - - private: //Data - - TInt iDumpIndex; - TPtr8 iXmlDocument; - CParser* iXmlParser; - CXdmLogWriter* iLogWriter; - CXmlFormatter* iXmlFormatter; - TRequestStatus* iClientStatus; - CXdmXmlContentHandler* iContentHandler; - }; - -#endif //__XDMXMLPARSER__ - - -// End of File