diff -r 666f914201fb -r 2fe1408b6811 epoc32/include/xml/parser.h --- a/epoc32/include/xml/parser.h Tue Nov 24 13:55:44 2009 +0000 +++ b/epoc32/include/xml/parser.h Tue Mar 16 16:12:26 2010 +0000 @@ -1,1 +1,97 @@ -parser.h +// Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members +// which accompanies this distribution, and is available +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +#ifndef __PARSER_H__ +#define __PARSER_H__ + +/** +@file + +XML Framework CParser API header file. + +@publishedAll +@released +*/ + +#include // needed for the typedef +#include // needed for the typedef + +class RFs; +class RFile; + +namespace Xml +{ + +class MContentHandler; +class RStringDictionaryCollection; +class TParserImpl; +class CMatchData; + +/** +If you need to parse xml this is the class you need to use. + +Default plain-text XML parser plug-in supports following character set encodings: + +ISO_8859_1 +US_ASCII +UTF_8 +UTF_16 +UTF_16BE +UTF_16LE + +@publishedAll +@released +*/ +class CParser : public CBase + { +public: + static IMPORT_C CParser* NewL(const TDesC8& aParserMimeType, MContentHandler& aCallback); + static IMPORT_C CParser* NewLC(const TDesC8& aParserMimeType, MContentHandler& aCallback); + + static IMPORT_C CParser* NewL(const CMatchData& aCriteria, MContentHandler& aCallback); + static IMPORT_C CParser* NewLC(const CMatchData& aCriteria, MContentHandler& aCallback); + + virtual ~CParser(); + + IMPORT_C void ParseBeginL(); + IMPORT_C void ParseBeginL(const TDesC8& aDocumentMimeType); + IMPORT_C void ParseBeginL(const CMatchData& aCriteria); + IMPORT_C void ParseL(const TDesC8& aFragment); + IMPORT_C void ParseEndL(); + + IMPORT_C void SetProcessorChainL(const RContentProcessorUids& aPlugins); + + IMPORT_C TInt EnableFeature(TInt aParserFeature); + IMPORT_C TInt DisableFeature(TInt aParserFeature); + IMPORT_C TBool IsFeatureEnabled(TInt aParserFeature) const; + + IMPORT_C void AddPreloadedDictionaryL(const TDesC8& aPublicId); + + IMPORT_C RStringPool& StringPool(); + IMPORT_C RStringDictionaryCollection& StringDictionaryCollection(); + +private: + CParser(); + void ConstructL(const TDesC8& aParserMimeType, MContentHandler& aCallback); + void ConstructL(const CMatchData& aMatchData, MContentHandler& aCallback); + TParserImpl* iImpl; + }; + +IMPORT_C void ParseL(CParser& aParser, const TDesC8& aDocument); +IMPORT_C void ParseL(CParser& aParser, RFs& aFs, const TDesC& aFilename); +IMPORT_C void ParseL(CParser& aParser, RFile& aFile); +} + +#endif //__PARSER_H__