com.onewebsql.util.io
Class SizeLimitInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by com.onewebsql.util.io.ProxyInputStream
              extended by com.onewebsql.util.io.CountReportingInputStream
                  extended by com.onewebsql.util.io.SizeLimitInputStream
All Implemented Interfaces:
Closeable

public class SizeLimitInputStream
extends CountReportingInputStream

Implementacja strumienia wejściowego, nakładająca ograniczenie na liczbę odczytanych bajtów.


Field Summary
protected  MarkableCounter counter
          Licznik odczytanych bajtów.
protected  SizeLimitInputStreamMonitor monitor
          Obiekt monitorujący pracę strumienia.
protected  boolean proxiesClose
          Flaga określająca, czy podczas zamknięcia strumienia należy również zamykać strumień do którego delegowane są odczyty bajtów.
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
SizeLimitInputStream(InputStream in, long size)
          Konstruktor.
SizeLimitInputStream(InputStream in, long size, boolean proxiesClose)
          Konstruktor.
SizeLimitInputStream(InputStream in, long size, boolean proxiesClose, SizeLimitInputStreamMonitor monitor)
          Konstruktor.
 
Method Summary
 int available()
          Invokes the delegate's available() method.
 void close()
          Invokes the delegate's close() method.
 long getCount()
          Zwraca liczbę odczytanych bajtów.
 void mark(int readAheadLimit)
          Invokes the delegate's mark(int) method.
 boolean markSupported()
          Invokes the delegate's markSupported() method.
 int read()
          Invokes the delegate's read() method.
 int read(byte[] buf)
          Invokes the delegate's read(byte[]) method.
 int read(byte[] buf, int off, int len)
          Invokes the delegate's read(byte[], int, int) method.
 void reset()
          Invokes the delegate's reset() method.
 long skip(long len)
          Invokes the delegate's skip(long) method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

proxiesClose

protected boolean proxiesClose
Flaga określająca, czy podczas zamknięcia strumienia należy również zamykać strumień do którego delegowane są odczyty bajtów.


counter

protected MarkableCounter counter
Licznik odczytanych bajtów.


monitor

protected SizeLimitInputStreamMonitor monitor
Obiekt monitorujący pracę strumienia.

Constructor Detail

SizeLimitInputStream

public SizeLimitInputStream(InputStream in,
                            long size)
Konstruktor. Równoważny wywołaniu konstruktora SizeLimitInputStream(in, size, false).

Parameters:
in - strumień wejściowy do którego delegowane będzie odczytywanie bajtów.
size - maksymalna liczba bajtów, która może być odczytana ze strumienia.

SizeLimitInputStream

public SizeLimitInputStream(InputStream in,
                            long size,
                            boolean proxiesClose)
Konstruktor.

Parameters:
in - strumień wejściowy do którego delegowane będzie odczytywanie bajtów.
size - maksymalna liczba bajtów która będzie odczytana ze strumienia.
proxiesClose - flaga określająca, czy podczas zamykania strumienia należy również zamknąć strumień, do ktorego delegowane są odczyty bajtów.

SizeLimitInputStream

public SizeLimitInputStream(InputStream in,
                            long size,
                            boolean proxiesClose,
                            SizeLimitInputStreamMonitor monitor)
Konstruktor.

Parameters:
in - strumień wejściowy do którego delegowane będzie odczytywanie bajtów.
size - maksymalna liczba bajtów która będzie odczytana ze strumienia.
proxiesClose - flaga określająca, czy podczas zamykania strumienia należy również zamknąć strumień, do ktorego delegowane są odczyty bajtów.
monitor - obiekt monitorujący operacje na strumieniu.
Method Detail

available

public int available()
              throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's available() method.

Overrides:
available in class ProxyInputStream
Returns:
the number of available bytes
Throws:
IOException - if an I/O error occurs

close

public void close()
           throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's close() method.

Specified by:
close in interface Closeable
Overrides:
close in class ProxyInputStream
Throws:
IOException - if an I/O error occurs

mark

public void mark(int readAheadLimit)
Description copied from class: ProxyInputStream
Invokes the delegate's mark(int) method.

Overrides:
mark in class ProxyInputStream
Parameters:
readAheadLimit - read ahead limit

markSupported

public boolean markSupported()
Description copied from class: ProxyInputStream
Invokes the delegate's markSupported() method.

Overrides:
markSupported in class ProxyInputStream
Returns:
true if mark is supported, otherwise false

read

public int read()
         throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's read() method.

Overrides:
read in class ProxyInputStream
Returns:
the byte read or -1 if the end of stream
Throws:
IOException - if an I/O error occurs

read

public int read(byte[] buf,
                int off,
                int len)
         throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's read(byte[], int, int) method.

Overrides:
read in class ProxyInputStream
Parameters:
buf - the buffer to read the bytes into
off - The start offset
len - The number of bytes to read
Returns:
the number of bytes read or -1 if the end of stream
Throws:
IOException - if an I/O error occurs

read

public int read(byte[] buf)
         throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's read(byte[]) method.

Overrides:
read in class ProxyInputStream
Parameters:
buf - the buffer to read the bytes into
Returns:
the number of bytes read or -1 if the end of stream
Throws:
IOException - if an I/O error occurs

reset

public void reset()
           throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's reset() method.

Overrides:
reset in class ProxyInputStream
Throws:
IOException - if an I/O error occurs

skip

public long skip(long len)
          throws IOException
Description copied from class: ProxyInputStream
Invokes the delegate's skip(long) method.

Overrides:
skip in class ProxyInputStream
Parameters:
len - the number of bytes to skip
Returns:
the number of bytes to skipped or -1 if the end of stream
Throws:
IOException - if an I/O error occurs

getCount

public long getCount()
Description copied from class: CountReportingInputStream
Zwraca liczbę odczytanych bajtów.

Specified by:
getCount in class CountReportingInputStream
Returns:
liczba odczytanych bajtów.


Copyright © 2011-2013 e-point SA. All Rights Reserved.