Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.mappings.structures
Class ObjectRelationalDatabaseField

java.lang.Object
  extended by org.eclipse.persistence.internal.helper.DatabaseField
      extended by org.eclipse.persistence.mappings.structures.ObjectRelationalDatabaseField

All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class ObjectRelationalDatabaseField
extends org.eclipse.persistence.internal.helper.DatabaseField

INTERNAL: A database field of object-relational type: either a java.sql.Array, java.sql.Struct, or java.sql.Ref. Oracle drivers require the user defined field type name for these fields, along with the generic sqlType: ARRAY, STRUCT, or REF. Toplink can only recognize primitive field types like Integer or String, but here custom java objects are being written to a single field. Thus instead of DatabaseField#type the driver needs a string representing the user defined type of the structure on the database, and the type of field: either ARRAY, STRUCT, or REF. Added for bug 2730536.

Since:
OracleAS TopLink 10g (9.0.4)
Author:
Stephen McRitchie
See Also:
Serialized Form

Field Summary
protected  org.eclipse.persistence.internal.helper.DatabaseField nestedTypeField
           
protected  java.lang.String sqlTypeName
           

 

Fields inherited from class org.eclipse.persistence.internal.helper.DatabaseField
columnDefinition, index, isInsertable, isNullable, isPrimaryKey, isUnique, isUpdatable, length, name, NULL_SQL_TYPE, precision, qualifiedName, scale, sqlType, table, type, typeName, useDelimiters

 

Constructor Summary
ObjectRelationalDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField field)
           
ObjectRelationalDatabaseField(java.lang.String name)
           

 

Method Summary
 org.eclipse.persistence.internal.helper.DatabaseField getNestedTypeField()
          ADVANCED: For ARRAY fields, this field's type represents the type contained in the ARRAY.
 java.lang.String getSqlTypeName()
          ADVANCED: For ARRAY and STRUCT fields, this is the user defined type for the field.
 boolean isObjectRelationalDatabaseField()
          PUBLIC: Return if this is an ObjectRelationalDatabaseField.
 void setNestedTypeField(org.eclipse.persistence.internal.helper.DatabaseField nestedTypeField)
          ADVANCED: For ARRAY fields, this field's type represents the type contained in the ARRAY.
 void setSqlTypeName(java.lang.String sqlTypeName)
          ADVANCED: For ARRAY and STRUCT fields, this is the user defined type for the field.

 

Methods inherited from class org.eclipse.persistence.internal.helper.DatabaseField
clone, equals, equals, getColumnDefinition, getIndex, getLength, getName, getNameDelimited, getNameForComparisons, getPrecision, getQualifiedName, getQualifiedNameDelimited, getScale, getSqlType, getTable, getTableName, getType, getTypeName, getUseUpperCaseForComparisons, hashCode, hasTableName, initDDLFields, isInsertable, isNullable, isPrimaryKey, isReadOnly, isUnique, isUpdatable, resetQualifiedName, setColumnDefinition, setIndex, setInsertable, setLength, setName, setName, setName, setNameForComparisons, setNullable, setPrecision, setPrimaryKey, setScale, setSqlType, setTable, setTableName, setType, setTypeName, setUnique, setUpdatable, setUseDelimiters, shouldUseDelimiters, toString, useUpperCaseForComparisons

 

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

 

Field Detail

sqlTypeName

protected java.lang.String sqlTypeName

nestedTypeField

protected org.eclipse.persistence.internal.helper.DatabaseField nestedTypeField

Constructor Detail

ObjectRelationalDatabaseField

public ObjectRelationalDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField field)

ObjectRelationalDatabaseField

public ObjectRelationalDatabaseField(java.lang.String name)

Method Detail

getSqlTypeName

public java.lang.String getSqlTypeName()
ADVANCED: For ARRAY and STRUCT fields, this is the user defined type for the field. For REF fields, this is the user defined type of entity is points to.

isObjectRelationalDatabaseField

public boolean isObjectRelationalDatabaseField()
PUBLIC: Return if this is an ObjectRelationalDatabaseField.
Overrides:
isObjectRelationalDatabaseField in class org.eclipse.persistence.internal.helper.DatabaseField

setSqlTypeName

public void setSqlTypeName(java.lang.String sqlTypeName)
ADVANCED: For ARRAY and STRUCT fields, this is the user defined type for the field. For REF fields, this is the user defined type of entity is points to.

getNestedTypeField

public org.eclipse.persistence.internal.helper.DatabaseField getNestedTypeField()
ADVANCED: For ARRAY fields, this field's type represents the type contained in the ARRAY.

setNestedTypeField

public void setNestedTypeField(org.eclipse.persistence.internal.helper.DatabaseField nestedTypeField)
ADVANCED: For ARRAY fields, this field's type represents the type contained in the ARRAY.

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.