Class CharArrayBase64Decoder


  • public class CharArrayBase64Decoder
    extends Base64DecoderBase
    Base64 decoder that can be used to decode base64 encoded content that is passed as char arrays.
    • Field Detail

      • _currSegment

        protected char[] _currSegment
        Text segment being currently processed.
      • _currSegmentPtr

        protected int _currSegmentPtr
      • _currSegmentEnd

        protected int _currSegmentEnd
      • _nextSegments

        protected final java.util.ArrayList<char[]> _nextSegments
      • _lastSegmentOffset

        protected int _lastSegmentOffset
      • _lastSegmentEnd

        protected int _lastSegmentEnd
      • _nextSegmentIndex

        protected int _nextSegmentIndex
        Pointer of the next segment to process (after current one stored in _currSegment) within _nextSegments.
    • Constructor Detail

      • CharArrayBase64Decoder

        public CharArrayBase64Decoder()
    • Method Detail

      • init

        public void init​(Base64Variant variant,
                         boolean firstChunk,
                         char[] lastSegment,
                         int lastOffset,
                         int lastLen,
                         java.util.List<char[]> segments)
      • decode

        public int decode​(byte[] resultBuffer,
                          int resultOffset,
                          int maxLength)
                   throws java.lang.IllegalArgumentException
        Description copied from class: Base64DecoderBase
        Method that does actual decoding
        Specified by:
        decode in class Base64DecoderBase
        Parameters:
        resultBuffer - Buffer in which decoded bytes are returned
        resultOffset - Offset that points to position to put the first decoded byte in maxLength Maximum number of bytes that can be returned in given buffer
        Returns:
        Number of bytes decoded and returned in the result buffer
        Throws:
        java.lang.IllegalArgumentException
      • nextSegment

        private boolean nextSegment()