Package org.firebirdsql.jdbc

## Interface FirebirdBlob.BlobOutputStream

- All Known Implementing Classes:
    `FBBlobOutputStream`
  Enclosing interface:
    FirebirdBlob

      public static interface FirebirdBlob.BlobOutputStream

  Blob output stream. This interface defines methods to write contents of the Blob field. Some method signatures are copied from the `OutputStream` only because it is abstract class and not interface that we can extend.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Close this stream.
    `FirebirdBlob` | `getBlob()` | Get instance of `FirebirdBlob` to which this stream belongs to.
    `long` | `length()` | Get Blob length.
    `void` | `write​(byte[] buffer, int offset, int length)` | Write data from the buffer into this stream.
    `void` | `write​(int data)` | Write single byte into the stream.

- - ### Method Detail

    - #### getBlob

          FirebirdBlob getBlob()

      Get instance of `FirebirdBlob` to which this stream belongs to.

      Note, code

           FirebirdBlob.BlobOutputStream otherStream = (FirebirdBlob.BlobOutputStream)
               inputStream.getBlob().setBinaryStream(1);

      will return new stream object.
      Returns:
        instance of `FirebirdBlob`.

    - #### close

          void close()
              throws java.io.IOException

      Close this stream. Calling this method closes Blob stream and moves Blob from temporary into permanent state making any further content updates impossible.
      Throws:
        `java.io.IOException` - if I/O error occurs.

    - #### length

          long length()
               throws java.io.IOException

      Get Blob length. This method is the only available way to obtain length of a Blob that is in temporary state,
      Returns:
        length of the blob.
      Throws:
        `java.io.IOException` - if I/O error occurs.

    - #### write

          void write​(byte[] buffer,
                     int offset,
                     int length)
              throws java.io.IOException

      Write data from the buffer into this stream.
      Parameters:
        `buffer` - buffer from which data should be written.
        `offset` - offset in the buffer.
        `length` - number of bytes to write.
      Throws:
        `java.io.IOException` - if I/O error occurs.

    - #### write

          void write​(int data)
              throws java.io.IOException

      Write single byte into the stream.
      Parameters:
        `data` - data to write, only lowest 8 bits are written.
      Throws:
        `java.io.IOException` - if I/O error occurs.