Business Components

oracle.jbo.domain
Class RowID

java.lang.Object
  |
  +--oracle.sql.Datum
        |
        +--oracle.sql.ROWID
              |
              +--oracle.jbo.domain.RowID

public class RowID
extends oracle.sql.ROWID
implements DomainInterface, KeyAttributeInterface, oracle.sql.CustomDatum, java.io.Serializable

This class provides a lightweight wrapper for oracle.sql.RowID, the Java representation of the ROWID database type. This wrapper allows an instance of the oracle.sql.RowID to be used as an immutable Domain object.

RowID objects consist of data (a byte array) and a Domain type code. Domain row IDs extend SQL row IDs by being convertable to JDBC values.

The oracle.jbo.domain.RowID class is the Java representation of the underlying database type that you must use if you want to exploit the domain feature of Business Components for Java.

Since:
JDeveloper 3.0
See Also:
Serialized Form

Constructor Summary
RowID()
          Creates a default RowID Domain object.
RowID(byte[] value)
          Internal: Applications should not invoke this constructor.
RowID(java.lang.String value)
          Internal: Applications should not invoke this constructor.
 
Method Summary
 boolean equals(java.lang.Object other)
          Tests this for equality with another object.
static oracle.sql.CustomDatumFactory getCustomDatumFactory()
          Internal: Applications should not invoke this method.
 java.lang.Object getData()
          Internal: Applications should not invoke this method.
 int hashCode()
          Computes a hash code for this.
 void setContext(DomainOwnerInterface owner, Transaction trans, java.lang.Object ctx)
          Internal: Applications should not invoke this method.
 oracle.sql.Datum toDatum(oracle.jdbc.driver.OracleConnection conn)
          Internal: Applications should not invoke this method.
 java.lang.String toString()
          For testing purposes only: converts this to a textual representation.
 
Methods inherited from class oracle.sql.ROWID
isConvertibleTo, makeJdbcArray, stringValue, toJdbc
 
Methods inherited from class oracle.sql.Datum
asciiStreamValue, bigDecimalValue, binaryStreamValue, booleanValue, byteValue, characterStreamValue, compareBytes, dateValue, doubleValue, floatValue, getBytes, getLength, getStream, intValue, longValue, setBytes, setShareBytes, shareBytes, timestampValue, timeValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RowID

public RowID()
Creates a default RowID Domain object.

This constructor does not create a null RowID. To create a null RowID, use one of the NullValue objects to indicate null.


RowID

public RowID(byte[] value)
Internal: Applications should not invoke this constructor.

Creates a RowID Domain object from the given byte array.

Parameters:
value - a value returned by a previous call to getBytes() on an SQL object compatable with RowID.
value - byte array containing the value of the RowID.

RowID

public RowID(java.lang.String value)
Internal: Applications should not invoke this constructor.

Creates a RowID Domain object from a Java String.

Parameters:
value - a textual representation of a RowID.
Throws:
java.sql.SQLException - if the representation is invalid.
Method Detail

getCustomDatumFactory

public static oracle.sql.CustomDatumFactory getCustomDatumFactory()
Internal: Applications should not invoke this method.

Initializes the RowID Domain. This method is invoked when Business Components for Java is initialized.

Returns:
the CustomDatumFactory for the RowID Domain.

toDatum

public oracle.sql.Datum toDatum(oracle.jdbc.driver.OracleConnection conn)
                         throws java.sql.SQLException
Internal: Applications should not invoke this method.

Converts this RowID Domain object back into an SQL ROWID object.

Specified by:
toDatum in interface oracle.sql.CustomDatum
Parameters:
conn - Not used.
Returns:
A Datum containing ROWID object.
Throws:
java.sql.SQLException - Never.

getData

public java.lang.Object getData()
Internal: Applications should not invoke this method.

Converts this to a JDBC object.

Specified by:
getData in interface DomainInterface
Returns:
the JDBC representation of this, or null, if the conversion fails.

setContext

public void setContext(DomainOwnerInterface owner,
                       Transaction trans,
                       java.lang.Object ctx)
Internal: Applications should not invoke this method.
Specified by:
setContext in interface DomainInterface

toString

public java.lang.String toString()
For testing purposes only: converts this to a textual representation.
Overrides:
toString in class java.lang.Object

equals

public boolean equals(java.lang.Object other)
Tests this for equality with another object.

The argument is converted to a RowID object, if necessary.

Overrides:
equals in class oracle.sql.Datum
Parameters:
other - an arbitrary Object.
Returns:
true if conversion was successful and the converted argument is identical to this.

hashCode

public int hashCode()
Computes a hash code for this.
Overrides:
hashCode in class java.lang.Object
Returns:
the hash code of this.

Business Components