CharsetEncoder Class Reference

Inherits ObjectImpl.

List of all members.


Detailed Description

An engine to transform LogStrings into bytes for the specific character set.


Public Member Functions

virtual ~CharsetEncoder ()
 Destructor.
virtual log4cxx_status_t encode (const LogString &in, LogString::const_iterator &iter, ByteBuffer &out)=0
 Encodes as many characters from the input string as possible to the output buffer.
virtual void reset ()
 Resets any internal state.
virtual void flush (ByteBuffer &out)
 Flushes the encoder.

Static Public Member Functions

static CharsetEncoderPtr getDefaultEncoder ()
 Get encoder for default charset.
static CharsetEncoderPtr getEncoder (const LogString &charset)
 Get encoder for specified character set.
static CharsetEncoderPtr getUTF8Encoder ()
 Get encoder for UTF-8.
static void encode (CharsetEncoderPtr &enc, const LogString &src, LogString::const_iterator &iter, ByteBuffer &dst)
 Encodes a string replacing unmappable characters with escape sequences.
static bool isError (log4cxx_status_t stat)
 Determines if the return value from encode indicates an unconvertable character.

Protected Member Functions

 CharsetEncoder ()
 Protected constructor.


Constructor & Destructor Documentation

CharsetEncoder (  )  [protected]

Protected constructor.

virtual ~CharsetEncoder (  )  [virtual]

Destructor.


Member Function Documentation

static CharsetEncoderPtr getDefaultEncoder (  )  [static]

Get encoder for default charset.

static CharsetEncoderPtr getEncoder ( const LogString charset  )  [static]

Get encoder for specified character set.

Parameters:
charset the following values should be recognized: "US-ASCII", "ISO-8859-1", "UTF-8", "UTF-16BE", "UTF-16LE".
Returns:
encoder.
Exceptions:
IllegalArgumentException if encoding is not recognized.

static CharsetEncoderPtr getUTF8Encoder (  )  [static]

Get encoder for UTF-8.

static void encode ( CharsetEncoderPtr &  enc,
const LogString src,
LogString::const_iterator &  iter,
ByteBuffer dst 
) [static]

Encodes a string replacing unmappable characters with escape sequences.

virtual log4cxx_status_t encode ( const LogString in,
LogString::const_iterator &  iter,
ByteBuffer out 
) [pure virtual]

Encodes as many characters from the input string as possible to the output buffer.

Parameters:
in input string
iter position in string to start.
out output buffer.
Returns:
APR_SUCCESS unless a character can not be represented in the encoding.

virtual void reset (  )  [virtual]

Resets any internal state.

virtual void flush ( ByteBuffer out  )  [virtual]

Flushes the encoder.

static bool isError ( log4cxx_status_t  stat  )  [inline, static]

Determines if the return value from encode indicates an unconvertable character.


The documentation for this class was generated from the following file: