CXmlEngSerializer Class Reference

class CXmlEngSerializer : public CBase

Provides the serializer interface and provides common functionality to all serializers. Implements default serialization (plain XML). Derived classes implement serialization to other formats.

TXmlEngSerializerType

Inherits from

Constructor & Destructor Documentation

CXmlEngSerializer()

CXmlEngSerializer()[private]

Default constructor

~CXmlEngSerializer()

~CXmlEngSerializer()[virtual]

Destructor

Member Functions Documentation

ConstructL()

voidConstructL()[private]

Second phase constructor.

NewL(TXmlEngSerializerType)

IMPORT_C CXmlEngSerializer *NewL(TXmlEngSerializerTypeaType = ESerializerDefault)[static]

Creates a serializer of the given type. Returns an instance of this class or a derived class.

The serializer

leave

  • One of the system-wide error codes

Parameters

TXmlEngSerializerType aType = ESerializerDefaultSerializer type

SerializeL(const TXmlEngNode)

IMPORT_C TIntSerializeL(const TXmlEngNodeaRoot =  TXmlEngNode())[virtual]

Serializes a DOM tree to the buffer, file or stream set previously with SetOutputL() or SetOutput().

The number of bytes written

leave

KXmlEngErrNoParameters No previous call to SetOutputL() or SetOutput().

leave

KErrNotSupported Unsupported serialization type

leave

KXmlEngErrWrongEncoding Encoding not understood

leave

KXmlEngErrWrongUseofAPI Document of root node is NULL

leave

KXmlEngErrNegativeOutputSize The data to be serialized has a negative size

leave

  • One of the system-wide error codes

Parameters

const TXmlEngNode aRoot =  TXmlEngNode()The root node of the DOM tree to be serialized

SerializeL(const TDesC &, const TXmlEngNode, const TXmlEngSerializationOptions &)

IMPORT_C TIntSerializeL(const TDesC &aFileName,
const TXmlEngNodeaRoot =  TXmlEngNode(),
const TXmlEngSerializationOptions &aOptions =  TXmlEngSerializationOptions()
)[virtual]

Serializes a DOM tree to file. Any filename previously set with SetOutputL(const TDesC&) is ignored.

The number of bytes written

leave

KXmlEngErrWrongEncoding Encoding not understood

leave

KXmlEngErrWrongUseofAPI Document of root node is NULL

leave

KXmlEngErrNegativeOutputSize The data to be serialized has a negative size

leave

  • One of the system-wide error codes

Parameters

const TDesC & aFileNameThe file name to serialize to
const TXmlEngNode aRoot =  TXmlEngNode()The root node of the DOM tree to be serialized
const TXmlEngSerializationOptions & aOptions =  TXmlEngSerializationOptions()The serialization options

SerializeL(RFs &, const TDesC &, const TXmlEngNode, const TXmlEngSerializationOptions &)

IMPORT_C TIntSerializeL(RFs &aRFs,
const TDesC &aFileName,
const TXmlEngNodeaRoot =  TXmlEngNode(),
const TXmlEngSerializationOptions &aOptions =  TXmlEngSerializationOptions()
)[virtual]

Serializes a DOM tree to file. Any filename previously set with SetOutputL(const TDesC&) is ignored.

The number of bytes written

leave

KXmlEngErrWrongEncoding Encoding not understood

leave

KXmlEngErrWrongUseofAPI Document of root node is NULL

leave

KXmlEngErrNegativeOutputSize The data to be serialized has a negative size

leave

  • One of the system-wide error codes

Parameters

RFs & aRFsFile Server session
const TDesC & aFileNameThe file name to serialize to
const TXmlEngNode aRoot =  TXmlEngNode()The root node of the DOM tree to be serialized
const TXmlEngSerializationOptions & aOptions =  TXmlEngSerializationOptions()The serialization options

SerializeL(RBuf8 &, const TXmlEngNode, const TXmlEngSerializationOptions &)

IMPORT_C TIntSerializeL(RBuf8 &aBuffer,
const TXmlEngNodeaRoot =  TXmlEngNode(),
const TXmlEngSerializationOptions &aOptions =  TXmlEngSerializationOptions()
)[virtual]

Serializes a DOM tree to buffer. Any buffer previously set with SetOutputL(RBuf8&) is ignored. Any existing data in aBuffer is destroyed. This function allocates memory for the buffer and the caller must close the buffer when finished.

The number of bytes written

leave

KXmlEngErrWrongEncoding Encoding not understood

leave

KXmlEngErrWrongUseofAPI Document of root node is NULL

leave

KXmlEngErrNegativeOutputSize The data to be serialized has a negative size

leave

  • One of the system-wide error codes

Parameters

RBuf8 & aBufferThe buffer to serialize to
const TXmlEngNode aRoot =  TXmlEngNode()The root node of DOM tree
const TXmlEngSerializationOptions & aOptions =  TXmlEngSerializationOptions()The serialization options

SetOutput(RBuf8 &)

IMPORT_C voidSetOutput(RBuf8 &aBuffer)

Sets the output type to buffer and saves the buffer for later serialization.

Parameters

RBuf8 & aBufferThe buffer to serialize

SetOutput(MXmlEngOutputStream &)

IMPORT_C voidSetOutput(MXmlEngOutputStream &aStream)

Sets the output type to stream and saves the stream for later serialization.

Parameters

MXmlEngOutputStream & aStream

SetOutputL(const TDesC &)

IMPORT_C voidSetOutputL(const TDesC &aFileName)

Sets the output type to file and saves the file name for later serialization. leave

  • One of the system-wide error codes

Parameters

const TDesC & aFileNameThe file name of the file to serialize

SetSerializationOptions(TXmlEngSerializationOptions &)

IMPORT_C voidSetSerializationOptions(TXmlEngSerializationOptions &aOptions)

Sets the serialization options

Parameters

TXmlEngSerializationOptions & aOptionsThe serialization options to set. Ownership is not transferred and aOptions must stay in scope for the lifetime of the serializer.

Member Data Documentation

RBuf8 * iBuffer

RBuf8 *iBuffer[private]

HBufC * iOutFileName

HBufC *iOutFileName[private]

MXmlEngOutputStream * iOutputStream

MXmlEngOutputStream *iOutputStream[private]

TXmlEngSerializationOptions * iSerializationOptions

TXmlEngSerializationOptions *iSerializationOptions[private]

TXmlEngSerializationOutput iSerializationOutput

TXmlEngSerializationOutput iSerializationOutput[private]