Class Base64Encoder

java.lang.Object
com.ongres.scram.common.bouncycastle.base64.Base64Encoder
All Implemented Interfaces:
Encoder

public class Base64Encoder extends Object implements Encoder
A streaming Base64 encoder.
  • Field Details

    • encodingTable

      protected final byte[] encodingTable
    • padding

      protected byte padding
    • decodingTable

      protected final byte[] decodingTable
  • Constructor Details

    • Base64Encoder

      public Base64Encoder()
  • Method Details

    • initialiseDecodingTable

      protected void initialiseDecodingTable()
    • encode

      public int encode(byte[] data, int off, int length, OutputStream out) throws IOException
      encode the input data producing a base 64 output stream.
      Specified by:
      encode in interface Encoder
      Returns:
      the number of bytes produced.
      Throws:
      IOException
    • ignore

      private boolean ignore(char c)
    • decode

      public int decode(byte[] data, int off, int length, OutputStream out) throws IOException
      decode the base 64 encoded byte data writing it to the given output stream, whitespace characters will be ignored.
      Specified by:
      decode in interface Encoder
      Returns:
      the number of bytes produced.
      Throws:
      IOException
    • nextI

      private int nextI(byte[] data, int i, int finish)
    • decode

      public int decode(String data, OutputStream out) throws IOException
      decode the base 64 encoded String data writing it to the given output stream, whitespace characters will be ignored.
      Specified by:
      decode in interface Encoder
      Returns:
      the number of bytes produced.
      Throws:
      IOException
    • decodeLastBlock

      private int decodeLastBlock(OutputStream out, char c1, char c2, char c3, char c4) throws IOException
      Throws:
      IOException
    • nextI

      private int nextI(String data, int i, int finish)