00001 /* 00002 * ============================================================================== 00003 * Name : SenFragment.h 00004 * Part of : Web Services Xml 00005 * Interface : 00006 * Description : Central place for debug-type macros 00007 * Version : 00008 * 00009 * Copyright © 2002-2005 Nokia. All rights reserved. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia. All rights are reserved. Copying, including 00013 * reproducing, storing, adapting or translating, any 00014 * or all of this material requires the prior written consent of 00015 * Nokia. This material also contains confidential 00016 * information which may not be disclosed to others without the 00017 * prior written consent of Nokia. 00018 * ============================================================================== 00019 */ 00020 00021 #ifndef SEN_FRAGMENT_H 00022 #define SEN_FRAGMENT_H 00023 00024 // INCLUDES 00025 #include <e32base.h> 00026 #include <s32strm.h> 00027 #include <xml\Attribute.h> 00028 #include <SenXmlReader.h> 00029 #include <SenElement.h> 00030 #include <MSenFragment.h> 00031 00032 // CLASS DECLARATION 00033 00039 class CSenFragment : public CBase, public MSenFragment 00040 { 00041 public: // New functions 00042 00048 virtual CSenElement& AsElement() = 0; 00049 00058 virtual CSenElement* ExtractElement() = 0; 00059 00065 virtual void SetReader(CSenXmlReader& aReader) = 0; 00066 00072 virtual CSenXmlReader* Reader() = 0; 00073 00079 virtual void ParseL(const TDesC8& aBuf) = 0; 00080 00087 virtual TInt BuildFrom(const TDesC8& aBuf) = 0; 00088 00096 virtual void DelegateParsingL(MSenFragment& aDelegate) = 0; 00097 00109 virtual void DelegateParsingL(const TDesC8& aNsUri, 00110 const TDesC8& aLocalName, 00111 const TDesC8& aQName, 00112 const RAttributeArray& aAttrs) = 0; 00113 00119 virtual void ParseWithL(CSenXmlReader& aReader) = 0; 00120 00125 virtual void SetOwner(MSenFragment& aFragment) = 0; 00126 00134 virtual void ResumeParsingFromL(const TDesC8& aNsUri, 00135 const TDesC8& aLocalName, 00136 const TDesC8& aQName) = 0; 00137 00142 virtual void SetAttributesL(const RAttributeArray& aAttrs) = 0; 00143 00152 virtual void WriteStartElementL(const TDesC8& aNsUri, 00153 const TDesC8& aLocalName, 00154 const TDesC8& aQName, 00155 const RAttributeArray& aAttrs) = 0; 00156 00164 virtual void WriteEndElementL(const TDesC8& aNsUri, 00165 const TDesC8& aLocalName, 00166 const TDesC8& aQName) = 0; 00167 00172 virtual const TDesC8& LocalName() const = 0; 00173 00178 virtual const TDesC8& NsUri() const = 0; 00179 00184 virtual const TDesC8& NsPrefix() const = 0; 00185 00190 virtual void WriteAsXMLToL(RWriteStream& aWriteStream) = 0; 00191 00197 virtual HBufC* AsXmlUnicodeL() = 0; 00198 00203 virtual HBufC8* AsXmlL() = 0; 00204 00209 virtual TPtrC8 Content() = 0; 00210 00221 virtual TBool ConsistsOfL(MSenFragment& aCandidate) = 0; 00222 }; 00223 00224 // SEN_FRAGMENT_H 00225 #endif 00226 00227 // End of File 00228 00229