OSXMLEncodeBuffer Class Reference
The OSXMLEncodeBuffer class is derived from the OSXMLMessageBuffer base class. More...
#include <OSXMLEncodeBuffer.h>
Public Member Functions | |
EXTXMLMETHOD | OSXMLEncodeBuffer () |
Default constructor. | |
EXTXMLMETHOD | OSXMLEncodeBuffer (OSOCTET *pMsgBuf, size_t msgBufLen) |
This constructor allows a static message buffer to be specified to receive the encoded message. | |
int | addXMLHeader (const OSUTF8CHAR *version=OSUTF8("1.0"), const OSUTF8CHAR *encoding=OSUTF8(OSXMLHDRUTF8), OSBOOL newLine=TRUE) |
This method adds XML header text to the output buffer with the given version number and encoding attributes. | |
EXTXMLMETHOD int | addXMLText (const OSUTF8CHAR *text) |
This method adds encoded XML text to the encode buffer. | |
virtual size_t | getMsgLen () |
This method returns the length of a previously encoded XML message. | |
virtual EXTXMLMETHOD int | init () |
This method reinitializes the encode buffer to allow a new message to be encoded. | |
virtual OSBOOL | isA (int bufferType) |
This is a virtual method that must be overridden by derived classes to allow identification of the class. | |
void | nullTerminate () |
This method adds a null-terminator character ('') at the current buffer position. | |
EXTXMLMETHOD void | setFragment (OSBOOL value=TRUE) |
This method sets a flag indicating that the data is to be encoded as ax XML fragment instead of as a complete XML document (i.e. | |
virtual EXTXMLMETHOD long | write (const char *filename) |
This method writes the encoded message to the given file. | |
virtual EXTXMLMETHOD long | write (FILE *fp) |
This version of the write method writes to a file that is specified by a FILE pointer. | |
Protected Member Functions | |
OSXMLEncodeBuffer (OSRTContext *pContext) |
Detailed Description
The OSXMLEncodeBuffer class is derived from the OSXMLMessageBuffer base class.
It contains variables and methods specific to encoding XML messages. It is used to manage the buffer into which a message is to be encoded.
Definition at line 38 of file OSXMLEncodeBuffer.h.
Constructor & Destructor Documentation
EXTXMLMETHOD OSXMLEncodeBuffer::OSXMLEncodeBuffer | ( | OSOCTET * | pMsgBuf, | |
size_t | msgBufLen | |||
) |
This constructor allows a static message buffer to be specified to receive the encoded message.
- Parameters:
-
pMsgBuf A pointer to a fixed size message buffer to receive the encoded message. msgBufLen Size of the fixed-size message buffer.
Member Function Documentation
int OSXMLEncodeBuffer::addXMLHeader | ( | const OSUTF8CHAR * | version = OSUTF8("1.0") , |
|
const OSUTF8CHAR * | encoding = OSUTF8(OSXMLHDRUTF8) , |
|||
OSBOOL | newLine = TRUE | |||
) |
This method adds XML header text to the output buffer with the given version number and encoding attributes.
- Parameters:
-
version XML version (default is 1.0) encoding Character encoding (default is UTF-8) newLine Add newline char at end of header
- Returns:
- Zero if success or negative error code.
EXTXMLMETHOD int OSXMLEncodeBuffer::addXMLText | ( | const OSUTF8CHAR * | text | ) |
This method adds encoded XML text to the encode buffer.
It is assumed that the user has already processed the text to do character escaping, etc.. The text is copied directly to the buffer as-is.
- Parameters:
-
text Encoded XML text to be added to the buffer.
- Returns:
- Zero if success or negative error code.
virtual size_t OSXMLEncodeBuffer::getMsgLen | ( | ) | [inline, virtual] |
This method returns the length of a previously encoded XML message.
- Returns:
- Length of the XML message encapsulated within this buffer object.
Definition at line 90 of file OSXMLEncodeBuffer.h.
virtual EXTXMLMETHOD int OSXMLEncodeBuffer::init | ( | ) | [virtual] |
This method reinitializes the encode buffer to allow a new message to be encoded.
This makes it possible to reuse one message buffer object in a loop to encode multiple messages. After this method is called, any previously encoded message in the buffer will be overwritten on the next encode call.
virtual OSBOOL OSXMLEncodeBuffer::isA | ( | int | bufferType | ) | [inline, virtual] |
This is a virtual method that must be overridden by derived classes to allow identification of the class.
The base class variant is abstract. This method matches an enumerated identifier defined in the base class. One identifier is declared for each of the derived classes.
- Parameters:
-
bufferType Enumerated identifier specifying a derived class. This type is defined as a public access type in the OSRTMessageBufferIF base interface. Possible values include BEREncode, BERDecode, PEREncode, PERDecode, XMLEncode, and XMLDecode.
- Returns:
- Boolean result of the match operation. True if the
bufferType
argument isXMLEncode
. argument.
Definition at line 118 of file OSXMLEncodeBuffer.h.
EXTXMLMETHOD void OSXMLEncodeBuffer::setFragment | ( | OSBOOL | value = TRUE |
) |
This method sets a flag indicating that the data is to be encoded as ax XML fragment instead of as a complete XML document (i.e.
an XML header will not be added).
virtual EXTXMLMETHOD long OSXMLEncodeBuffer::write | ( | FILE * | fp | ) | [virtual] |
This version of the write method writes to a file that is specified by a FILE pointer.
- Parameters:
-
fp Pointer to FILE structure to which the encoded message will be written.
- Returns:
- Number of octets actually written. This value may be less than the actual message length if an error occurs.
virtual EXTXMLMETHOD long OSXMLEncodeBuffer::write | ( | const char * | filename | ) | [virtual] |
This method writes the encoded message to the given file.
- Parameters:
-
filename The name of file to which the encoded message will be written.
- Returns:
- Number of octets actually written. This value may be less than the actual message length if an error occurs.
The documentation for this class was generated from the following file: