Class SubImageInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.DataInput, java.lang.AutoCloseable, javax.imageio.stream.ImageInputStream

    public final class SubImageInputStream
    extends javax.imageio.stream.ImageInputStreamImpl
    A wrapper for ImageInputStream to limit the number of bytes that can be read.
    Version:
    $Id: SubImageInputStream.java,v 1.0 Nov 8, 2009 2:50:58 PM haraldk Exp$
    Author:
    Harald Kuhr, last modified by $Author: haraldk$
    • Field Summary

      • Fields inherited from class javax.imageio.stream.ImageInputStreamImpl

        bitOffset, byteOrder, flushedPos, streamPos
    • Constructor Summary

      Constructors 
      Constructor Description
      SubImageInputStream​(javax.imageio.stream.ImageInputStream pStream, long pLength)
      Creates a ImageInputStream, reading up to a maximum number of bytes from the underlying stream.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void finalize()  
      long length()  
      int read()  
      int read​(byte[] pBytes, int pOffset, int pLength)  
      void seek​(long pPosition)  
      • Methods inherited from class javax.imageio.stream.ImageInputStreamImpl

        checkClosed, close, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, mark, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, setBitOffset, setByteOrder, skipBytes, skipBytes
      • Methods inherited from class java.lang.Object

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

      • SubImageInputStream

        public SubImageInputStream​(javax.imageio.stream.ImageInputStream pStream,
                                   long pLength)
                            throws java.io.IOException
        Creates a ImageInputStream, reading up to a maximum number of bytes from the underlying stream.
        Parameters:
        pStream - the underlying stream
        pLength - the maximum length to read from the stream. Note that pStream may contain less than this maximum number of bytes.
        Throws:
        java.io.IOException - if pStream's position can't be determined.
        java.lang.IllegalArgumentException - if pStream == null or pLength < 0
    • Method Detail

      • read

        public int read()
                 throws java.io.IOException
        Specified by:
        read in interface javax.imageio.stream.ImageInputStream
        Specified by:
        read in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] pBytes,
                        int pOffset,
                        int pLength)
                 throws java.io.IOException
        Specified by:
        read in interface javax.imageio.stream.ImageInputStream
        Specified by:
        read in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.io.IOException
      • length

        public long length()
        Specified by:
        length in interface javax.imageio.stream.ImageInputStream
        Overrides:
        length in class javax.imageio.stream.ImageInputStreamImpl
      • seek

        public void seek​(long pPosition)
                  throws java.io.IOException
        Specified by:
        seek in interface javax.imageio.stream.ImageInputStream
        Overrides:
        seek in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.io.IOException
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.lang.Throwable