org.h2.jdbc
Class JdbcClob

java.lang.Object
  extended by org.h2.message.TraceObject
      extended by org.h2.jdbc.JdbcClob
All Implemented Interfaces:
java.sql.Clob

public class JdbcClob
extends TraceObject
implements java.sql.Clob

Represents a CLOB value.


Field Summary
 
Fields inherited from class org.h2.message.TraceObject
ARRAY, BLOB, CALLABLE_STATEMENT, CLOB, CONNECTION, DATA_SOURCE, DATABASE_META_DATA, PARAMETER_META_DATA, PREPARED_STATEMENT, RESULT_SET, RESULT_SET_META_DATA, SAVEPOINT, SQL_EXCEPTION, STATEMENT, trace, XA_DATA_SOURCE, XA_RESOURCE, XID
 
Constructor Summary
JdbcClob(JdbcConnection conn, Value value, int id)
          INTERNAL
 
Method Summary
 void free()
          Release all resources of this object.
 java.io.InputStream getAsciiStream()
          Returns the input stream.
 java.io.Reader getCharacterStream()
          Returns the reader.
 java.lang.String getSubString(long pos, int length)
          Returns a substring.
 long length()
          Returns the length.
 long position(java.sql.Clob clobPattern, long start)
          [Not supported] Searches a pattern and return the position.
 long position(java.lang.String pattern, long start)
          [Not supported] Searches a pattern and return the position.
 java.io.OutputStream setAsciiStream(long pos)
          [Not supported] Returns an output stream.
 java.io.Writer setCharacterStream(long pos)
          Get a writer to update the Clob.
 int setString(long pos, java.lang.String str)
          Fills the Clob.
 int setString(long pos, java.lang.String str, int offset, int len)
          [Not supported] Sets a substring.
 java.lang.String toString()
          INTERNAL
 void truncate(long len)
          [Not supported] Truncates the object.
 
Methods inherited from class org.h2.message.TraceObject
debugCode, debugCodeAssign, debugCodeCall, debugCodeCall, debugCodeCall, getNextId, getTrace, getTraceId, getTraceObjectName, isDebugEnabled, isInfoEnabled, logAndConvert, quote, quoteArray, quoteBigDecimal, quoteBytes, quoteDate, quoteIntArray, quoteMap, quoteTime, quoteTimestamp, setTrace, unsupported
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JdbcClob

public JdbcClob(JdbcConnection conn,
                Value value,
                int id)
INTERNAL

Method Detail

length

public long length()
            throws java.sql.SQLException
Returns the length.

Specified by:
length in interface java.sql.Clob
Returns:
the length
Throws:
java.sql.SQLException

truncate

public void truncate(long len)
              throws java.sql.SQLException
[Not supported] Truncates the object.

Specified by:
truncate in interface java.sql.Clob
Throws:
java.sql.SQLException

getAsciiStream

public java.io.InputStream getAsciiStream()
                                   throws java.sql.SQLException
Returns the input stream.

Specified by:
getAsciiStream in interface java.sql.Clob
Returns:
the input stream
Throws:
java.sql.SQLException

setAsciiStream

public java.io.OutputStream setAsciiStream(long pos)
                                    throws java.sql.SQLException
[Not supported] Returns an output stream.

Specified by:
setAsciiStream in interface java.sql.Clob
Throws:
java.sql.SQLException

getCharacterStream

public java.io.Reader getCharacterStream()
                                  throws java.sql.SQLException
Returns the reader.

Specified by:
getCharacterStream in interface java.sql.Clob
Returns:
the reader
Throws:
java.sql.SQLException

setCharacterStream

public java.io.Writer setCharacterStream(long pos)
                                  throws java.sql.SQLException
Get a writer to update the Clob. This is only supported for new, empty Clob objects that were created with Connection.createClob() or createNClob(). The Clob is created in a separate thread, and the object is only updated when Writer.close() is called. The position must be 1, meaning the whole Clob data is set.

Specified by:
setCharacterStream in interface java.sql.Clob
Parameters:
pos - where to start writing (the first character is at position 1)
Returns:
a writer
Throws:
java.sql.SQLException

getSubString

public java.lang.String getSubString(long pos,
                                     int length)
                              throws java.sql.SQLException
Returns a substring.

Specified by:
getSubString in interface java.sql.Clob
Parameters:
pos - the position (the first character is at position 1)
length - the number of characters
Returns:
the string
Throws:
java.sql.SQLException

setString

public int setString(long pos,
                     java.lang.String str)
              throws java.sql.SQLException
Fills the Clob. This is only supported for new, empty Clob objects that were created with Connection.createClob() or createNClob(). The position must be 1, meaning the whole Clob data is set.

Specified by:
setString in interface java.sql.Clob
Parameters:
pos - where to start writing (the first character is at position 1)
str - the string to add
Returns:
the length of the added text
Throws:
java.sql.SQLException

setString

public int setString(long pos,
                     java.lang.String str,
                     int offset,
                     int len)
              throws java.sql.SQLException
[Not supported] Sets a substring.

Specified by:
setString in interface java.sql.Clob
Throws:
java.sql.SQLException

position

public long position(java.lang.String pattern,
                     long start)
              throws java.sql.SQLException
[Not supported] Searches a pattern and return the position.

Specified by:
position in interface java.sql.Clob
Throws:
java.sql.SQLException

position

public long position(java.sql.Clob clobPattern,
                     long start)
              throws java.sql.SQLException
[Not supported] Searches a pattern and return the position.

Specified by:
position in interface java.sql.Clob
Throws:
java.sql.SQLException

free

public void free()
Release all resources of this object.


toString

public java.lang.String toString()
INTERNAL

Overrides:
toString in class java.lang.Object