Oracle9i Business Components for Java Oracle Domains API Reference
Oracle9i Jdeveloper (9.0.4)
B10392-01


oracle.jbo.domain
Class Array

java.lang.Object
  |
  +--oracle.jbo.domain.Array
All Implemented Interfaces:
java.io.Serializable

public class Array
extends java.lang.Object
implements java.io.Serializable

This class provides a lightweight wrapper for oracle.sql.ARRAY, the Java representation of the ARRAY database type. This wrapper allows an instance of the oracle.sql.ARRAY to be used as an immutable Domain object. This class also provides a wrapper for the data that comes from nested tables and nested arrays.

Since:
JDeveloper 3.0
See Also:
Serialized Form

Field Summary
protected  int mOwnerAttrIndex
          Index of the attribute in the domain owner's container.

 

Constructor Summary
protected Array()
          Constructs an instance of this class.
  Array(ArrayDescriptor descriptor, java.sql.Connection conn, byte[] bytes)
          Internal: Applications should not use this constructor.
  Array(ArrayDescriptor type, java.sql.Connection conn, java.lang.Object elements)
          Internal: Applications should not use this constructor.
  Array(java.lang.Object[] elements)
           

 

Method Summary
 void domainToBeModified(DomainInterface d)
          Notification method that this domain calls whenever any of its attribute values are about to be modified.
 boolean equals(java.lang.Object obj)
          Tests this for equality with another object.
 java.lang.Object[] getArray()
          Returns the elements of this array into an Object array.
static CustomDatumFactory getCustomDatumFactory()
          Internal: Applications should not use this method.
 java.lang.Object getData()
          Internal: Applications should not use this method.
 java.lang.Class getElemType()
           
protected  java.lang.String getElemXMLElementTag()
          Returns the classname of this domain, appended with the name of the attribute as XML-element tag for this domain-attribute.
 java.lang.Object[] getInternalArray()
           
 DomainOwnerInterface getOwner()
           
 int getOwnerAttributeIndex()
           
 java.lang.String getRemoteIdString()
           
 long getSize()
           
 Node getXMLContentNode(Document xmlDoc)
          Creates the XML node in the given xml document for this domain's data.
static XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
           
protected  java.lang.String getXMLElementTag()
          Returns this class name as XML-element tag for this Array domain object.
protected  boolean isElemXMLCData()
          Returns false always.
 void loadFromDatabase(Transaction transaction)
          Internal: Applications should not use this method.
 ResponseValues marshal()
           
 void prepareForDML(java.lang.Object context)
           
 java.lang.String printXMLDefinition(java.util.Hashtable allDefs, java.io.PrintWriter pw, boolean bContainees)
          Prints the DTD info for this domain in the given print writer.
protected  void readAttrsFromXML(Element rowElt)
          Reads all the attribute values from the XML-element and sets them into this row.
 void saveToDatabase(Transaction transaction)
          Internal: Applications should not use this method.
 void saveToDatabase(Transaction transaction, java.lang.Object postedSQLObject)
          Internal: Applications should not use this method.
 void setContext(DomainOwnerInterface owner, Transaction trans, java.lang.Object ctx)
          Internal: Applications should not use this method.
 void syncClientLob(LobInterface old)
           
 void syncServerLob(LobInterface oldObj)
           
 Datum toDatum(oracle.jdbc.driver.OracleConnection conn)
          Internal: Applications should not use this method.
 void useElementType(java.lang.Class claz)
          If this array's element Type is not already set, use the given class as the element Type for this array.

 

Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

mOwnerAttrIndex

protected int mOwnerAttrIndex
Index of the attribute in the domain owner's container.
Constructor Detail

Array

protected Array()
         throws java.sql.SQLException
Constructs an instance of this class.

Array

public Array(java.lang.Object[] elements)

Array

public Array(ArrayDescriptor type,
             java.sql.Connection conn,
             java.lang.Object elements)
      throws java.sql.SQLException
Internal: Applications should not use this constructor.

Array

public Array(ArrayDescriptor descriptor,
             java.sql.Connection conn,
             byte[] bytes)
      throws java.sql.SQLException
Internal: Applications should not use this constructor.
Method Detail

getCustomDatumFactory

public static CustomDatumFactory getCustomDatumFactory()
Internal: Applications should not use this method.

useElementType

public void useElementType(java.lang.Class claz)
If this array's element Type is not already set, use the given class as the element Type for this array.

