MSenFragment Class Reference
This abstract class defines the interface for XML fragment classes. The subclasses are used to extract certain part of XML document into a separate XML subtree, called fragment. This M-class is typically used when a safe reference to some actual implementation is required. Fragment classes are content handlers for SAX callback events received from
CSenXmlReader class. They typically inherit
MSenContentHandlerClient to achive this. SenXML.dll
- Since
- Series60 3.0
Public Member Functions |
---|
CSenElement & | AsElement() |
HBufC8 * | AsXmlL() |
HBufC * | AsXmlUnicodeL() |
TInt
| BuildFrom(const TDesC8 &) |
TBool
| ConsistsOfL(MSenFragment &) |
void | DelegateParsingL(MSenFragment &) |
void | DelegateParsingL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &) |
CSenElement * | ExtractElement() |
const TDesC8 & | LocalName() |
const TDesC8 & | NsPrefix() |
const TDesC8 & | NsUri() |
void | ParseL(const TDesC8 &) |
void | ParseWithL(CSenXmlReader &) |
CSenXmlReader * | Reader() |
void | ResumeParsingFromL(const TDesC8 &, const TDesC8 &, const TDesC8 &) |
void | SetAttributesL(const RAttributeArray &) |
void | SetOwner(MSenFragment &) |
void | SetReader(CSenXmlReader &) |
void | WriteAsXMLToL(RWriteStream &) |
void | WriteEndElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &) |
void | WriteStartElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &) |
Member Functions Documentation
AsElement()
Getting the fragment as an XML element. This method will panic if element has not been initialized (EFragmentElementNotInitialized).
- Since
- Series60 3.0
AsXmlL()
HBufC8 * | AsXmlL | ( | ) | [pure virtual] |
Gets the fragment as a UTF-8 form XML.
- Since
- Series60 3.0
AsXmlUnicodeL()
HBufC * | AsXmlUnicodeL | ( | ) | [pure virtual] |
Gets the fragment as Unicode (UCS-2) form XML.
- Since
- Series60 3.0
BuildFrom(const TDesC8 &)
Same as
ParseL() except that it doesn't leave in case of an error. Instead errors are trapped and error is returned.
SetReader() must be called before this method can be used.
- Since
- Series60 3.0
ConsistsOfL(MSenFragment &)
Checks if fragment matches to another fragment by its content and child elements. Fragment can contain more data than the given candidate.
- Since
- Series60 3.0
Parameters
MSenFragment & aCandidate | The pattern to be matched. Must contain same or less data for match to come true. |
DelegateParsingL(MSenFragment &)
Let the delegate
MSenFragment handle the following SAX events. This fragment is made the owner of the delegate and the delegate is expected to make this
MSenFragment the receiver of SAX events once it has seen the end element for itself. This is achieved by
ResumeParsingFromL(), which delegate will call from his parent. The currently set XML reader is used to parse XML for the delagate, too.
- Since
- Series60 3.0
DelegateParsingL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &)
Creates a new delegate (fragment) using the given arguments and lets it handle the SAX events according to given localname (or qualifiedname) and possible namespace. This instance is made the owner of the delegate and the delegate is expected to resume parsing to this
MSenFragment after it has finished handling the dedicated part of XML document in question. at the EndElementL(). The currently set XML reader is used to parse XML for the delagate, too.
- Since
- Series60 3.0
ExtractElement()
Method extracts the root element (whole data) from this fragment. After calling this method, the fragment does not have any internal element. Method is often called before fragment is destroyed, in order to fetch its content and transfer ownership to that content to some other object.
- Since
- Series60 3.0
LocalName()
const TDesC8 & | LocalName | ( | ) | const [pure virtual] |
Getter for fragment XML local name.
- Since
- Series60 3.0
NsPrefix()
const TDesC8 & | NsPrefix | ( | ) | const [pure virtual] |
Getter for XML namespace prefix of this fragment.
- Since
- Series60 3.0
NsUri()
const TDesC8 & | NsUri | ( | ) | const [pure virtual] |
Getter for fragment XML namespace URI.
- Since
- Series60 3.0
ParseL(const TDesC8 &)
void | ParseL | ( | const TDesC8 & | aBuf | ) | [pure virtual] |
Method to invoke parsing of a UTF-8 form XML data. Note that
SetReader() must be called before this method can be used. Parsing is dependent of preset localname or qualifiedname and possible namespace for this fragment.
- Since
- Series60 3.0
ParseWithL(CSenXmlReader &)
Method sets the reader for this fragment and sets this to be the content handler for the SAX events according to preset localname (or qualifiedname) and possible namespace.
- Since
- Series60 3.0
Reader()
Gets the XML reader which this fragment uses for parsing.
- Since
- Series60 3.0
ResumeParsingFromL(const TDesC8 &, const TDesC8 &, const TDesC8 &)
void | ResumeParsingFromL | ( | const TDesC8 & | aNsUri, |
| const TDesC8 & | aLocalName, |
| const TDesC8 & | aQName |
| ) | [pure virtual] |
Resumes the parsing. Usually called by some delegate fragment which was parsing itself through
DelegateParsingL() call from this instance.
- Since
- Series60 3.0
Parameters
const TDesC8 & aNsUri | The namespace URI of the current element |
const TDesC8 & aLocalName | The local name of the current element |
const TDesC8 & aQName | The qualified name of the current element |
SetAttributesL(const RAttributeArray &)
Sets the attributes for the fragment.
- Since
- Series60 3.0
SetOwner(MSenFragment &)
Sets a new owner (parent) for this fragment.
- Since
- Series60 3.0
SetReader(CSenXmlReader &)
Sets the XML reader to be used for parsing for the fragment.
- Since
- Series60 3.0
WriteAsXMLToL(RWriteStream &)
Fragment writes itself to a write stream using UTF-8 encoding.
- Since
- Series60 3.0
WriteEndElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &)
void | WriteEndElementL | ( | const TDesC8 & | aNsUri, |
| const TDesC8 & | aLocalName, |
| const TDesC8 & | aQName |
| ) | [pure virtual] |
Writes the end element tag to the content stream. Subclasses typically override this
- Since
- Series60 3.0
Parameters
const TDesC8 & aNsUri | The namespace URI of the current element |
const TDesC8 & aLocalName | The local name of the current element |
const TDesC8 & aQName | The qualified name of the current element |
WriteStartElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &)
Writes the start element tag to the content stream. Subclasses typically override this.
- Since
- Series60 3.0
Parameters
const TDesC8 & aNsUri | The namespace URI of the current element |
const TDesC8 & aLocalName | The local name of the current element |
const TDesC8 & aQName | The qualified name of the current element |
const RAttributeArray & aAttrs | |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.