com.jgpruitt.datamodeler.core
Class TableBuilder.ForeignKeyBuilder

java.lang.Object
  extended by com.jgpruitt.datamodeler.core.TableBuilder.ForeignKeyBuilder
Enclosing class:
TableBuilder

public class TableBuilder.ForeignKeyBuilder
extends java.lang.Object

A Fluent Builder class for constructing ForeignKey constraints

Author:
John Pruitt

Field Summary
protected  ForeignKey foreignKey
           
 
Constructor Summary
protected TableBuilder.ForeignKeyBuilder(java.lang.String name)
          Constructor
 
Method Summary
 TableBuilder.ForeignKeyBuilder comment(java.lang.String comment)
          Sets the comment describing the ForeignKey
 TableBuilder.ForeignKeyBuilder constrain(java.lang.String... columns)
          Sets the Columns being constrained
 TableBuilder done()
          Gets the TableBuilder
 TableBuilder.ForeignKeyBuilder reference(java.lang.String tableName, java.lang.String... columns)
          Sets Table and Columns being referenced by the ForeignKey constraint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

foreignKey

protected final ForeignKey foreignKey
Constructor Detail

TableBuilder.ForeignKeyBuilder

protected TableBuilder.ForeignKeyBuilder(java.lang.String name)
Constructor

Parameters:
name - the name of the ForeignKey
Method Detail

done

public TableBuilder done()
Gets the TableBuilder

Returns:
the TableBuilder

comment

public TableBuilder.ForeignKeyBuilder comment(java.lang.String comment)
Sets the comment describing the ForeignKey

Parameters:
comment - the comment
Returns:
this ForeignKeyBuilder

constrain

public TableBuilder.ForeignKeyBuilder constrain(java.lang.String... columns)
Sets the Columns being constrained

Parameters:
columns - the names of the Columns
Returns:
this ForeignKeyBuilder

reference

public TableBuilder.ForeignKeyBuilder reference(java.lang.String tableName,
                                                java.lang.String... columns)
Sets Table and Columns being referenced by the ForeignKey constraint

Parameters:
tableName - the fully qualified name of the Table - "[schema_name].[table_name]"
columns - the names of the Columns being referenced
Returns:
this ForeignKeyBuilder