- java.lang.Object
-
- swim.codec.Base64
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Stringalphabet()Returns a 64 character string, where the character at indexiis the encoding of the base-64 digiti.Writer<byte[],?>byteArrayWriter()Returns aWriterthat, when fed an inputbyte[]array, returns a continuation that writes the base-64 (7-bit ASCII) encoding of the input byte array.Writer<?,byte[]>byteArrayWriter(byte[] input)Returns aWritercontinuation that writes the base-64 (7-bit ASCII) encoding of theinputbyte array.Writer<ByteBuffer,?>byteBufferWriter()Returns aWriterthat, when fed an inputByteBuffer, returns a continuation that writes the base-64 (7-bit ASCII) encoding of the input byte buffer.Writer<?,ByteBuffer>byteBufferWriter(ByteBuffer input)Returns aWritercontinuation that writes the base-64 (7-bit ASCII) encoding of theinputbyte buffer.intdecodeDigit(int c)Returns the 7-bit quantity represented by the base-64 digitc.charencodeDigit(int b)Returns the Unicode code point of the base-64 digit that encodes the given 7-bit quantity.abstract booleanisDigit(int c)Returnstrueif the Unicode code pointcis a valid base-64 digit.abstract booleanisPadded()Returnstrueif this base-64 encoding requires padding.abstract Base64isPadded(boolean isPadded)Returns thisBase64encoding with required padding, ifisPaddedistrue.<O> Parser<O>parse(Input input, Output<O> output)Parses the base-64 (7-bit ASCII) encodedinput, and writes the decoded bytes tooutput, returning aParsercontinuation that knows how to parse any additional input.Parser<byte[]>parseByteArray(Input input)Parses the base-64 (7-bit ASCII) encodedinput, and writes the decoded bytes to a growable array, returning aParsercontinuation that knows how to parse any additional input.Parser<ByteBuffer>parseByteBuffer(Input input)Parses the base-64 (t-bit ASCII) encodedinput, and writes the decoded bytes to a growable buffer, returning aParsercontinuation that knows how to parse any additional input.<O> Parser<O>parser(Output<O> output)Returns aParserthat decodes base-64 (7-bit ASCII) encoded input, and writes the decoded bytes tooutput.static Base64standard()Returns theBase64encoding with the standard alphabet.static Base64standard(boolean isPadded)Returns theBase64encoding with the standard alphabet, and required padding, ifisPaddedistrue.static Base64url()Returns theBase64encoding with the url and filename safe alphabet.static Base64url(boolean isPadded)Returns theBase64encoding with the url and filename safe alphabet, and required padding, ifisPaddedistrue.static Base64urlUnpadded()Writer<?,?>writeByteArray(byte[] input, Output<?> output)Writes the base-64 (7-bit ASCII) encoding of theinputbyte array to theoutput, returning aWritercontinuation that knows how to write any remaining output that couldn't be immediately generated.Writer<?,?>writeByteBuffer(ByteBuffer input, Output<?> output)Writes the base-64 (7-bit ASCII) encoding of theinputbyte buffer to theoutput, returning aWritercontinuation that knows how to write any remaining output that couldn't be immediately generated.<T> Output<T>writeQuantum(int c1, int c2, int c3, int c4, Output<T> output)Decodes the base-64 digitsc1,c2,c3, andc4, and writes the 8 to 24 bit quantity they represent to the givenoutput.
-
-
-
Method Detail
-
alphabet
public abstract String alphabet()
Returns a 64 character string, where the character at indexiis the encoding of the base-64 digiti.
-
isPadded
public abstract boolean isPadded()
Returnstrueif this base-64 encoding requires padding.
-
isPadded
public abstract Base64 isPadded(boolean isPadded)
Returns thisBase64encoding with required padding, ifisPaddedistrue.
-
isDigit
public abstract boolean isDigit(int c)
Returnstrueif the Unicode code pointcis a valid base-64 digit.
-
decodeDigit
public int decodeDigit(int c)
Returns the 7-bit quantity represented by the base-64 digitc.- Throws:
IllegalArgumentException- ifcis not a valid base-64 digit.
-
encodeDigit
public char encodeDigit(int b)
Returns the Unicode code point of the base-64 digit that encodes the given 7-bit quantity.
-
writeQuantum
public <T> Output<T> writeQuantum(int c1, int c2, int c3, int c4, Output<T> output)
Decodes the base-64 digitsc1,c2,c3, andc4, and writes the 8 to 24 bit quantity they represent to the givenoutput.- Returns:
- the continuation of the
output.
-
parser
public <O> Parser<O> parser(Output<O> output)
Returns aParserthat decodes base-64 (7-bit ASCII) encoded input, and writes the decoded bytes tooutput.
-
parse
public <O> Parser<O> parse(Input input, Output<O> output)
Parses the base-64 (7-bit ASCII) encodedinput, and writes the decoded bytes tooutput, returning aParsercontinuation that knows how to parse any additional input.
-
parseByteArray
public Parser<byte[]> parseByteArray(Input input)
Parses the base-64 (7-bit ASCII) encodedinput, and writes the decoded bytes to a growable array, returning aParsercontinuation that knows how to parse any additional input. The returnedParserbindsabyte[]array containing all parsed base-64 data.
-
parseByteBuffer
public Parser<ByteBuffer> parseByteBuffer(Input input)
Parses the base-64 (t-bit ASCII) encodedinput, and writes the decoded bytes to a growable buffer, returning aParsercontinuation that knows how to parse any additional input. The returnedParserbindsaByteBuffercontaining all parsed base-64 data.
-
byteArrayWriter
public Writer<byte[],?> byteArrayWriter()
Returns aWriterthat, when fed an inputbyte[]array, returns a continuation that writes the base-64 (7-bit ASCII) encoding of the input byte array.
-
byteArrayWriter
public Writer<?,byte[]> byteArrayWriter(byte[] input)
Returns aWritercontinuation that writes the base-64 (7-bit ASCII) encoding of theinputbyte array.
-
byteBufferWriter
public Writer<ByteBuffer,?> byteBufferWriter()
Returns aWriterthat, when fed an inputByteBuffer, returns a continuation that writes the base-64 (7-bit ASCII) encoding of the input byte buffer.
-
byteBufferWriter
public Writer<?,ByteBuffer> byteBufferWriter(ByteBuffer input)
Returns aWritercontinuation that writes the base-64 (7-bit ASCII) encoding of theinputbyte buffer.
-
writeByteArray
public Writer<?,?> writeByteArray(byte[] input, Output<?> output)
Writes the base-64 (7-bit ASCII) encoding of theinputbyte array to theoutput, returning aWritercontinuation that knows how to write any remaining output that couldn't be immediately generated.
-
writeByteBuffer
public Writer<?,?> writeByteBuffer(ByteBuffer input, Output<?> output)
Writes the base-64 (7-bit ASCII) encoding of theinputbyte buffer to theoutput, returning aWritercontinuation that knows how to write any remaining output that couldn't be immediately generated.
-
standard
public static Base64 standard()
Returns theBase64encoding with the standard alphabet.
-
standard
public static Base64 standard(boolean isPadded)
Returns theBase64encoding with the standard alphabet, and required padding, ifisPaddedistrue.
-
url
public static Base64 url()
Returns theBase64encoding with the url and filename safe alphabet.
-
urlUnpadded
public static Base64 urlUnpadded()
-
url
public static Base64 url(boolean isPadded)
Returns theBase64encoding with the url and filename safe alphabet, and required padding, ifisPaddedistrue.
-
-