Class ForeignKeyConstraint
- java.lang.Object
-
- org.eclipse.persistence.tools.schemaframework.ForeignKeyConstraint
-
- All Implemented Interfaces:
java.io.Serializable
public class ForeignKeyConstraint extends java.lang.Object implements java.io.SerializablePurpose: 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 java.lang.StringforeignKeyDefinitionprotected java.lang.Stringnameprotected booleanshouldCascadeOnDeleteprotected java.util.List<java.lang.String>sourceFieldsprotected java.util.List<java.lang.String>targetFieldsprotected java.lang.StringtargetTable
-
Constructor Summary
Constructors Constructor Description ForeignKeyConstraint()ForeignKeyConstraint(java.lang.String name, java.lang.String sourceField, java.lang.String targetField, java.lang.String targetTable)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddSourceField(java.lang.String sourceField)voidaddTargetField(java.lang.String targetField)voidappendDBString(java.io.Writer writer, org.eclipse.persistence.internal.sessions.AbstractSession session)INTERNAL: Append the database field definition string to the table creation statement.voidcascadeOnDelete()PUBLIC: Enables delete cascading on the database.booleandisableForeignKey()voiddontCascadeOnDelete()PUBLIC: Disables delete cascading on the database, this is the default.java.lang.StringgetForeignKeyDefinition()java.lang.StringgetName()java.util.List<java.lang.String>getSourceFields()java.util.List<java.lang.String>getTargetFields()java.lang.StringgetTargetTable()booleanhasForeignKeyDefinition()booleanisDisableForeignKey()voidsetDisableForeignKey(boolean disableForeignKey)voidsetForeignKeyDefinition(java.lang.String foreignKeyDefinition)voidsetName(java.lang.String name)voidsetShouldCascadeOnDelete(boolean shouldCascadeOnDelete)PUBLIC: Enables delete cascading on the database.voidsetSourceFields(java.util.List<java.lang.String> sourceFields)voidsetTargetFields(java.util.List<java.lang.String> targetFields)voidsetTargetTable(java.lang.String targetTable)booleanshouldCascadeOnDelete()
-
-
-
Field Detail
-
name
protected java.lang.String name
-
sourceFields
protected java.util.List<java.lang.String> sourceFields
-
targetFields
protected java.util.List<java.lang.String> targetFields
-
targetTable
protected java.lang.String targetTable
-
shouldCascadeOnDelete
protected boolean shouldCascadeOnDelete
-
foreignKeyDefinition
protected java.lang.String foreignKeyDefinition
-
disableForeignKey
protected boolean disableForeignKey
-
-
Method Detail
-
addSourceField
public void addSourceField(java.lang.String sourceField)
-
addTargetField
public void addTargetField(java.lang.String targetField)
-
appendDBString
public void appendDBString(java.io.Writer writer, org.eclipse.persistence.internal.sessions.AbstractSession session)INTERNAL: Append the database field definition string to the table creation statement.
-
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 java.lang.String getForeignKeyDefinition()
-
getName
public java.lang.String getName()
-
getSourceFields
public java.util.List<java.lang.String> getSourceFields()
-
getTargetFields
public java.util.List<java.lang.String> getTargetFields()
-
getTargetTable
public java.lang.String getTargetTable()
-
hasForeignKeyDefinition
public boolean hasForeignKeyDefinition()
-
isDisableForeignKey
public boolean isDisableForeignKey()
-
setDisableForeignKey
public void setDisableForeignKey(boolean disableForeignKey)
-
setForeignKeyDefinition
public void setForeignKeyDefinition(java.lang.String foreignKeyDefinition)
-
setName
public void setName(java.lang.String name)
-
setShouldCascadeOnDelete
public void setShouldCascadeOnDelete(boolean shouldCascadeOnDelete)
PUBLIC: Enables delete cascading on the database. This must be used carefully, i.e. only private relationships.
-
setSourceFields
public void setSourceFields(java.util.List<java.lang.String> sourceFields)
-
setTargetFields
public void setTargetFields(java.util.List<java.lang.String> targetFields)
-
setTargetTable
public void setTargetTable(java.lang.String targetTable)
-
shouldCascadeOnDelete
public boolean shouldCascadeOnDelete()
-
-