Top Description Fields Constructors Methods
org.apache.derby.iapi.types

public Class HarmonySerialClob

extends Object
implements Clob, Serializable, Cloneable
Class Inheritance
All Implemented Interfaces
java.lang.Cloneable, java.io.Serializable, java.sql.Clob
Imports
java.io.CharArrayReader, .IOException, .InputStream, .OutputStream, .Reader, .Serializable, .Writer, java.sql.Clob, .SQLException, org.apache.derby.shared.common.reference.SQLState, org.apache.derby.shared.common.error.StandardException

Copied from the Harmony project's implementation of javax.sql.rowset.serial.SerialClob at subversion revision 946981.

Field Summary

Modifier and TypeField and Description
private char[]
private Clob
private long
private long
private static final long

Constructor Summary

AccessConstructor and Description
public
public
HarmonySerialClob(char[] ch)

public

Method Summary

Modifier and TypeMethod and Description
private void
public void
free()

Implements java.sql.Clob.free.

This method releases the resources that the Clob object holds.

public InputStream
getAsciiStream()

Implements java.sql.Clob.getAsciiStream.

Retrieves the CLOB value designated by this Clob object as an ascii stream.

public Reader
getCharacterStream()

Implements java.sql.Clob.getCharacterStream.

Retrieves the CLOB value designated by this Clob object as a java.io.Reader object (or as a stream of characters).

public Reader
getCharacterStream(long
the offset to the first character of the partial value to be retrieved. The first character in the Clob is at position 1.
pos
,
long
the length in characters of the partial value to be retrieved.
length
)

Implements java.sql.Clob.getCharacterStream.

Returns a Reader object that contains a partial Clob value, starting with the character specified by pos, which is length characters in length.

public String
getSubString(long
the first character of the substring to be extracted. The first character is at position 1.
pos
,
int
the number of consecutive characters to be copied; the value for length must be 0 or greater
length
)

Implements java.sql.Clob.getSubString.

Retrieves a copy of the specified substring in the CLOB value designated by this Clob object.

public long
length()

Implements java.sql.Clob.length.

Retrieves the number of characters in the CLOB value designated by this Clob object.

private boolean
match(char[] chars, int start, char[] pattern)

public long
position(Clob
the Clob object for which to search
searchClob
,
long
the position at which to begin searching; the first position is 1
start
)

Implements java.sql.Clob.position.

Retrieves the character position at which the specified Clob object searchstr appears in this Clob object.

public long
position(String
the substring for which to search
searchString
,
long
the position at which to begin searching; the first position is 1
start
)

Implements java.sql.Clob.position.

Retrieves the character position at which the specified substring searchstr appears in the SQL CLOB value represented by this Clob object.

public OutputStream
setAsciiStream(long
the position at which to start writing to this CLOB object; The first position is 1
pos
)

Implements java.sql.Clob.setAsciiStream.

Retrieves a stream to be used to write Ascii characters to the CLOB value that this Clob object represents, starting at position pos.

public Writer
setCharacterStream(long
the position at which to start writing to the CLOB value; The first position is 1
pos
)

Implements java.sql.Clob.setCharacterStream.

Retrieves a stream to be used to write a stream of Unicode characters to the CLOB value that this Clob object represents, at position pos.

public int
setString(long
the position at which to start writing to the CLOB value that this Clob object represents; the first position is 1.
pos
,
String
the string to be written to the CLOB value that this Clob designates
str
)

Implements java.sql.Clob.setString.

Writes the given Java String to the CLOB value that this Clob object designates at the position pos.

public int
setString(long
the position at which to start writing to this CLOB object; The first position is 1
pos
,
String
the string to be written to the CLOB value that this Clob object represents
str
,
int
the offset into str to start reading the characters to be written
offset
,
int
the number of characters to be written
length
)

Implements java.sql.Clob.setString.

Writes len characters of str, starting at character offset, to the CLOB value that this Clob represents.

public void
truncate(long
the length, in characters, to which the CLOB value should be truncated
length
)

Implements java.sql.Clob.truncate.

Truncates the CLOB value that this Clob designates to have a length of len characters.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

