org.apache.lucene.store

## Class RAMInputStream

- java.lang.Object
- - org.apache.lucene.store.DataInput
  - - org.apache.lucene.store.IndexInput
    - - org.apache.lucene.store.RAMInputStream

All Implemented Interfaces:
  Closeable, AutoCloseable, Cloneable

    public class RAMInputStream
    extends IndexInput
    implements Cloneable

A memory-resident `IndexInput` implementation.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

### Constructor Summary

Constructors
Constructor and Description
`RAMInputStream(String name, RAMFile f)`

### Method Summary

Methods
`void` `close()` Closes the stream to further operations.
`long` `getFilePointer()` Returns the current position in this file, where the next read will occur.
`long` `length()` The number of bytes in the file.
`byte` `readByte()` Reads and returns a single byte.
`void` `readBytes(byte[] b, int offset, int len)` Reads a specified number of bytes into an array at the specified offset.
`void` `seek(long pos)` Sets current position in this file, where the next read will occur.

### Methods inherited from class org.apache.lucene.store.IndexInput

`clone, toString`

### Methods inherited from class org.apache.lucene.store.DataInput

`readBytes, readInt, readLong, readShort, readString, readStringSet, readStringStringMap, readVInt, readVLong`

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

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

### Constructor Detail

#### RAMInputStream

    public RAMInputStream(String name,
                  RAMFile f)
                   throws IOException

Throws:
  `IOException`

### Method Detail

#### close

    public void close()

Description copied from class: `IndexInput`
Closes the stream to further operations.

Specified by:
  `close` in interface `Closeable`
Specified by:
  `close` in interface `AutoCloseable`
Specified by:
  `close` in class `IndexInput`

#### length

    public long length()

Description copied from class: `IndexInput`
The number of bytes in the file.

Specified by:
  `length` in class `IndexInput`

#### readByte

    public byte readByte()
                  throws IOException

Description copied from class: `DataInput`
Reads and returns a single byte.

Specified by:
  `readByte` in class `DataInput`
Throws:
  `IOException`
See Also:
  `DataOutput.writeByte(byte)`

#### readBytes

    public void readBytes(byte[] b,
                 int offset,
                 int len)
                   throws IOException

Description copied from class: `DataInput`
Reads a specified number of bytes into an array at the specified offset.

Specified by:
  `readBytes` in class `DataInput`
Parameters:
  `b` - the array to read bytes into
  `offset` - the offset in the array to start storing bytes
  `len` - the number of bytes to read
Throws:
  `IOException`
See Also:
  `DataOutput.writeBytes(byte[],int)`

#### getFilePointer

    public long getFilePointer()

Description copied from class: `IndexInput`
Returns the current position in this file, where the next read will occur.

Specified by:
  `getFilePointer` in class `IndexInput`
See Also:
  `IndexInput.seek(long)`

#### seek

    public void seek(long pos)
              throws IOException

Description copied from class: `IndexInput`
Sets current position in this file, where the next read will occur.

Specified by:
  `seek` in class `IndexInput`
Throws:
  `IOException`
See Also:
  `IndexInput.getFilePointer()`