Berkeley DB Java Edition
version 1.5.1

com.sleepycat.util
Class FastInputStream

java.lang.Object
  |
  +--java.io.InputStream
        |
        +--com.sleepycat.util.FastInputStream
Direct Known Subclasses:
TupleInput

public class FastInputStream
extends InputStream

A replacement for ByteArrayInputStream that does not synchronize every byte read.

This class extends InputStream and its read() methods allow it to be used as a standard input stream. In addition, it provides readFast() methods that are not declared to throw IOException. IOException is never thrown by this class.

Author:
Mark Hayes

Constructor Summary
FastInputStream(byte[] buffer)
          Creates an input stream.
FastInputStream(byte[] buffer, int offset, int length)
          Creates an input stream.
 
Method Summary
 int available()
           
 byte[] getBufferBytes()
          Returns the underlying data being read.
 int getBufferLength()
          Returns the end of the buffer being read.
 int getBufferOffset()
          Returns the offset at which data is being read from the buffer.
 void mark(int pos)
           
 boolean markSupported()
           
 int read()
           
 int read(byte[] toBuf)
           
 int read(byte[] toBuf, int offset, int length)
           
 int readFast()
          Equivalent to read() but does not throw IOException.
 int readFast(byte[] toBuf)
          Equivalent to read(byte[]) but does not throw IOException.
 int readFast(byte[] toBuf, int offset, int length)
          Equivalent to read(byte[],int,int) but does not throw IOException.
 void reset()
           
 long skip(long count)
           
 
Methods inherited from class java.io.InputStream
close
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FastInputStream

public FastInputStream(byte[] buffer)
Creates an input stream.

Parameters:
buffer - the data to read.

FastInputStream

public FastInputStream(byte[] buffer,
                       int offset,
                       int length)
Creates an input stream.

Parameters:
buffer - the data to read.
offset - the byte offset at which to begin reading.
length - the number of bytes to read.
Method Detail

available

public int available()
Overrides:
available in class InputStream

markSupported

public boolean markSupported()
Overrides:
markSupported in class InputStream

mark

public void mark(int pos)
Overrides:
mark in class InputStream

reset

public void reset()
Overrides:
reset in class InputStream

skip

public long skip(long count)
Overrides:
skip in class InputStream

read

public int read()
         throws IOException
Specified by:
read in class InputStream
IOException

read

public int read(byte[] toBuf)
         throws IOException
Overrides:
read in class InputStream
IOException

read

public int read(byte[] toBuf,
                int offset,
                int length)
         throws IOException
Overrides:
read in class InputStream
IOException

readFast

public final int readFast()
Equivalent to read() but does not throw IOException.

See Also:
read()

readFast

public final int readFast(byte[] toBuf)
Equivalent to read(byte[]) but does not throw IOException.

See Also:
read(byte[])

readFast

public final int readFast(byte[] toBuf,
                          int offset,
                          int length)
Equivalent to read(byte[],int,int) but does not throw IOException.

See Also:
read(byte[],int,int)

getBufferBytes

public final byte[] getBufferBytes()
Returns the underlying data being read.

Returns:
the underlying data.

getBufferOffset

public final int getBufferOffset()
Returns the offset at which data is being read from the buffer.

Returns:
the offset at which data is being read.

getBufferLength

public final int getBufferLength()
Returns the end of the buffer being read.

Returns:
the end of the buffer.

Berkeley DB Java Edition
version 1.5.1

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.