public class BCodec extends java.lang.Object implements StringEncoder, StringDecoder
Identical to the Base64 encoding defined by RFC 1521 and allows a character set to be specified.
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.
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
POSTFIX
Prefix
|
protected static java.lang.String |
PREFIX
Postfix
|
protected static char |
SEP
Separator.
|
Constructor and Description |
---|
BCodec()
Default constructor.
|
BCodec(java.lang.String charset)
Constructor which allows for the selection of a default charset
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
decode(java.lang.Object value)
Decodes a Base64 object into its original form.
|
java.lang.String |
decode(java.lang.String value)
Decodes a Base64 string into its original form.
|
protected java.lang.String |
decodeText(java.lang.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
|
java.lang.Object |
encode(java.lang.Object value)
Encodes an object into its Base64 form using the default charset.
|
java.lang.String |
encode(java.lang.String value)
Encodes a string into its Base64 form using the default charset.
|
java.lang.String |
encode(java.lang.String value,
java.lang.String charset)
Encodes a string into its Base64 form using the specified charset.
|
protected java.lang.String |
encodeText(java.lang.String text,
java.lang.String charset)
Applies an RFC 1522 compliant encoding scheme to the given string of text with the
given charset.
|
java.lang.String |
getDefaultCharset()
The default charset used for string decoding and encoding.
|
protected java.lang.String |
getEncoding()
Returns the codec name (referred to as encoding in the RFC 1522)
|
protected static final char SEP
protected static final java.lang.String POSTFIX
protected static final java.lang.String PREFIX
public BCodec()
public BCodec(java.lang.String charset)
charset
- the default string charset to use.protected java.lang.String getEncoding()
protected byte[] doEncoding(byte[] bytes)
bytes
- Data to be encodedprotected byte[] doDecoding(byte[] bytes)
bytes
- Data to be decodedpublic java.lang.String encode(java.lang.String value, java.lang.String charset) throws EncoderException
value
- string to convert to Base64 formcharset
- the charset for value
EncoderException
- thrown if a failure condition is encountered during the encoding process.public java.lang.String encode(java.lang.String value) throws EncoderException
encode
in interface StringEncoder
value
- string to convert to Base64 formEncoderException
- thrown if a failure condition is encountered during the encoding process.public java.lang.String decode(java.lang.String value) throws DecoderException
decode
in interface StringDecoder
value
- Base64 string to convert into its original formDecoderException
- A decoder exception is thrown if a failure condition is encountered during the decode process.public java.lang.Object encode(java.lang.Object value) throws EncoderException
encode
in interface Encoder
value
- object to convert to Base64 formEncoderException
- thrown if a failure condition is encountered during the encoding process.public java.lang.Object decode(java.lang.Object value) throws DecoderException
decode
in interface Decoder
value
- Base64 object to convert into its original formDecoderException
- Thrown if the argument is not a String
. Thrown if a failure condition is
encountered during the decode process.public java.lang.String getDefaultCharset()
protected java.lang.String encodeText(java.lang.String text, java.lang.String charset) throws EncoderException, java.io.UnsupportedEncodingException
doEncoding(byte [])
method of a concrete
class to perform the specific encoding.text
- a string to encodecharset
- a charset to be usedEncoderException
- thrown if there is an error condition during the Encoding
process.java.io.UnsupportedEncodingException
- thrown if charset is not supportedprotected java.lang.String decodeText(java.lang.String text) throws DecoderException, java.io.UnsupportedEncodingException
doEncoding(byte [])
method of a concrete class to perform the specific decoding.text
- a string to decodenull
if the input is null
.DecoderException
- thrown if there is an error condition during the decoding
process.java.io.UnsupportedEncodingException
- thrown if charset specified in the "encoded-word"
header is not supportedThis software is published under the BSD license. Copyright © 2003-${build.year}, CRIXP AG, Switzerland, All rights reserved. Use is subject to license terms.