Package org.apache.lucene.store

## Class RateLimitedIndexOutput

- java.lang.Object
- - org.apache.lucene.store.DataOutput
  - - org.apache.lucene.store.IndexOutput
    - - org.apache.lucene.store.FilterIndexOutput
      - - org.apache.lucene.store.RateLimitedIndexOutput

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

      public final class RateLimitedIndexOutput
      extends FilterIndexOutput

  A `rate limiting` `IndexOutput`
  NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.store.FilterIndexOutput

      `out`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RateLimitedIndexOutput​(RateLimiter rateLimiter, IndexOutput out)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `writeByte​(byte b)` | Writes a single byte.
    `void` | `writeBytes​(byte[] b, int offset, int length)` | Writes an array of bytes.
    `void` | `writeInt​(int i)` | Writes an int as four bytes (LE byte order).
    `void` | `writeLong​(long i)` | Writes a long as eight bytes (LE byte order).
    `void` | `writeShort​(short i)` | Writes a short as two bytes (LE byte order).

    - ### Methods inherited from class org.apache.lucene.store.FilterIndexOutput

      `close, getChecksum, getDelegate, getFilePointer, unwrap`

    - ### Methods inherited from class org.apache.lucene.store.IndexOutput

      `alignFilePointer, alignOffset, getName, toString`

    - ### Methods inherited from class org.apache.lucene.store.DataOutput

      `copyBytes, writeBytes, writeGroupVInts, writeMapOfStrings, writeSetOfStrings, writeString, writeVInt, writeVLong, writeZInt, writeZLong`

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

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

- - ### Constructor Detail

    - #### RateLimitedIndexOutput

          public RateLimitedIndexOutput​(RateLimiter rateLimiter,
                                        IndexOutput out)

  - ### Method Detail

    - #### writeByte

          public void writeByte​(byte b)
                         throws IOException

      Description copied from class: `DataOutput`
      Writes a single byte.

      The most primitive data type is an eight-bit byte. Files are accessed as sequences of bytes. All other data types are defined as sequences of bytes, so file formats are byte-order independent.

      Overrides:
        `writeByte` in class `FilterIndexOutput`
      Throws:
        `IOException`
      See Also:
        `DataInput.readByte()`

    - #### writeBytes

          public void writeBytes​(byte[] b,
                                 int offset,
                                 int length)
                          throws IOException

      Description copied from class: `DataOutput`
      Writes an array of bytes.
      Overrides:
        `writeBytes` in class `FilterIndexOutput`
      Parameters:
        `b` - the bytes to write
        `offset` - the offset in the byte array
        `length` - the number of bytes to write
      Throws:
        `IOException`
      See Also:
        `DataInput.readBytes(byte[],int,int)`

    - #### writeInt

          public void writeInt​(int i)
                        throws IOException

      Description copied from class: `DataOutput`
      Writes an int as four bytes (LE byte order).
      Overrides:
        `writeInt` in class `DataOutput`
      Throws:
        `IOException`
      See Also:
        `DataInput.readInt()`, `BitUtil.VH_LE_INT`

    - #### writeShort

          public void writeShort​(short i)
                          throws IOException

      Description copied from class: `DataOutput`
      Writes a short as two bytes (LE byte order).
      Overrides:
        `writeShort` in class `DataOutput`
      Throws:
        `IOException`
      See Also:
        `DataInput.readShort()`, `BitUtil.VH_LE_SHORT`

    - #### writeLong

          public void writeLong​(long i)
                         throws IOException

      Description copied from class: `DataOutput`
      Writes a long as eight bytes (LE byte order).
      Overrides:
        `writeLong` in class `DataOutput`
      Throws:
        `IOException`
      See Also:
        `DataInput.readLong()`, `BitUtil.VH_LE_LONG`