toDatum

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

getData

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

domainToBeModified

public void domainToBeModified(DomainInterface d)
Notification method that this domain calls whenever any of its attribute values are about to be modified. This Domain should always notify its owner.
Parameters:
d - the domain being modified.

setContext

public void setContext(DomainOwnerInterface owner,
                       Transaction trans,
                       java.lang.Object ctx)
Internal: Applications should not use this method.

getRemoteIdString

public java.lang.String getRemoteIdString()

getArray

public java.lang.Object[] getArray()
Returns the elements of this array into an Object array. The elements are converted to the Java types corresponding to the SQL type of the data in the original array.
Returns:
an Object array that contains the array elements.

getInternalArray

public java.lang.Object[] getInternalArray()

getElemType

public java.lang.Class getElemType()

equals

public boolean equals(java.lang.Object obj)
Tests this for equality with another object.
Overrides:
equals in class java.lang.Object
Parameters:
obj - an arbitrary Object.
Returns:
true if conversion was successful and the converted argument is identical to this.

getXMLElementTag

protected java.lang.String getXMLElementTag()
Returns this class name as XML-element tag for this Array domain object. Override this method to return a custom XML-element tag for this domain.

getElemXMLElementTag

protected java.lang.String getElemXMLElementTag()
Returns the classname of this domain, appended with the name of the attribute as XML-element tag for this domain-attribute. Override this method to return a custom XML-element tag for the given attribute.

isElemXMLCData

protected boolean isElemXMLCData()
Returns false always. Override to determine whether the given domain-attribute is to be rendered in CDATA format in xml.

getXMLContentNode

public Node getXMLContentNode(Document xmlDoc)
Creates the XML node in the given xml document for this domain's data.
Parameters:
xmlDoc - the XML document in which the node is to be created.

readAttrsFromXML

protected void readAttrsFromXML(Element rowElt)
Reads all the attribute values from the XML-element and sets them into this row. If the XML has a process instruction of the form: <?bc4j remove?> then, invokes remove() on this row.
Parameters:
rowElt - the XML element from which the attribute values should be read.

printXMLDefinition

public java.lang.String printXMLDefinition(java.util.Hashtable allDefs,
                                           java.io.PrintWriter pw,
                                           boolean bContainees)
Prints the DTD info for this domain in the given print writer. Returns the DTD string to be added to this domain's container entity/domain.

The allDefs hashtable contains predefined XML definitions and is passed by whatever calls this method.

Parameters:
allDefs - a hashtable of predefined XML definitions passed from whatever calls this method.
pw - print writer into which the defnition is being printed.
bContainees - if true, prints definitions of contained objects.

getXMLDomainFactory

public static XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)

loadFromDatabase

public void loadFromDatabase(Transaction transaction)
                      throws java.lang.Exception
Internal: Applications should not use this method.

Loads the actual data of the LOB-type database attribute into memory.

The transaction argument is needed to perform an additional query into the database to extract the data.

This method does not need to be invoked for a new attribute.

Parameters:
transaction - the oracle.jbo.server.DBTransactionImpl of the current Application Module.
java.lang.Exception

saveToDatabase

public void saveToDatabase(Transaction transaction)
                    throws java.lang.Exception
Internal: Applications should not use this method.

Saves data in memory to a database LOB-type attribute.

The transaction argument is is needed to perform an additional query into the database to write the data.

This method does not need to be invoked if this attribute's data has not changed.

Parameters:
transaction - the oracle.jbo.server.DBTransactionImpl instance of the current Application Module.
java.lang.Exception

saveToDatabase

public void saveToDatabase(Transaction transaction,
                           java.lang.Object postedSQLObject)
                    throws java.lang.Exception
Internal: Applications should not use this method.

Uses the given transaction context to store data back into the database using the LOB-locator which should be set before this method is invoked.

java.lang.Exception

prepareForDML

public void prepareForDML(java.lang.Object context)

syncClientLob

public void syncClientLob(LobInterface old)

syncServerLob

public void syncServerLob(LobInterface oldObj)

getOwner

public DomainOwnerInterface getOwner()

getOwnerAttributeIndex

public int getOwnerAttributeIndex()

getSize

public long getSize()

marshal

public ResponseValues marshal()

Oracle9i Business Components for Java Oracle Domains API Reference
Oracle9i Jdeveloper (9.0.4)
B10392-01


 

Copyright © 1997, 2003, Oracle. All rights reserved.