- java.lang.Object
-
- org.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition
-
- org.eclipse.persistence.tools.schemaframework.ConstraintObjectDefinition
-
- org.eclipse.persistence.tools.schemaframework.ForeignKeyConstraint
-
- All Implemented Interfaces:
Serializable,Cloneable
public class ForeignKeyConstraint extends ConstraintObjectDefinition
Purpose: Define a foreign key from one table to another. This support composite foreign keys can constraint options.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected booleandisableForeignKeyprotected StringforeignKeyDefinitionprotected booleanshouldCascadeOnDeleteprotected List<String>targetFieldsprotected StringtargetTable-
Fields inherited from class org.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition
name, qualifier
-
-
Constructor Summary
Constructors Constructor Description ForeignKeyConstraint()ForeignKeyConstraint(String name, String sourceField, String targetField, String targetTable)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddSourceField(String sourceField)voidaddTargetField(String targetField)voidappendDBString(Writer writer, org.eclipse.persistence.internal.sessions.AbstractSession session)Deprecated, for removal: This API element is subject to removal in a future version.protected voidappendKeys(Writer writer, List<String> keys)Deprecated, for removal: This API element is subject to removal in a future version.voidcascadeOnDelete()PUBLIC: Enables delete cascading on the database.booleandisableForeignKey()voiddontCascadeOnDelete()PUBLIC: Disables delete cascading on the database, this is the default.StringgetForeignKeyDefinition()List<String>getSourceFields()List<String>getTargetFields()StringgetTargetTable()booleanhasForeignKeyDefinition()booleanisDisableForeignKey()voidsetDisableForeignKey(boolean disableForeignKey)voidsetForeignKeyDefinition(String foreignKeyDefinition)voidsetShouldCascadeOnDelete(boolean shouldCascadeOnDelete)PUBLIC: Enables delete cascading on the database.voidsetSourceFields(List<String> sourceFields)voidsetTargetFields(List<String> targetFields)voidsetTargetTable(String targetTable)booleanshouldCascadeOnDelete()-
Methods inherited from class org.eclipse.persistence.tools.schemaframework.ConstraintObjectDefinition
buildCreationWriter, buildDeletionWriter, getOptions, setOptions
-
Methods inherited from class org.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition
buildVPDCreationFunctionWriter, buildVPDCreationPolicyWriter, buildVPDDeletionWriter, clone, createDatabaseSchema, createDatabaseSchemaOnDatabase, createObject, createOnDatabase, dropDatabaseSchema, dropDatabaseSchemaOnDatabase, dropFromDatabase, dropObject, getDatabaseSchema, getFieldTypeDefinition, getFieldTypeDefinition, getFullName, getName, getQualifier, hasDatabaseSchema, postCreateObject, preDropObject, setName, setQualifier, shouldCreateDatabaseSchema, shouldCreateVPDCalls, toString
-
-
-
-
Method Detail
-
addTargetField
public void addTargetField(String targetField)
-
appendDBString
@Deprecated(forRemoval=true, since="4.0.9") public void appendDBString(Writer writer, org.eclipse.persistence.internal.sessions.AbstractSession session)
Deprecated, for removal: This API element is subject to removal in a future version.INTERNAL: Append the database field definition string to the table creation statement.- Overrides:
appendDBStringin classConstraintObjectDefinition
-
cascadeOnDelete
public void cascadeOnDelete()
PUBLIC: Enables delete cascading on the database. This must be used carefully, i.e. only private relationships.
-
disableForeignKey
public boolean disableForeignKey()
-
dontCascadeOnDelete
public void dontCascadeOnDelete()
PUBLIC: Disables delete cascading on the database, this is the default.
-
getForeignKeyDefinition
public String getForeignKeyDefinition()
-
getTargetTable
public String getTargetTable()
-
hasForeignKeyDefinition
public boolean hasForeignKeyDefinition()
-
isDisableForeignKey
public boolean isDisableForeignKey()
-
setDisableForeignKey
public void setDisableForeignKey(boolean disableForeignKey)
-
setForeignKeyDefinition
public void setForeignKeyDefinition(String foreignKeyDefinition)
-
setShouldCascadeOnDelete
public void setShouldCascadeOnDelete(boolean shouldCascadeOnDelete)
PUBLIC: Enables delete cascading on the database. This must be used carefully, i.e. only private relationships.
-
setTargetTable
public void setTargetTable(String targetTable)
-
shouldCascadeOnDelete
public boolean shouldCascadeOnDelete()
-
appendKeys
@Deprecated(forRemoval=true, since="4.0.9") protected void appendKeys(Writer writer, List<String> keys)
Deprecated, for removal: This API element is subject to removal in a future version.
-
addSourceField
public void addSourceField(String sourceField)
-
-