bufback to summary
private char[] buf
clobback to summary
private Clob clob
lenback to summary
private long len
origLenback to summary
private long origLen
serialVersionUIDback to summary
private static final long serialVersionUID

Constructor Detail

HarmonySerialClobback to summary
public HarmonySerialClob(String raw)
HarmonySerialClobback to summary
public HarmonySerialClob(char[] ch)
HarmonySerialClobback to summary
public HarmonySerialClob(Clob clob) throws SQLException

Method Detail

checkValidationback to summary
private void checkValidation() throws SQLException
freeback to summary
public void free() throws SQLException

Implements java.sql.Clob.free.

Doc from java.sql.Clob.free.

This method releases the resources that the Clob object 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.

Exceptions
SQLException:
if an error occurs releasing the Clob's resources
getAsciiStreamback to summary
public InputStream getAsciiStream() throws SQLException

Implements java.sql.Clob.getAsciiStream.

Doc from java.sql.Clob.getAsciiStream.

Retrieves the CLOB value designated by this Clob object as an ascii stream.

Returns:InputStream

a java.io.InputStream object containing the CLOB data

Exceptions
SQLException:
if there is an error accessing the CLOB value
getCharacterStreamback to summary
public Reader getCharacterStream() throws SQLException

Implements java.sql.Clob.getCharacterStream.

Doc from java.sql.Clob.getCharacterStream.

Retrieves the CLOB value designated by this Clob object as a java.io.Reader object (or as a stream of characters).

Returns:Reader

a java.io.Reader object containing the CLOB data

Exceptions
SQLException:
if there is an error accessing the CLOB value
getCharacterStreamback to summary
public Reader getCharacterStream(long pos, long length) throws SQLException

Implements java.sql.Clob.getCharacterStream.

Doc from java.sql.Clob.getCharacterStream.

Returns a Reader object that contains a partial Clob value, starting with the character specified by pos, which is length characters in length.

Parameters
pos:long

the offset to the first character of the partial value to be retrieved. The first character in the Clob is at position 1.

length:long

the length in characters of the partial value to be retrieved.

Returns:Reader

Reader through which the partial Clob value can be read.

Exceptions
SQLException:
if pos is less than 1; or if pos is greater than the number of characters in the Clob; or if pos + length is greater than the number of characters in the Clob
getSubStringback to summary
public String getSubString(long pos, int length) throws SQLException

Implements java.sql.Clob.getSubString.

Doc from java.sql.Clob.getSubString.

Retrieves a copy of the specified substring in the CLOB value designated by this Clob object. The substring begins at position pos and has up to length consecutive characters.

Parameters
pos:long

the first character of the substring to be extracted. The first character is at position 1.

length:int

the number of consecutive characters to be copied; the value for length must be 0 or greater

Returns:String

a String that is the specified substring in the CLOB value designated by this Clob object

Exceptions
SQLException:
if there is an error accessing the CLOB value; if pos is less than 1 or length is less than 0
lengthback to summary
public long length() throws SQLException

Implements java.sql.Clob.length.

Doc from java.sql.Clob.length.

Retrieves the number of characters in the CLOB value designated by this Clob object.

Returns:long

length of the CLOB in characters

Exceptions
SQLException:
if there is an error accessing the length of the CLOB value
matchback to summary
private boolean match(char[] chars, int start, char[] pattern)
positionback to summary
public long position(Clob searchClob, long start) throws SQLException

Implements java.sql.Clob.position.

Doc from java.sql.Clob.position.

Retrieves the character position at which the specified Clob object searchstr appears in this Clob object. The search begins at position start.

Parameters
searchClob:Clob

the Clob object for which to search

start:long

the position at which to begin searching; the first position is 1

Returns:long

the position at which the Clob object appears or -1 if it is not present; the first position is 1

Exceptions
SQLException:
if there is an error accessing the CLOB value or if start is less than 1
positionback to summary
public long position(String searchString, long start) throws SQLException, SQLException

Implements java.sql.Clob.position.

Doc from java.sql.Clob.position.

Retrieves the character position at which the specified substring searchstr appears in the SQL CLOB value represented by this Clob object. The search begins at position start.

Parameters
searchString:String

