com.google.appengine.api.files

## Interface RecordWriteChannel

- All Superinterfaces:
    java.lang.AutoCloseable, java.nio.channels.Channel, java.io.Closeable, java.nio.channels.WritableByteChannel

      public interface RecordWriteChannel
      extends java.nio.channels.WritableByteChannel

  A `WritableByteChannel` for writing records to a `FileWriteChannel`.

  The format of these records is defined by the leveldb log format: http://leveldb.googlecode.com/svn/trunk/doc/log_format.txt

  An instance of `RecordWriteChannel` may be obtained from the method: `FileService.openRecordWriteChannel(AppEngineFile, boolean)`.

  Just like `WritableByteChannel` If one thread initiates a write operation upon a channel then any other thread that attempts to initiate another write operation will block until the first operation is complete.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `closeFinally()` Closes the file.
    `int` | `write(java.nio.ByteBuffer src, java.lang.String sequenceKey)` Writes the data out to FileWriteChannel.

    - ### Methods inherited from interface java.nio.channels.WritableByteChannel

      `write`

    - ### Methods inherited from interface java.nio.channels.Channel

      `close, isOpen`

- - ### Method Detail

    - #### write

          int write(java.nio.ByteBuffer src,
                  java.lang.String sequenceKey)
                    throws java.io.IOException

      Writes the data out to FileWriteChannel.
      Throws:
        `java.io.IOException`
      See Also:
        `FileWriteChannel.write(ByteBuffer, String)`

    - #### closeFinally

          void closeFinally()
                            throws java.lang.IllegalStateException,
                                   java.io.IOException

      Closes the file.
      Throws:
        `java.lang.IllegalStateException`
        `java.io.IOException`
      See Also:
        `FileWriteChannel.closeFinally()`