java.io.Serializable, java.sql.Blobpublic class OPLHeapBlob
extends java.lang.Object
implements java.sql.Blob, java.io.Serializable
| Modifier and Type | Class | Description |
|---|---|---|
protected class |
OPLHeapBlob.BlobInputStream |
|
protected class |
OPLHeapBlob.BlobOutputStream |
| Constructor | Description |
|---|---|
OPLHeapBlob() |
|
OPLHeapBlob(byte[] b) |
|
OPLHeapBlob(byte[] b,
int off,
int len) |
|
OPLHeapBlob(java.io.InputStream is) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
free() |
This method frees the
Blob object and releases the resources that
it holds. |
java.io.InputStream |
getBinaryStream() |
Retrieves the
BLOB value designated by this
Blob instance as a stream. |
java.io.InputStream |
getBinaryStream(long pos,
long length) |
Returns an
InputStream object that contains a partial Blob value,
starting with the byte specified by pos, which is length bytes in length. |
byte[] |
getBytes(long pos,
int len) |
Retrieves all or part of the
BLOB
value that this Blob object represents, as an array of
bytes. |
long |
length() |
Returns the number of bytes in the
BLOB value
designated by this Blob object. |
long |
position(byte[] pattern,
long start) |
Retrieves the byte position at which the specified byte array
pattern begins within the BLOB
value that this Blob object represents. |
long |
position(java.sql.Blob pattern,
long start) |
Retrieves the byte position in the
BLOB value
designated by this Blob object at which
pattern begins. |
java.io.OutputStream |
setBinaryStream(long pos) |
Retrieves a stream that can be used to write to the
BLOB
value that this Blob object represents. |
int |
setBytes(long pos,
byte[] bytes) |
Writes the given array of bytes to the
BLOB value that
this Blob object represents, starting at position
pos, and returns the number of bytes written. |
int |
setBytes(long pos,
byte[] bytes,
int offset,
int len) |
Writes all or part of the given
byte array to the
BLOB value that this Blob object represents
and returns the number of bytes written. |
void |
truncate(long len) |
Truncates the
BLOB value that this Blob
object represents to be len bytes in length. |
public OPLHeapBlob()
public OPLHeapBlob(byte[] b)
public OPLHeapBlob(byte[] b,
int off,
int len)
public OPLHeapBlob(java.io.InputStream is)
throws java.sql.SQLException
java.sql.SQLExceptionpublic long length()
throws java.sql.SQLException
BLOB value
designated by this Blob object.length in interface java.sql.BlobBLOB in bytesjava.sql.SQLException - if there is an error accessing the
length of the BLOBpublic byte[] getBytes(long pos,
int len)
throws java.sql.SQLException
BLOB
value that this Blob object represents, as an array of
bytes. This byte array contains up to length
consecutive bytes starting at position pos.getBytes in interface java.sql.Blobpos - the ordinal position of the first byte in the
BLOB value to be extracted; the first byte is at
position 1len - the number of consecutive bytes to be copiedlength
consecutive bytes from the BLOB value designated
by this Blob object, starting with the
byte at position posjava.sql.SQLException - if there is an error accessing the
BLOB valuesetBytes(long, byte[])public java.io.InputStream getBinaryStream()
throws java.sql.SQLException
BLOB value designated by this
Blob instance as a stream.getBinaryStream in interface java.sql.BlobBLOB datajava.sql.SQLException - if there is an error accessing the
BLOB valuesetBinaryStream(long)public long position(byte[] pattern,
long start)
throws java.sql.SQLException
pattern begins within the BLOB
value that this Blob object represents. The
search for pattern begins at position
start.position in interface java.sql.Blobpattern - the byte array for which to searchstart - the position at which to begin searching; the
first position is 1java.sql.SQLException - if there is an error accessing the
BLOBpublic long position(java.sql.Blob pattern,
long start)
throws java.sql.SQLException
BLOB value
designated by this Blob object at which
pattern begins. The search begins at position
start.position in interface java.sql.Blobpattern - the Blob object designating
the BLOB value for which to searchstart - the position in the BLOB value
at which to begin searching; the first position is 1java.sql.SQLException - if there is an error accessing the
BLOB valuepublic int setBytes(long pos,
byte[] bytes)
throws java.sql.SQLException
BLOB value that
this Blob object represents, starting at position
pos, and returns the number of bytes written.setBytes in interface java.sql.Blobpos - the position in the BLOB object at which
to start writingbytes - the array of bytes to be written to the BLOB
value that this Blob object representsjava.sql.SQLException - if there is an error accessing the
BLOB valuegetBytes(long, int)public int setBytes(long pos,
byte[] bytes,
int offset,
int len)
throws java.sql.SQLException
byte array to the
BLOB value that this Blob object represents
and returns the number of bytes written.
Writing starts at position pos in the BLOB
value; len bytes from the given byte array are written.setBytes in interface java.sql.Blobpos - the position in the BLOB object at which
to start writingbytes - the array of bytes to be written to this BLOB
objectoffset - the offset into the array bytes at which
to start reading the bytes to be setlen - the number of bytes to be written to the BLOB
value from the array of bytes bytesjava.sql.SQLException - if there is an error accessing the
BLOB valuegetBytes(long, int)public java.io.OutputStream setBinaryStream(long pos)
throws java.sql.SQLException
BLOB
value that this Blob object represents. The stream begins
at position pos.setBinaryStream in interface java.sql.Blobpos - the position in the BLOB value at which
to start writingjava.io.OutputStream object to which data can
be writtenjava.sql.SQLException - if there is an error accessing the
BLOB valuegetBinaryStream()public void truncate(long len)
throws java.sql.SQLException
BLOB value that this Blob
object represents to be len bytes in length.truncate in interface java.sql.Bloblen - the length, in bytes, to which the BLOB value
that this Blob object represents should be truncatedjava.sql.SQLException - if there is an error accessing the
BLOB valuepublic void free()
throws java.sql.SQLException
Blob object and releases the resources that
it holds. The object is invalid once the free
method is called.
After free has been called, any attempt to invoke a
method other than free will result in a SQLException
being thrown. If free is called multiple times, the subsequent
calls to free are treated as a no-op.
free in interface java.sql.Blobjava.sql.SQLException - if an error occurs releasing
the Blob's resourcesjava.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support
this methodpublic java.io.InputStream getBinaryStream(long pos,
long length)
throws java.sql.SQLException
InputStream object that contains a partial Blob value,
starting with the byte specified by pos, which is length bytes in length.getBinaryStream in interface java.sql.Blobpos - the offset to the first byte of the partial value to be retrieved.
The first byte in the Blob is at position 1length - the length in bytes of the partial value to be retrievedInputStream through which the partial Blob value can be read.java.sql.SQLException - if pos is less than 1 or if pos is greater than the number of bytes
in the Blob or if pos + length is greater than the number of bytes
in the Blobjava.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support
this method