planetj.database
Class BlobObject

java.lang.Object
  |
  +--planetj.database.BlobObject
All Implemented Interfaces:
Blob
Direct Known Subclasses:
UploadedFile

public class BlobObject
extends Object
implements Blob


Constructor Summary
BlobObject(byte[] pContent, int pMaxLength)
          Insert the method's description here.
 
Method Summary
static boolean byteArraysAreEqual(byte[] array1, byte[] array2)
          Insert the method's description here.
 InputStream getBinaryStream()
          Retrieves the BLOB designated by this Blob instance as a stream.
 byte[] getBytes()
          Returns as an array of bytes the BLOB value that this Blob object designates.
 byte[] getBytes(long pos, int length)
          Returns as an array of bytes part or all of the BLOB value that this Blob object designates.
 long length()
          Returns the number of bytes in the BLOB value designated by this Blob object.
 long position(Blob pattern, long start)
          Determines the byte position in the BLOB value designated by this Blob object at which pattern begins.
 long position(byte[] pattern, long start)
          Determines the byte position at which the specified byte pattern begins within the BLOB value that this Blob object represents.
 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.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlobObject

public BlobObject(byte[] pContent,
                  int pMaxLength)
Insert the method's description here. Creation date: (5/29/2003 9:19:50 AM)

Parameters:
pContent - byte[]
pMaxLength - int
Method Detail

byteArraysAreEqual

public static boolean byteArraysAreEqual(byte[] array1,
                                         byte[] array2)
Insert the method's description here. Creation date: (5/29/2003 10:22:59 AM)

Parameters:
array1 - byte[]
array2 - byte[]
Returns:
boolean

getBinaryStream

public InputStream getBinaryStream()
                            throws SQLException
Retrieves the BLOB designated by this Blob instance as a stream.

Specified by:
getBinaryStream in interface Blob
Returns:
a stream containing the BLOB data
Throws:
SQLException - if there is an error accessing the BLOB

getBytes

public byte[] getBytes()
Returns as an array of bytes the BLOB value that this Blob object designates.

Returns:
a byte array by this Blob object, starting with the byte at position pos.

getBytes

public byte[] getBytes(long pos,
                       int length)
                throws SQLException
Returns as an array of bytes part or all of the BLOB value that this Blob object designates. The byte array contains up to length consecutive bytes starting at position pos.

Specified by:
getBytes in interface Blob
Parameters:
pos - the ordinal position of the first byte in the BLOB value to be extracted; the first byte is at position 1
length - is the number of consecutive bytes to be copied
Returns:
a byte array containing up to length consecutive bytes from the BLOB value designated by this Blob object, starting with the byte at position pos.
Throws:
SQLException - if there is an error accessing the BLOB

length

public long length()
            throws SQLException
Returns the number of bytes in the BLOB value designated by this Blob object.

Specified by:
length in interface Blob
Returns:
length of the BLOB in bytes
Throws:
SQLException - if there is an error accessing the length of the BLOB

position

public long position(byte[] pattern,
                     long start)
              throws SQLException
Determines the byte position at which the specified byte pattern begins within the BLOB value that this Blob object represents. The search for patternstart.

Specified by:
position in interface Blob
Parameters:
pattern - the byte array for which to search
start - the position at which to begin searching; the first position is 1
Returns:
the position at which the pattern appears, else -1.
Throws:
SQLException - if there is an error accessing the BLOB

position

public long position(Blob pattern,
                     long start)
              throws SQLException
Determines the byte position in the BLOB value designated by this Blob object at which pattern begins. The search begins at position start.

Specified by:
position in interface Blob
Parameters:
pattern - the Blob object designating the BLOB value for which to search
start - the position in the BLOB value at which to begin searching; the first position is 1
Returns:
the position at which the pattern begins, else -1
Throws:
SQLException - if there is an error accessing the BLOB

setBinaryStream

public OutputStream setBinaryStream(long pos)
                             throws SQLException
Retrieves a stream that can be used to write to the BLOB value that this Blob object represents. The stream begins at position pos. Creation date: (5/29/2003 9:26:17 AM)

Specified by:
setBinaryStream in interface Blob
Parameters:
pos - long
Returns:
java.io.OutputStream
SQLException

setBytes

public int setBytes(long pos,
                    byte[] bytes)
             throws SQLException
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. Creation date: (5/29/2003 9:26:49 AM)

Specified by:
setBytes in interface Blob
Parameters:
pos - long
bytes - byte[]
Returns:
int
SQLException

setBytes

public int setBytes(long pos,
                    byte[] bytes,
                    int offset,
                    int len)
             throws SQLException
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. Writing starts at position pos in the BLOB value; len bytes from the given byte array are written. Creation date: (5/29/2003 9:27:11 AM)

Specified by:
setBytes in interface Blob
Parameters:
pos - long
bytes - byte[]
offset - int
len - int
Returns:
int
SQLException

truncate

public void truncate(long len)
              throws SQLException
Truncates the BLOB value that this Blob object represents to be len bytes in length. Creation date: (5/29/2003 9:27:25 AM)

Specified by:
truncate in interface Blob
Parameters:
len - long
SQLException