public abstract class AbstractBaseNEncoder extends java.lang.Object implements Encoder
| Modifier and Type | Field and Description |
|---|---|
private int |
bitsPerChar
Number of bits encoding a single character.
|
private long |
block
Holds a block of bytes to encode.
|
private int |
blockLength
Number of bits in a block.
|
private char[] |
charset
Encoding character set.
|
private long |
initialBitMask
Initial bit mask for selecting characters in a block.
|
protected int |
lineLength
Number of base64 characters per line.
|
private static java.lang.String |
NEWLINE
Platform-specific line terminator string, e.g.
|
private int |
outCount
Number of characters written.
|
private int |
remaining
Number of bits in encode block remaining.
|
| Constructor and Description |
|---|
AbstractBaseNEncoder(char[] characterSet,
int charactersPerLine)
Creates a new instance with given parameters.
|
| Modifier and Type | Method and Description |
|---|---|
void |
encode(java.nio.ByteBuffer input,
java.nio.CharBuffer output)
Encodes bytes in input buffer into characters placed in the output buffer.
|
void |
finalize(java.nio.CharBuffer output)
Performs final output encoding (e.g.
|
protected abstract int |
getBitsPerChar() |
protected abstract int |
getBlockLength() |
int |
outputSize(int inputSize)
Expected number of characters in the output buffer for an input buffer of the given size.
|
private void |
writeOutput(java.nio.CharBuffer output,
int stop)
Writes bytes in the current encoding block to the output buffer.
|
private static final java.lang.String NEWLINE
protected final int lineLength
private final char[] charset
private final int blockLength
private final int bitsPerChar
private final long initialBitMask
private long block
private int remaining
private int outCount
public AbstractBaseNEncoder(char[] characterSet,
int charactersPerLine)
characterSet - Encoding character set.charactersPerLine - Number of characters per line.public void encode(java.nio.ByteBuffer input,
java.nio.CharBuffer output)
throws EncodingException
EncoderEncoder.finalize(java.nio.CharBuffer) after all input bytes have been provided.encode in interface Encoderinput - Input byte buffer.output - Output character buffer.EncodingException - on encoding errors.public void finalize(java.nio.CharBuffer output)
throws EncodingException
Encoderfinalize in interface Encoderoutput - Output character buffer.EncodingException - on encoding errors.public int outputSize(int inputSize)
EncoderoutputSize in interface EncoderinputSize - Size of input buffer in bytes.protected abstract int getBlockLength()
protected abstract int getBitsPerChar()
private void writeOutput(java.nio.CharBuffer output,
int stop)
output - Output buffer.stop - Bit shift stop position where data in current encoding block ends.