public abstract class BaseNCodec extends java.lang.Object implements BinaryEncoder, BinaryDecoder
This class is thread-safe.
Modifier and Type | Field and Description |
---|---|
static int |
MIME_CHUNK_SIZE
MIME chunk size per RFC 2045 section 6.8.
|
static int |
PEM_CHUNK_SIZE
PEM chunk size per RFC 1421 section 4.3.2.4.
|
Modifier and Type | Method and Description |
---|---|
byte[] |
decode(byte[] pArray)
Decodes a byte[] containing characters in the Base-N alphabet.
|
java.lang.Object |
decode(java.lang.Object obj)
Decodes an Object using the Base-N algorithm.
|
byte[] |
decode(java.lang.String pArray)
Decodes a String containing characters in the Base-N alphabet.
|
byte[] |
encode(byte[] pArray)
Encodes a byte[] containing binary data, into a byte[] containing characters in the alphabet.
|
byte[] |
encode(byte[] pArray,
int offset,
int length)
Encodes a byte[] containing binary data, into a byte[] containing
characters in the alphabet.
|
java.lang.Object |
encode(java.lang.Object obj)
Encodes an Object using the Base-N algorithm.
|
java.lang.String |
encodeAsString(byte[] pArray)
Encodes a byte[] containing binary data, into a String containing characters in the appropriate alphabet.
|
java.lang.String |
encodeToString(byte[] pArray)
Encodes a byte[] containing binary data, into a String containing characters in the Base-N alphabet.
|
long |
getEncodedLength(byte[] pArray)
Calculates the amount of space needed to encode the supplied array.
|
boolean |
isInAlphabet(byte[] arrayOctet,
boolean allowWSPad)
Tests a given byte array to see if it contains only valid characters within the alphabet.
|
boolean |
isInAlphabet(java.lang.String basen)
Tests a given String to see if it contains only valid characters within the alphabet.
|
public static final int MIME_CHUNK_SIZE
The 76 character limit does not count the trailing CRLF, but counts all other characters, including any equal signs.
public static final int PEM_CHUNK_SIZE
The 64 character limit does not count the trailing CRLF, but counts all other characters, including any equal signs.
public java.lang.Object encode(java.lang.Object obj) throws EncoderException
encode
in interface Encoder
obj
- Object to encodeEncoderException
- if the parameter supplied is not of type byte[]public java.lang.String encodeToString(byte[] pArray)
pArray
- a byte array containing binary datapublic java.lang.String encodeAsString(byte[] pArray)
pArray
- a byte array containing binary dataencodeToString(byte[])
; it was merged during refactoring.public java.lang.Object decode(java.lang.Object obj) throws DecoderException
decode
in interface Decoder
obj
- Object to decodeDecoderException
- if the parameter supplied is not of type byte[]public byte[] decode(java.lang.String pArray)
pArray
- A String containing Base-N character datapublic byte[] decode(byte[] pArray)
decode
in interface BinaryDecoder
pArray
- A byte array containing Base-N character datapublic byte[] encode(byte[] pArray)
encode
in interface BinaryEncoder
pArray
- a byte array containing binary datapublic byte[] encode(byte[] pArray, int offset, int length)
pArray
- a byte array containing binary dataoffset
- initial offset of the subarray.length
- length of the subarray.public boolean isInAlphabet(byte[] arrayOctet, boolean allowWSPad)
arrayOctet
- byte array to testallowWSPad
- if true
, then whitespace and PAD are also allowedtrue
if all bytes are valid characters in the alphabet or if the byte array is empty;
false
, otherwisepublic boolean isInAlphabet(java.lang.String basen)
basen
- String to testtrue
if all characters in the String are valid characters in the alphabet or if
the String is empty; false
, otherwiseisInAlphabet(byte[], boolean)
public long getEncodedLength(byte[] pArray)
pArray
- byte[] array which will later be encoded"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"