org.apache.commons.codec.net

Class RFC1522Codec

Known Direct Subclasses:
BCodec, QCodec

(package private) abstract class RFC1522Codec
extends Object

Implements methods common to all codecs defined in RFC 1522.

RFC 1522 describes techniques to allow the encoding of non-ASCII text in various portions of a RFC 822 [2] message header, in a manner which is unlikely to confuse existing message handling software.

Version:
$Id: RFC1522Codec.java,v 1.2 2004/04/09 22:21:43 ggregory Exp $

Author:
Apache Software Foundation

Since:
1.3

See Also:
MIME (Multipurpose Internet Mail Extensions) Part Two: Message Header Extensions for Non-ASCII Text

Method Summary

protected String
decodeText(String text)
Applies an RFC 1522 compliant decoding scheme to the given string of text.
protected byte[]
doDecoding(byte[] bytes)
Decodes an array of bytes using the defined encoding scheme
protected byte[]
doEncoding(byte[] bytes)
Encodes an array of bytes using the defined encoding scheme
protected String
encodeText(String text, String charset)
Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.
protected String
getEncoding()
Returns the codec name (referred to as encoding in the RFC 1522)

Method Details

decodeText

protected String decodeText(String text)
            throws DecoderException,
                   UnsupportedEncodingException
Applies an RFC 1522 compliant decoding scheme to the given string of text. This method processes the "encoded-word" header common to all the RFC 1522 codecs and then invokes doEncoding(byte []) method of a concrete class to perform the specific deconding.

Parameters:
text - a string to decode

Throws:
DecoderException - thrown if there is an error conidition during the Decoding process.


doDecoding

protected byte[] doDecoding(byte[] bytes)
            throws DecoderException
Decodes an array of bytes using the defined encoding scheme

Parameters:
bytes - Data to be decoded

Returns:
a byte array that contains decoded data

Throws:
DecoderException - A decoder exception is thrown if a Decoder encounters a failure condition during the decode process.


doEncoding

protected byte[] doEncoding(byte[] bytes)
            throws EncoderException
Encodes an array of bytes using the defined encoding scheme

Parameters:
bytes - Data to be encoded

Returns:
A byte array containing the encoded data

Throws:
EncoderException - thrown if the Encoder encounters a failure condition during the encoding process.


encodeText

protected String encodeText(String text,
                            String charset)
            throws EncoderException,
                   UnsupportedEncodingException
Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset. This method constructs the "encoded-word" header common to all the RFC 1522 codecs and then invokes doEncoding(byte []) method of a concrete class to perform the specific enconding.

Parameters:
text - a string to encode
charset - a charset to be used

Returns:
RFC 1522 compliant "encoded-word"

Throws:
EncoderException - thrown if there is an error conidition during the Encoding process.

See Also:
JRE character encoding names


getEncoding

protected String getEncoding()
Returns the codec name (referred to as encoding in the RFC 1522)

Returns:
name of the codec


commons-codec version 1.3 - Copyright © 2002-2004 - Apache Software Foundation