org.postgresql.largeobject
Class BlobOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by org.postgresql.largeobject.BlobOutputStream
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable

public class BlobOutputStream
extends java.io.OutputStream

This implements a basic output stream that writes to a LargeObject


Constructor Summary
BlobOutputStream(LargeObject lo)
          Create an OutputStream to a large object
BlobOutputStream(LargeObject lo, int bsize)
          Create an OutputStream to a large object
 
Method Summary
 void close()
          Closes this output stream and releases any system resources associated with this stream.
 void flush()
          Flushes this output stream and forces any buffered output bytes to be written out.
 void write(byte[] buf, int off, int len)
           
 void write(int b)
           
 
Methods inherited from class java.io.OutputStream
write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlobOutputStream

public BlobOutputStream(LargeObject lo)
Create an OutputStream to a large object

Parameters:
lo - LargeObject

BlobOutputStream

public BlobOutputStream(LargeObject lo,
                        int bsize)
Create an OutputStream to a large object

Parameters:
lo - LargeObject
bsize - The size of the buffer used to improve performance
Method Detail

write

public void write(int b)
           throws java.io.IOException
Specified by:
write in class java.io.OutputStream
Throws:
java.io.IOException

write

public void write(byte[] buf,
                  int off,
                  int len)
           throws java.io.IOException
Overrides:
write in class java.io.OutputStream
Throws:
java.io.IOException

flush

public void flush()
           throws java.io.IOException
Flushes this output stream and forces any buffered output bytes to be written out. The general contract of flush is that calling it is an indication that, if any bytes previously written have been buffered by the implementation of the output stream, such bytes should immediately be written to their intended destination.

Specified by:
flush in interface java.io.Flushable
Overrides:
flush in class java.io.OutputStream
Throws:
java.io.IOException - if an I/O error occurs.

close

public void close()
           throws java.io.IOException
Closes this output stream and releases any system resources associated with this stream. The general contract of close is that it closes the output stream. A closed stream cannot perform output operations and cannot be reopened.

The close method of OutputStream does nothing.

Specified by:
close in interface java.io.Closeable
Overrides:
close in class java.io.OutputStream
Throws:
java.io.IOException - if an I/O error occurs.