Class BCodec
- All Implemented Interfaces:
- Decoder,- Encoder,- StringDecoder,- StringEncoder
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.
This class is immutable and thread-safe.
- Since:
- 1.3
- See Also:
- 
Field SummaryFields
- 
Constructor SummaryConstructorsConstructorDescriptionBCodec()Default constructor.Constructor which allows for the selection of a default CharsetConstructor which allows for the selection of a default CharsetBCodec(Charset charset, CodecPolicy decodingPolicy) Constructor which allows for the selection of a default Charset.
- 
Method SummaryModifier and TypeMethodDescriptionDecodes a Base64 object into its original form.Decodes a Base64 string into its original form.protected StringdecodeText(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.Encodes an object into its Base64 form using the default Charset.Encodes a string into its Base64 form using the default Charset.Encodes a string into its Base64 form using the specified Charset.Encodes a string into its Base64 form using the specified Charset.protected StringencodeText(String text, String charsetName) Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.protected StringencodeText(String text, Charset charset) Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.Gets the default Charset name used for string decoding and encoding.Gets the default Charset name used for string decoding and encoding.protected StringReturns the codec name (referred to as encoding in the RFC 1522).booleanReturns true if decoding behavior is strict.
- 
Field Details- 
SEPprotected static final char SEPSeparator.- See Also:
 
- 
POSTFIXPrefix.- See Also:
 
- 
PREFIXPostfix.- See Also:
 
- 
charsetThe default Charset used for string decoding and encoding.
 
- 
- 
Constructor Details- 
BCodecpublic BCodec()Default constructor.
- 
BCodecConstructor which allows for the selection of a default Charset- Parameters:
- charset- the default string Charset to use.
- Since:
- 1.7
- See Also:
 
- 
BCodecConstructor which allows for the selection of a default Charset.- Parameters:
- charset- the default string Charset to use.
- decodingPolicy- The decoding policy.
- Since:
- 1.15
- See Also:
 
- 
BCodecConstructor which allows for the selection of a default Charset- Parameters:
- charsetName- the default Charset to use.
- Throws:
- UnsupportedCharsetException- If the named Charset is unavailable
- Since:
- 1.7 throws UnsupportedCharsetException if the named Charset is unavailable
- See Also:
 
 
- 
- 
Method Details- 
decodeDecodes a Base64 object into its original form. Escaped characters are converted back to their original representation.- Specified by:
- decodein interface- Decoder
- Parameters:
- value- Base64 object to convert into its original form
- Returns:
- original object
- Throws:
- DecoderException- Thrown if the argument is not a- String. Thrown if a failure condition is encountered during the decode process.
 
- 
decodeDecodes a Base64 string into its original form. Escaped characters are converted back to their original representation.- Specified by:
- decodein interface- StringDecoder
- Parameters:
- value- Base64 string to convert into its original form
- Returns:
- original string
- Throws:
- DecoderException- A decoder exception is thrown if a failure condition is encountered during the decode process.
 
- 
doDecodingDecodes an array of bytes using the defined encoding scheme.- Parameters:
- bytes- Data to be decoded
- Returns:
- a byte array that contains decoded data
 
- 
doEncodingEncodes an array of bytes using the defined encoding scheme.- Parameters:
- bytes- Data to be encoded
- Returns:
- A byte array containing the encoded data
 
- 
encodeEncodes an object into its Base64 form using the default Charset. Unsafe characters are escaped.- Specified by:
- encodein interface- Encoder
- Parameters:
- value- object to convert to Base64 form
- Returns:
- Base64 object
- Throws:
- EncoderException- thrown if a failure condition is encountered during the encoding process.
 
- 
encodeEncodes a string into its Base64 form using the default Charset. Unsafe characters are escaped.- Specified by:
- encodein interface- StringEncoder
- Parameters:
- strSource- string to convert to Base64 form
- Returns:
- Base64 string
- Throws:
- EncoderException- thrown if a failure condition is encountered during the encoding process.
 
- 
encodeEncodes a string into its Base64 form using the specified Charset. Unsafe characters are escaped.- Parameters:
- strSource- string to convert to Base64 form
- sourceCharset- the Charset for- value
- Returns:
- Base64 string
- Throws:
- EncoderException- thrown if a failure condition is encountered during the encoding process.
- Since:
- 1.7
 
- 
encodeEncodes a string into its Base64 form using the specified Charset. Unsafe characters are escaped.- Parameters:
- strSource- string to convert to Base64 form
- sourceCharset- the Charset for- value
- Returns:
- Base64 string
- Throws:
- EncoderException- thrown if a failure condition is encountered during the encoding process.
 
- 
getEncodingReturns the codec name (referred to as encoding in the RFC 1522).- Returns:
- name of the codec.
 
- 
isStrictDecodingReturns true if decoding behavior is strict. Decoding will raise aDecoderExceptionif trailing bits are not part of a valid Base64 encoding.The default is false for lenient encoding. Decoding will compose trailing bits into 8-bit bytes and discard the remainder. - Returns:
- true if using strict decoding
- Since:
- 1.15
 
- 
decodeTextApplies 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 doDecoding(byte[])method of a concrete class to perform the specific decoding.- Parameters:
- text- a string to decode
- Returns:
- A new decoded String or nullif the input isnull.
- Throws:
- DecoderException- thrown if there is an error condition during the decoding process.
- UnsupportedEncodingException- thrown if charset specified in the "encoded-word" header is not supported
 
- 
encodeTextApplies 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 encoding.- 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 condition during the Encoding process.
- See Also:
 
- 
encodeTextApplies 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 encoding.- Parameters:
- text- a string to encode
- charsetName- the charset to use
- Returns:
- RFC 1522 compliant "encoded-word"
- Throws:
- EncoderException- thrown if there is an error condition during the Encoding process.
- UnsupportedCharsetException- if charset is not available
- See Also:
 
- 
getCharsetGets the default Charset name used for string decoding and encoding.- Returns:
- the default Charset name
- Since:
- 1.7
 
- 
getDefaultCharsetGets the default Charset name used for string decoding and encoding.- Returns:
- the default Charset name
 
 
-