## 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, 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
`RAMInputStream(RAMFile f)` Deprecated.
`RAMInputStream(String name, RAMFile f)`

Method Summary
`void` `close()` Closes the stream to further operations.
`void` `copyBytes(IndexOutput out, long numBytes)` Copies `numBytes` bytes to the given `IndexOutput`.
`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
`skipChars, toString`

Methods inherited from class org.apache.lucene.store.DataInput
`clone, readBytes, readChars, readInt, readLong, readShort, readString, readStringStringMap, readVInt, readVLong, setModifiedUTF8StringsMode`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### RAMInputStream

    @Deprecated
    public RAMInputStream(RAMFile f)
                   throws IOException

  Deprecated.

  Please pass String name

  Throws:
    `IOException`

### 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 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)`

### copyBytes

    public void copyBytes(IndexOutput out,
                          long numBytes)
                   throws IOException

  Description copied from class: `IndexInput`
  Copies `numBytes` bytes to the given `IndexOutput`.

  NOTE: this method uses an intermediate buffer to copy the bytes. Consider overriding it in your implementation, if you can make a better, optimized copy.

  NOTE ensure that there are enough bytes in the input to copy to output. Otherwise, different exceptions may be thrown, depending on the implementation.

  Overrides:
    `copyBytes` in class `IndexInput`
  Throws:
    `IOException`

### 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()`