Class ZipArchiveInputStream.BoundedInputStream

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

    private class ZipArchiveInputStream.BoundedInputStream
    extends java.io.InputStream
    Bounded input stream adapted from commons-io
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.io.InputStream in
      the wrapped input stream
      private long max
      the max length to provide
      private long pos
      the number of bytes already returned
    • Constructor Summary

      Constructors 
      Constructor Description
      BoundedInputStream​(java.io.InputStream in, long size)
      Creates a new BoundedInputStream that wraps the given input stream and limits it to a certain size.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int available()  
      int read()  
      int read​(byte[] b)  
      int read​(byte[] b, int off, int len)  
      long skip​(long n)  
      • Methods inherited from class java.io.InputStream

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

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

      • in

        private final java.io.InputStream in
        the wrapped input stream
      • max

        private final long max
        the max length to provide
      • pos

        private long pos
        the number of bytes already returned
    • Constructor Detail

      • BoundedInputStream

        public BoundedInputStream​(java.io.InputStream in,
                                  long size)
        Creates a new BoundedInputStream that wraps the given input stream and limits it to a certain size.
        Parameters:
        in - The wrapped input stream
        size - The maximum number of bytes to return
    • Method Detail

      • read

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

        public int read​(byte[] b)
                 throws java.io.IOException
        Overrides:
        read in class java.io.InputStream
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] b,
                        int off,
                        int len)
                 throws java.io.IOException
        Overrides:
        read in class java.io.InputStream
        Throws:
        java.io.IOException
      • skip

        public long skip​(long n)
                  throws java.io.IOException
        Overrides:
        skip in class java.io.InputStream
        Throws:
        java.io.IOException
      • available

        public int available()
                      throws java.io.IOException
        Overrides:
        available in class java.io.InputStream
        Throws:
        java.io.IOException