Package org.datanucleus.store.rdbms.key
Class ForeignKey
- java.lang.Object
-
- org.datanucleus.store.rdbms.key.Key
-
- org.datanucleus.store.rdbms.key.ForeignKey
-
public class ForeignKey extends Key
Representation of a foreign key to another table.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classForeignKey.FKActionEnum representing an action on the FK.
-
Field Summary
Fields Modifier and Type Field Description private DatastoreAdapterdbaprivate ForeignKey.FKActiondeleteActionprivate java.lang.StringforeignKeyDefinitionprivate booleaninitiallyDeferredprivate java.util.List<Column>refColumnsprivate DatastoreClassrefTableprivate ForeignKey.FKActionupdateAction
-
Constructor Summary
Constructors Constructor Description ForeignKey(DatastoreAdapter dba, boolean initiallyDeferred)Constructor.ForeignKey(JavaTypeMapping mapping, DatastoreAdapter dba, DatastoreClass refTable, boolean initiallyDeferred)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddColumn(Column col, Column refCol)Method to add a Column.booleanequals(java.lang.Object obj)Equality operator.java.lang.StringgetRefColumnList()DatastoreClassgetRefTable()inthashCode()Hashcode operator.booleanisEqual(ForeignKey fk)voidsetColumn(int seq, Column col, Column refCol)Set the column for the specified positionseqvoidsetDeleteAction(ForeignKey.FKAction deleteAction)Mutator for deleteAction.voidsetForMetaData(org.datanucleus.metadata.ForeignKeyMetaData fkmd)Convenience mutator for setting the specification based on MetaDatavoidsetUpdateAction(ForeignKey.FKAction updateAction)Mutator for updateAction.java.lang.StringtoString()Stringify method.-
Methods inherited from class org.datanucleus.store.rdbms.key.Key
addColumn, assertSameDatastoreObject, getColumnList, getColumnList, getColumns, getName, getNumberOfColumns, getTable, setColumn, setListMinimumSize, setName
-
-
-
-
Field Detail
-
dba
private DatastoreAdapter dba
-
initiallyDeferred
private boolean initiallyDeferred
-
refTable
private DatastoreClass refTable
-
updateAction
private ForeignKey.FKAction updateAction
-
deleteAction
private ForeignKey.FKAction deleteAction
-
refColumns
private java.util.List<Column> refColumns
-
foreignKeyDefinition
private java.lang.String foreignKeyDefinition
-
-
Constructor Detail
-
ForeignKey
public ForeignKey(DatastoreAdapter dba, boolean initiallyDeferred)
Constructor.- Parameters:
dba- Datastore adapterinitiallyDeferred- Whether the constraints are deferred
-
ForeignKey
public ForeignKey(JavaTypeMapping mapping, DatastoreAdapter dba, DatastoreClass refTable, boolean initiallyDeferred)
Constructor.- Parameters:
mapping- The type mapping for this Foreign-key fielddba- Datastore adapterrefTable- Referred to tableinitiallyDeferred- Whether they are deferred
-
-
Method Detail
-
setForMetaData
public void setForMetaData(org.datanucleus.metadata.ForeignKeyMetaData fkmd)
Convenience mutator for setting the specification based on MetaData- Parameters:
fkmd- ForeignKey MetaData definition
-
setDeleteAction
public void setDeleteAction(ForeignKey.FKAction deleteAction)
Mutator for deleteAction.- Parameters:
deleteAction- The deleteAction to set.
-
setUpdateAction
public void setUpdateAction(ForeignKey.FKAction updateAction)
Mutator for updateAction.- Parameters:
updateAction- The updateAction to set.
-
addColumn
public void addColumn(Column col, Column refCol)
Method to add a Column.- Parameters:
col- The column to addrefCol- The column to reference
-
getRefTable
public DatastoreClass getRefTable()
-
getRefColumnList
public java.lang.String getRefColumnList()
-
setColumn
public void setColumn(int seq, Column col, Column refCol)Set the column for the specified positionseq- Parameters:
seq- the specified positioncol- the columnrefCol- the foreign (refered) column
-
hashCode
public int hashCode()
Description copied from class:KeyHashcode operator.
-
equals
public boolean equals(java.lang.Object obj)
Description copied from class:KeyEquality operator.
-
isEqual
public boolean isEqual(ForeignKey fk)
-
toString
public java.lang.String toString()
Stringify method. Generates the foreign key statement ready for use in an SQL call.- Overrides:
toStringin classjava.lang.Object- Returns:
- String version of this object.
-
-