Classes | |
class | TranscoderInternalFailureException |
class | TranscodingException |
class | UnknownEncodingException |
class | UnsupportedEncodingException |
class | XalanOutputStreamException |
Public Types | |
enum | { eDefaultBufferSize = 512u, eDefaultTranscoderBlockSize = 1024u } |
typedef XalanVector< XalanDOMChar > | BufferType |
typedef XalanVector< char > | TranscodeVectorType |
typedef XalanTranscodingServices::size_type | size_type |
typedef XalanTranscodingServices::UnicodeCharType | UnicodeCharType |
Public Member Functions | |
XalanOutputStream (MemoryManagerType &theManager, size_type theBufferSize=eDefaultBufferSize, size_type theTranscoderBlockSize=eDefaultTranscoderBlockSize, bool fThrowTranscodeException=true) | |
Constructor. More... | |
virtual | ~XalanOutputStream () |
MemoryManagerType & | getMemoryManager () |
virtual void | newline () |
Write the appropriate newline character(s) to the stream. More... | |
virtual const XalanDOMChar * | getNewlineString () const |
Get the string which is appropriate for inserting a line feed in the stream. More... | |
void | flushBuffer () |
Flush the stream's transcoding buffer, but do not request the implementation class to flush its buffer. More... | |
void | flush () |
Flush the stream's buffer. More... | |
void | write (char theChar) |
Write a character to the output stream. More... | |
void | write (XalanDOMChar theChar) |
Write a wide character to the output stream. More... | |
void | write (const char *theBuffer) |
Write a null-terminated string to the output file. More... | |
void | write (const XalanDOMChar *theBuffer) |
Write a null-terminated wide string to the output file. More... | |
void | write (const char *theBuffer, size_type theBufferLength) |
Write a specified number of characters to the output stream. More... | |
void | write (const XalanDOMChar *theBuffer, size_type theBufferLength) |
Write a specified number of characters to the output stream. More... | |
const XalanDOMString & | getOutputEncoding () const |
Get the output encoding for the stream. More... | |
void | setOutputEncoding (const XalanDOMString &theEncoding) |
Set the output encoding for the stream. More... | |
bool | canTranscodeTo (UnicodeCharType theChar) const |
Determine if a given value can be represented in the output encoding. More... | |
const XalanOutputTranscoder * | getTranscoder () const |
bool | getThrowTranscodeException () const |
Set the flag that indicates whether a transcoding error should throw an exception. More... | |
void | setThrowTranscodeException (bool flag) |
Set the flag that indicates whether a transcoding error should throw an exception. More... | |
void | setBufferSize (size_type theBufferSize) |
Set the size of the output buffer. More... | |
Static Public Member Functions | |
static const XalanDOMChar * | defaultNewlineString () |
Protected Member Functions | |
void | transcode (const XalanDOMChar *theBuffer, size_type theBufferLength, TranscodeVectorType &theDestination) |
Transcode a wide string. More... | |
virtual void | writeData (const char *theBuffer, size_type theBufferLength)=0 |
Write the data in the buffer. More... | |
virtual void | doFlush ()=0 |
Flush the stream. More... | |
Static Protected Attributes | |
static const XalanDOMChar | s_nlString [] |
static const XalanDOMChar | s_nlCRString [] |
static const XalanDOMString::size_type | s_nlStringLength |
static const XalanDOMString::size_type | s_nlCRStringLength |
typedef XalanVector<XalanDOMChar> XalanOutputStream::BufferType |
typedef XalanVector<char> XalanOutputStream::TranscodeVectorType |
|
explicit |
Constructor.
theBufferSize | the size of the transcoding buffer |
theTranscoderBlockSize | the size of the block used by the transcoder |
fThrowTranscodeException | If true, an error transcoding will result in an exception being thrown. |
|
virtual |
bool XalanOutputStream::canTranscodeTo | ( | UnicodeCharType | theChar) | const |
Determine if a given value can be represented in the output encoding.
|
static |
|
protectedpure virtual |
Flush the stream.
Implemented in XalanFileOutputStream, XalanStdOutputStream, XalanFStreamOutputStream, XalanTransformerOutputStream, and XalanNullOutputStream.
void XalanOutputStream::flush | ( | ) |
Flush the stream's buffer.
void XalanOutputStream::flushBuffer | ( | ) |
Flush the stream's transcoding buffer, but do not request the implementation class to flush its buffer.
MemoryManagerType& XalanOutputStream::getMemoryManager | ( | ) |
|
virtual |
Get the string which is appropriate for inserting a line feed in the stream.
const XalanDOMString& XalanOutputStream::getOutputEncoding | ( | ) | const |
Get the output encoding for the stream.
bool XalanOutputStream::getThrowTranscodeException | ( | ) | const |
Set the flag that indicates whether a transcoding error should throw an exception.
The default is to throw an exception. If this flag is false, and and an error occurs transcoding, then data will likely be lost.
const XalanOutputTranscoder* XalanOutputStream::getTranscoder | ( | ) | const |
|
virtual |
Write the appropriate newline character(s) to the stream.
void XalanOutputStream::setBufferSize | ( | size_type | theBufferSize) |
Set the size of the output buffer.
theBufferSize | The buffer size. |
void XalanOutputStream::setOutputEncoding | ( | const XalanDOMString & | theEncoding) |
Set the output encoding for the stream.
theEncoding | The encoding name |
void XalanOutputStream::setThrowTranscodeException | ( | bool | flag) |
Set the flag that indicates whether a transcoding error should throw an exception.
The default is to throw an exception. If this flag is false, and and an error occurs transcoding, then data will likely be lost.
the | new value of the flag. |
|
protected |
Transcode a wide string.
theBuffer | The string to transcode. |
theBufferLength | The length of the string. |
theDestination | The destination vector. |
void XalanOutputStream::write | ( | char | theChar) |
Write a character to the output stream.
The character
will not be transcoded.
theChar | the character to write |
void XalanOutputStream::write | ( | XalanDOMChar | theChar) |
Write a wide character to the output stream.
The character will be transcoded, if an output encoding is specified.
theChar | the character to write |
void XalanOutputStream::write | ( | const char * | theBuffer) |
Write a null-terminated string to the output file.
The character will not be transcoded. The caller is responsible for making sure the buffer is flushed before calling this member function.
theBuffer | character buffer to write |
void XalanOutputStream::write | ( | const XalanDOMChar * | theBuffer) |
Write a null-terminated wide string to the output file.
The string
will be transcoded, if an output encoding is specified.
theBuffer | character buffer to write |
void XalanOutputStream::write | ( | const char * | theBuffer, |
size_type | theBufferLength | ||
) |
Write a specified number of characters to the output stream.
The string will not be transcoded. The caller is responsible for making sure the buffer is flushed before calling this member function.
theBuffer | character buffer to write |
theBufferLength | number of characters to write |
void XalanOutputStream::write | ( | const XalanDOMChar * | theBuffer, |
size_type | theBufferLength | ||
) |
Write a specified number of characters to the output stream.
The string will be transcoded, if an output encoding is specified.
theBuffer | character buffer to write |
theBufferLength | number of characters to write |
|
protectedpure virtual |
Write the data in the buffer.
theBuffer | The data to write |
theBufferLength | The length of theBuffer. |
Implemented in XalanFileOutputStream, XalanStdOutputStream, XalanFStreamOutputStream, XalanTransformerOutputStream, and XalanNullOutputStream.
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
![]() |
Xalan-C++ XSLT Processor Version 1.10 |
|