Business Components

oracle.jbo.domain
Class ClobDomain

oracle.jbo.domain.ClobDomain
All Implemented Interfaces:
java.io.Serializable

public class ClobDomain
implements java.io.Serializable

This class provides a lightweight wrapper for oracle.sql.Clob, the Java representation of the CLOB database type. This wrapper allows an instance of the oracle.sql.Clob to be used as a domain object.

Since:
JDeveloper 3.0
See Also:
Serialized Form

Constructor Summary
ClobDomain()
          Constructor for this class.
ClobDomain(byte[] data)
          Constructs an instance of this class, given a byte array.
ClobDomain(CLOB clob)
          Constructs an instance of this class, given a CLOB object.
ClobDomain(CLOB clob, byte[] clobData)
          Internal: Applications should not use this constructor.
ClobDomain(ClobDomain nclob, byte[] clobData)
          Creates an instance of this class with data as described in clobData and using the transaction context from clob to use the clob-locator in the database.
ClobDomain(oracle.svcmsg.ResponseValues respVals)
           
ClobDomain(java.lang.String str)
          Constructs an instance of this class, given a string.
 
Method Summary
static CLOB createEmptyCLOB(java.lang.Object context)
          Creates an empty CLOB object.
 boolean equals(java.lang.Object obj)
          Converts all the data into a String and compares the two strings.
 java.io.OutputStream getAsciiOutputStream()
          Write ascii stream to the CLOB.
 java.io.InputStream getAsciiStream()
          Gets the CLOB value designated by this Clob object as a stream of Ascii bytes.
 int getBufferSize()
          Get ideal LOB db access buffer size.
 java.io.Writer getCharacterOutputStream()
          Returns a Writer for Unicode stream to the CLOB that uses the default character encoding.
 java.io.Writer getCharacterOutputStream(java.lang.String enc)
          Returns a Writer for Unicode stream to the CLOB that uses the named character encoding
 java.io.Reader getCharacterStream()
          Gets the Clob contents as a Unicode stream that uses the default character encoding.
 java.io.Reader getCharacterStream(java.lang.String enc)
          Gets the Clob contents as a Unicode stream that uses the named character encoding.
 long getLength()
          Returns the number of characters in the CLOB value designated by this Clob object.
 java.lang.String getSubString(long offset, int length)
          Returns a copy of the specified substring in the CLOB value designated by this Clob object.
static oracle.jbo.domain.XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
          Internal: Applications should not use this method.
 void prepareForDML(java.lang.Object context)
          Internal: Applications should not use this method.
 void useCLOB(CLOB newClob)
          Internal: Applications should not use this method.
 

Constructor Detail

ClobDomain

public ClobDomain()
Constructor for this class.

ClobDomain

public ClobDomain(java.lang.String str)
Constructs an instance of this class, given a string.
Parameters:
a - string to be used for a ClobDomain.

ClobDomain

public ClobDomain(byte[] data)
Constructs an instance of this class, given a byte array.
Parameters:
a - byte array to be used for a ClobDomain.

ClobDomain

public ClobDomain(CLOB clob)
Constructs an instance of this class, given a CLOB object.
Parameters:
a - CLOB to be used for a ClobDomain.

ClobDomain

public ClobDomain(CLOB clob,
                  byte[] clobData)
Internal: Applications should not use this constructor.

Creates an instance of this class with data as described in clobData and using the transaction context from clob to use the CLOB locator in the database.

Parameters:
clob - name of the CLOB to use as a ClobDomain.
clobData - data to fill the CLOB.

ClobDomain

public ClobDomain(ClobDomain nclob,
                  byte[] clobData)
Creates an instance of this class with data as described in clobData and using the transaction context from clob to use the clob-locator in the database.

This constructor should be used by applications using the framework to create ClobDomain objects.

Parameters:
clob - name of the CLOB to use as a ClobDomain.
clobData - data to fill the CLOB.

ClobDomain

public ClobDomain(oracle.svcmsg.ResponseValues respVals)
Method Detail

useCLOB

public void useCLOB(CLOB newClob)
Internal: Applications should not use this method.

If this object does not have a transaction context, shares the transaction and CLOB locator from newClob.

Parameters:
newClob - name of the CLOB with which this CLOB will share its transaction and CLOB locator information.

prepareForDML

public void prepareForDML(java.lang.Object context)
Internal: Applications should not use this method.

equals

public boolean equals(java.lang.Object obj)
Converts all the data into a String and compares the two strings. This is a default implementation of equals which could be overridden to perform more scalable application-specific comparision.

Parameters:
obj - the object to compare to this ClobDomain.

getXMLDomainFactory

public static oracle.jbo.domain.XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
Internal: Applications should not use this method.

createEmptyCLOB

public static CLOB createEmptyCLOB(java.lang.Object context)
Creates an empty CLOB object.

Parameters:
context - an internal framework context.

getSubString

public java.lang.String getSubString(long offset,
                                     int length)
Returns a copy of the specified substring in the CLOB value designated by this Clob object. The substring begins at position offset and has up to length consecutive characters.
Parameters:
offset - the first character of the substring to be extracted. The first character is at position 0.
length - the number of consecutive characters to be copied
Returns:
a String that is the specified substring in the CLOB value designated by this Clob ob ject
Throws:
java.sql.SQLException - if there is an error accessing the CLOB

getAsciiOutputStream

public java.io.OutputStream getAsciiOutputStream()
Write ascii stream to the CLOB.
Returns:
a ascii output stream.

getAsciiStream

public java.io.InputStream getAsciiStream()
Gets the CLOB value designated by this Clob object as a stream of Ascii bytes.
Returns:
an ascii stream containing the CLOB data CLOB value

getCharacterOutputStream

public java.io.Writer getCharacterOutputStream()
Returns a Writer for Unicode stream to the CLOB that uses the default character encoding.
Returns:
a Unicode character output stream.

getCharacterOutputStream

public java.io.Writer getCharacterOutputStream(java.lang.String enc)
Returns a Writer for Unicode stream to the CLOB that uses the named character encoding
Returns:
a Unicode character output stream.

getCharacterStream

public java.io.Reader getCharacterStream()
Gets the Clob contents as a Unicode stream that uses the default character encoding.
Returns:
a Unicode stream containing the CLOB data
Throws:
java.sql.SQLException - if there is an error accessing the CLOB

getCharacterStream

public java.io.Reader getCharacterStream(java.lang.String enc)
Gets the Clob contents as a Unicode stream that uses the named character encoding.
Returns:
a Unicode stream containing the CLOB data
Throws:
java.sql.SQLException - if there is an error accessing the CLOB

getLength

public long getLength()
Returns the number of characters in the CLOB value designated by this Clob object.
Returns:
length of the CLOB in characters

getBufferSize

public int getBufferSize()
Get ideal LOB db access buffer size.
Returns:
the size in terms of characters.

Business Components