public class Array extends java.lang.Object implements LobInterface, DomainOwnerInterface, XMLDomainInterface, oracle.jdbc.OracleData, oracle.sql.ORAData, java.io.Serializable, MarshalledDomain, Disconnectable
Modifier and Type | Field and Description |
---|---|
protected int |
mOwnerAttrIndex
Index of the attribute in the domain owner's container.
|
static java.lang.String |
XML_ELEM_TYPE |
static java.lang.String |
XML_SQL_TYPE |
Modifier | Constructor and Description |
---|---|
protected |
Array()
Constructs an instance of this class.
|
|
Array(java.sql.Array array)
Internal: Applications should not use this constructor.
|
|
Array(oracle.sql.ArrayDescriptor descriptor,
java.sql.Connection conn,
byte[] bytes)
Internal: Applications should not use this constructor.
|
|
Array(oracle.sql.ArrayDescriptor type,
java.sql.Connection conn,
java.lang.Object elements)
Internal: Applications should not use this constructor.
|
|
Array(oracle.sql.Datum d)
Deprecated.
since 11.1.1.6. Use
Array(java.sql.Array) instead. |
|
Array(java.util.List list)
This constructor does not verify that this array's length w.r.t the corresponding
database/source description.
|
|
Array(java.lang.Object[] elements)
This constructor does not verify that this array's length w.r.t the corresponding
database/source description.
|
Modifier and Type | Method and Description |
---|---|
void |
disconnect()
Internal: Applications should not use this method.
|
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.
|
java.lang.Object |
getData()
Internal: Applications should not use this method.
|
java.lang.Class |
getElemType()
Contents of this array should be of this type.
|
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() |
java.util.List |
getList()
Returns the elements of this array in a List object.
|
static oracle.sql.ORADataFactory |
getORADataFactory()
Internal: Applications should not use this method.
|
DomainOwnerInterface |
getOwner()
Returns the reference to owner of this domain (could be the row
that this domain instance belongs to.)
|
int |
getOwnerAttributeIndex() |
java.lang.String |
getRemoteIdString() |
long |
getSize() |
org.w3c.dom.Node |
getXMLContentNode(org.w3c.dom.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.
|
int |
hashCode()
Returns a hash code value based on the array elements in the 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)
Internal: Applications should not use this method.
|
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(org.w3c.dom.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)
Synchronize client-side data from the given lob
|
void |
syncServerLob(LobInterface oldObj)
Synchronize the streams from an older version of this object so that
this version works with the opened streams (if any).
|
oracle.sql.Datum |
toDatum(java.sql.Connection conn)
Deprecated.
since 11.1.1.6.
|
java.lang.Object |
toJDBCObject(java.sql.Connection connection) |
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.
|
public static final java.lang.String XML_ELEM_TYPE
public static final java.lang.String XML_SQL_TYPE
protected int mOwnerAttrIndex
protected Array() throws java.sql.SQLException
java.sql.SQLException
public Array(java.lang.Object[] elements)
public Array(java.util.List list)
public Array(oracle.sql.ArrayDescriptor type, java.sql.Connection conn, java.lang.Object elements) throws java.sql.SQLException
java.sql.SQLException
public Array(oracle.sql.ArrayDescriptor descriptor, java.sql.Connection conn, byte[] bytes) throws java.sql.SQLException
java.sql.SQLException
public Array(oracle.sql.Datum d) throws java.sql.SQLException
Array(java.sql.Array)
instead.java.sql.SQLException
public Array(java.sql.Array array) throws java.sql.SQLException
java.sql.SQLException
public static oracle.sql.ORADataFactory getORADataFactory()
public void useElementType(java.lang.Class claz)
public oracle.sql.Datum toDatum(java.sql.Connection conn) throws java.sql.SQLException
Converts this Array
Domain object back into an
SQL ARRAY
object.
toDatum
in interface oracle.sql.ORAData
conn
- OracleConnection
Not used.Datum
containing java.sql.Array
object.SQLException
- Never.java.sql.SQLException
public java.lang.Object getData()
getData
in interface DomainInterface
public void domainToBeModified(DomainInterface d)
domainToBeModified
in interface DomainOwnerInterface
d
- the domain being modified.public void setContext(DomainOwnerInterface owner, Transaction trans, java.lang.Object ctx)
setContext
in interface DomainInterface
public java.lang.String getRemoteIdString()
getRemoteIdString
in interface LobInterface
public java.lang.Object[] getArray()
public java.util.List getList()
public java.lang.Object[] getInternalArray()
public java.lang.Class getElemType()
public boolean equals(java.lang.Object obj)
this
for equality with another object.equals
in class java.lang.Object
obj
- an arbitrary Object
.true
if conversion was successful and the converted
argument is identical to this
.public int hashCode()
hashCode
in class java.lang.Object
protected java.lang.String getXMLElementTag()
protected java.lang.String getElemXMLElementTag()
protected boolean isElemXMLCData()
public org.w3c.dom.Node getXMLContentNode(org.w3c.dom.Document xmlDoc)
getXMLContentNode
in interface XMLDomainInterface
xmlDoc
- the XML document in which the node is to be created.protected void readAttrsFromXML(org.w3c.dom.Element rowElt)
rowElt
- the XML element from which the attribute values should be read.public java.lang.String printXMLDefinition(java.util.Hashtable allDefs, java.io.PrintWriter pw, boolean bContainees)
The allDefs hashtable contains predefined XML definitions and is passed by whatever calls this method.
printXMLDefinition
in interface XMLDomainInterface
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.public static XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
public void loadFromDatabase(Transaction transaction) throws java.lang.Exception
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.
loadFromDatabase
in interface BlobDomainInterface
transaction
- the DBTransactionImpl
of the current Application Module.java.lang.Exception
public void saveToDatabase(Transaction transaction) throws java.lang.Exception
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.
saveToDatabase
in interface BlobDomainInterface
transaction
- the DBTransactionImpl
instance of the current Application Module.java.lang.Exception
public void saveToDatabase(Transaction transaction, java.lang.Object postedSQLObject) throws java.lang.Exception
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.
saveToDatabase
in interface BlobDomainInterface
java.lang.Exception
public void prepareForDML(java.lang.Object context)
BlobDomainInterface
prepareForDML
in interface BlobDomainInterface
public void disconnect()
disconnect
in interface Disconnectable
public void syncClientLob(LobInterface old)
LobInterface
syncClientLob
in interface LobInterface
public void syncServerLob(LobInterface oldObj)
LobInterface
syncServerLob
in interface LobInterface
public DomainOwnerInterface getOwner()
LobInterface
getOwner
in interface LobInterface
public int getOwnerAttributeIndex()
getOwnerAttributeIndex
in interface LobInterface
public long getSize()
getSize
in interface LobInterface
public ResponseValues marshal()
marshal
in interface MarshalledDomain
public java.lang.Object toJDBCObject(java.sql.Connection connection)
toJDBCObject
in interface oracle.jdbc.OracleData