Class AwsChunkDecodingInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class AwsChunkDecodingInputStream
    extends java.io.InputStream
    Skips V4 style signing metadata from input streams.

    The original stream looks like this (newlines are CRLF):

     5;chunk-signature=7ece820edcf094ce1ef6d643c8db60b67913e28831d9b0430efd2b56a9deec5e
     12345
     0;chunk-signature=ee2c094d7162170fcac17d2c76073cd834b0488bfe52e89e48599b8115c7ffa2
     

    The format of each chunk of data is:

     [hex-encoded-number-of-bytes-in-chunk];chunk-signature=[sha256-signature][crlf]
     [payload-bytes-of-this-chunk][crlf]
     
    See Also:
    AwsChunkedEncodingInputStream
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      int read()  
      • Methods inherited from class java.io.InputStream

        available, mark, markSupported, nullInputStream, read, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AwsChunkDecodingInputStream

        public AwsChunkDecodingInputStream​(java.io.InputStream source)
        Constructs a new AwsChunkDecodingInputStream.
        Parameters:
        source - The InputStream to wrap.
    • Method Detail

      • read

        public int read()
                 throws java.io.IOException
        Specified by:
        read in class java.io.InputStream
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.InputStream
        Throws:
        java.io.IOException