Package org.apache.solr.common.util

# Class FastInputStream

java.lang.Object
java.io.InputStream
org.apache.solr.common.util.DataInputInputStream
org.apache.solr.common.util.FastInputStream

All Implemented Interfaces:
  `Closeable`, `DataInput`, `AutoCloseable`

public class FastInputStream extends DataInputInputStream
Single threaded buffered InputStream Internal Solr use only, subject to change.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final byte[]`
`buf`
`protected int`
`end`
`protected final InputStream`
`in`
`protected int`
`pos`
`protected long`
`readFromStream`

## Constructor Summary

Constructors
Constructor
Description
`FastInputStream(InputStream in)`
`FastInputStream(InputStream in, byte[] tempBuffer, int start, int end)`

## Method Summary

Modifier and Type
Method
Description
`int`
`available()`
`void`
`close()`
`byte[]`
`getBuffer()`
Returns the internal buffer used for caching
`int`
`getEndInBuffer()`
Current end-of-data position within the internal buffer.
`int`
`getPositionInBuffer()`
Current position within the internal buffer
`int`
`peek()`
`long`
`position()`
`int`
`read()`
`int`
`read(byte[] b, int off, int len)`
`boolean`
`readBoolean()`
`byte`
`readByte()`
`char`
`readChar()`
`double`
`readDouble()`
`float`
`readFloat()`
`void`
`readFully(byte[] b)`
`void`
`readFully(byte[] b, int off, int len)`
`int`
`readInt()`
`String`
`readLine()`
`long`
`readLong()`
`short`
`readShort()`
`int`
`readUnsignedByte()`
`int`
`readUnsignedShort()`
`String`
`readUTF()`
`int`
`readWrappedStream(byte[] target, int offset, int len)`
`void`
`refill()`
`int`
`skipBytes(int n)`
`static FastInputStream`
`wrap(InputStream in)`

### Methods inherited from class org.apache.solr.common.util.DataInputInputStream

`readDirectByteBuffer`

### Methods inherited from class java.io.InputStream

`mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### in

protected final InputStream in

### buf

protected final byte[] buf

### pos

protected int pos

### end

protected int end

### readFromStream

protected long readFromStream

## Constructor Details

### FastInputStream

public FastInputStream(InputStream in)

### FastInputStream

public FastInputStream(InputStream in, byte[] tempBuffer, int start, int end)

## Method Details

### wrap

public static FastInputStream wrap(InputStream in)

### read

public int read() throws IOException

Specified by:
  `read` in class `InputStream`
Throws:
  `IOException`

### peek

public int peek() throws IOException

Throws:
  `IOException`

### readUnsignedByte

public int readUnsignedByte() throws IOException

Throws:
  `IOException`

### readWrappedStream

public int readWrappedStream(byte[] target, int offset, int len) throws IOException

Throws:
  `IOException`

### position

public long position()

### refill

public void refill() throws IOException

Throws:
  `IOException`

### available

public int available() throws IOException

Overrides:
  `available` in class `InputStream`
Throws:
  `IOException`

### getBuffer

public byte[] getBuffer()
Returns the internal buffer used for caching

### getPositionInBuffer

public int getPositionInBuffer()
Current position within the internal buffer

### getEndInBuffer

public int getEndInBuffer()
Current end-of-data position within the internal buffer. This is one past the last valid byte.

### read

public int read(byte[] b, int off, int len) throws IOException

Overrides:
  `read` in class `InputStream`
Throws:
  `IOException`

### close

public void close() throws IOException

Specified by:
  `close` in interface `AutoCloseable`
Specified by:
  `close` in interface `Closeable`
Overrides:
  `close` in class `InputStream`
Throws:
  `IOException`

### readFully

public void readFully(byte[] b) throws IOException

Throws:
  `IOException`

### readFully

public void readFully(byte[] b, int off, int len) throws IOException

Throws:
  `IOException`

### skipBytes

public int skipBytes(int n) throws IOException

Throws:
  `IOException`

### readBoolean

public boolean readBoolean() throws IOException

Throws:
  `IOException`

### readByte

public byte readByte() throws IOException

Throws:
  `IOException`

### readShort

public short readShort() throws IOException

Throws:
  `IOException`

### readUnsignedShort

public int readUnsignedShort() throws IOException

Throws:
  `IOException`

### readChar

public char readChar() throws IOException

Throws:
  `IOException`

### readInt

public int readInt() throws IOException

Throws:
  `IOException`

### readLong

public long readLong() throws IOException

Throws:
  `IOException`

### readFloat

public float readFloat() throws IOException

Throws:
  `IOException`

### readDouble

public double readDouble() throws IOException

Throws:
  `IOException`

### readLine

public String readLine() throws IOException

Throws:
  `IOException`

### readUTF

public String readUTF() throws IOException

Throws:
  `IOException`