Package org.apache.cxf.attachment

# Class Base64DecoderStream

java.lang.Object
java.io.InputStream
java.io.FilterInputStream
org.apache.cxf.attachment.Base64DecoderStream

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

public class Base64DecoderStream extends FilterInputStream
An implementation of a FilterInputStream that decodes the stream data in BASE64 encoding format. This version does the decoding "on the fly" rather than decoding a single block of data. Since this version is intended for use by the MimeUtilty class, it also handles line breaks in the encoded data.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected byte[]`
  `decodedChars`
  `protected int`
  `decodedCount`
  `protected int`
  `decodedIndex`
  `protected char[]`
  `encodedChars`
  `protected boolean`
  `ignoreErrors`

  ### Fields inherited from class java.io.FilterInputStream

  `in`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Base64DecoderStream(InputStream in)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `available()`
  `boolean`
  `markSupported()`
  `int`
  `read()`
  `int`
  `read(byte[] buffer, int offset, int length)`

  ### Methods inherited from class java.io.FilterInputStream

  `close, mark, read, reset, skip`

  ### Methods inherited from class java.io.InputStream

  `nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### ignoreErrors

    protected boolean ignoreErrors

  - ### encodedChars

    protected char[] encodedChars

  - ### decodedChars

    protected byte[] decodedChars

  - ### decodedCount

    protected int decodedCount

  - ### decodedIndex

    protected int decodedIndex

- ## Constructor Details

  - ### Base64DecoderStream

    public Base64DecoderStream(InputStream in)

- ## Method Details

  - ### read

    public int read() throws IOException
    Overrides:
      `read` in class `FilterInputStream`
    Throws:
      `IOException`

  - ### read

    public int read(byte[] buffer, int offset, int length) throws IOException
    Overrides:
      `read` in class `FilterInputStream`
    Throws:
      `IOException`

  - ### markSupported

    public boolean markSupported()
    Overrides:
      `markSupported` in class `FilterInputStream`

  - ### available

    public int available() throws IOException
    Overrides:
      `available` in class `FilterInputStream`
    Throws:
      `IOException`