the substring for which to search

start:long

the position at which to begin searching; the first position is 1

Returns:long

the position at which the substring appears or -1 if it is not present; the first position is 1

Exceptions
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
setAsciiStreamback to summary
public OutputStream setAsciiStream(long pos) throws SQLException

Implements java.sql.Clob.setAsciiStream.

Doc from java.sql.Clob.setAsciiStream.

Retrieves a stream to be used to write Ascii characters to the CLOB value that this Clob object represents, starting at position pos. Characters written to the stream will overwrite the existing characters in the Clob object starting at the position pos. If the end of the Clob value is reached while writing characters to the stream, then the length of the Clob value will be increased to accommodate the extra characters.

Note

If the value specified for pos is greater than the length+1 of the CLOB value then the behavior is undefined. Some JDBC drivers may throw an SQLException while other drivers may support this operation.

Parameters
pos:long

the position at which to start writing to this CLOB object; The first position is 1

Returns:OutputStream

the stream to which ASCII encoded characters can be written

Exceptions
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
setCharacterStreamback to summary
public Writer setCharacterStream(long pos) throws SQLException

Implements java.sql.Clob.setCharacterStream.

Doc from java.sql.Clob.setCharacterStream.

Retrieves a stream to be used to write a stream of Unicode characters to the CLOB value that this Clob object represents, at position pos. Characters written to the stream will overwrite the existing characters in the Clob object starting at the position pos. If the end of the Clob value is reached while writing characters to the stream, then the length of the Clob value will be increased to accommodate the extra characters.

Note

If the value specified for pos is greater than the length+1 of the CLOB value then the behavior is undefined. Some JDBC drivers may throw an SQLException while other drivers may support this operation.

Parameters
pos:long

the position at which to start writing to the CLOB value; The first position is 1

Returns:Writer

a stream to which Unicode encoded characters can be written

Exceptions
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
setStringback to summary
public int setString(long pos, String str) throws SQLException

Implements java.sql.Clob.setString.

Doc from java.sql.Clob.setString.

Writes the given Java String to the CLOB value that this Clob object designates at the position pos. The string will overwrite the existing characters in the Clob object starting at the position pos. If the end of the Clob value is reached while writing the given string, then the length of the Clob value will be increased to accommodate the extra characters.

Note

If the value specified for pos is greater than the length+1 of the CLOB value then the behavior is undefined. Some JDBC drivers may throw an SQLException while other drivers may support this operation.

Parameters
pos:long

the position at which to start writing to the CLOB value that this Clob object represents; the first position is 1.

str:String

the string to be written to the CLOB value that this Clob designates

Returns:int

the number of characters written

Exceptions
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
setStringback to summary
public int setString(long pos, String str, int offset, int length) throws SQLException

Implements java.sql.Clob.setString.

Doc from java.sql.Clob.setString.

Writes len characters of str, starting at character offset, to the CLOB value that this Clob represents. The string will overwrite the existing characters in the Clob object starting at the position pos. If the end of the Clob value is reached while writing the given string, then the length of the Clob value will be increased to accommodate the extra characters.

Note

If the value specified for pos is greater than the length+1 of the CLOB value then the behavior is undefined. Some JDBC drivers may throw an SQLException while other drivers may support this operation.

Parameters
pos:long

the position at which to start writing to this CLOB object; The first position is 1

str:String

the string to be written to the CLOB value that this Clob object represents

offset:int

the offset into str to start reading the characters to be written

length:int

the number of characters to be written

Returns:int

the number of characters written

Exceptions
SQLException:
if there is an error accessing the CLOB value or if pos is less than 1
truncateback to summary
public void truncate(long length) throws SQLException

Implements java.sql.Clob.truncate.

Doc from java.sql.Clob.truncate.

Truncates the CLOB value that this Clob designates to have a length of len characters.

Note

If the value specified for pos is greater than the length+1 of the CLOB value then the behavior is undefined. Some JDBC drivers may throw an SQLException while other drivers may support this operation.

Parameters
length:long

the length, in characters, to which the CLOB value should be truncated

Exceptions
SQLException:
if there is an error accessing the CLOB value or if len is less than 0