|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.cayenne.util.MemoryBlob
public class MemoryBlob
A Blob implementation that stores content in memory.
This implementation is based on jdbcBlob from HSQLDB (copyright HSQL Development Group).
Constructor Summary | |
---|---|
MemoryBlob()
|
|
MemoryBlob(byte[] data)
Constructs a new MemoryBlob instance wrapping the given octet sequence. |
Method Summary | |
---|---|
java.io.InputStream |
getBinaryStream()
Retrieves the BLOB value designated by this Blob
instance as a stream. |
byte[] |
getBytes(long pos,
int length)
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(java.sql.Blob pattern,
long start)
Retrieves the byte position in the BLOB value designated by this
Blob object at which pattern begins. |
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. |
java.io.OutputStream |
setBinaryStream(long pos)
Always throws an exception. |
int |
setBytes(long pos,
byte[] bytes)
Always throws an exception. |
int |
setBytes(long pos,
byte[] bytes,
int offset,
int len)
Always throws an exception. |
void |
truncate(long len)
Truncates the BLOB value that this Blob object
represents to be len bytes in length. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MemoryBlob()
public MemoryBlob(byte[] data)
data
- the octet sequence representing the Blob value
CayenneRuntimeException
- if the argument is nullMethod Detail |
---|
public long length() throws java.sql.SQLException
BLOB
value designated by this
Blob
object.
length
in interface java.sql.Blob
BLOB
in bytes
java.sql.SQLException
- if there is an error accessing the length of the
BLOB
public byte[] getBytes(long pos, int length) 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
.
The official specification is ambiguous in that it does not precisely indicate the policy to be observed when pos > this.length() - length. One policy would be to retrieve the octets from pos to this.length(). Another would be to throw an exception. This implementation observes the later policy.
getBytes
in interface java.sql.Blob
pos
- the ordinal position of the first byte in the BLOB
value
to be extracted; the first byte is at position 1length
- the number of consecutive bytes to be copied
length
consecutive bytes from
the BLOB
value designated by this Blob
object, starting with the byte at position pos
java.sql.SQLException
- if there is an error accessing the BLOB
valuepublic java.io.InputStream getBinaryStream() throws java.sql.SQLException
BLOB
value designated by this Blob
instance as a stream.
getBinaryStream
in interface java.sql.Blob
BLOB
data
java.sql.SQLException
- if there is an error accessing the BLOB
valuepublic 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.Blob
pattern
- the byte array for which to searchstart
- the position at which to begin searching; the first position is 1
java.sql.SQLException
- if there is an error accessing the BLOB
public 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.Blob
pattern
- 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 1
java.sql.SQLException
- if there is an error accessing the BLOB
valuepublic int setBytes(long pos, byte[] bytes) throws java.sql.SQLException
setBytes
in interface java.sql.Blob
java.sql.SQLException
public int setBytes(long pos, byte[] bytes, int offset, int len) throws java.sql.SQLException
setBytes
in interface java.sql.Blob
java.sql.SQLException
public java.io.OutputStream setBinaryStream(long pos) throws java.sql.SQLException
setBinaryStream
in interface java.sql.Blob
java.sql.SQLException
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.Blob
len
- the length, in bytes, to which the BLOB
value that this
Blob
object represents should be truncated
java.sql.SQLException
- if there is an error accessing the BLOB
value
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |