|
EclipseLink 1.1.0_ 1.1.0.r3634 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition
org.eclipse.persistence.tools.schemaframework.TableDefinition
public class TableDefinition
Purpose: Allow a generic way of creating tables on the different platforms.
| Field Summary | |
|---|---|
protected java.lang.String |
creationPrefix
|
protected java.lang.String |
creationSuffix
|
protected java.util.Vector |
fields
|
protected java.util.HashMap<java.lang.String,ForeignKeyConstraint> |
foreignKeyMap
|
protected java.util.Vector<UniqueKeyConstraint> |
uniqueKeys
|
| Fields inherited from class org.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition |
|---|
name, qualifier |
| Constructor Summary | |
|---|---|
TableDefinition()
|
|
| Method Summary | |
|---|---|
void |
addField(FieldDefinition field)
PUBLIC: Add the field to the table. |
void |
addField(java.lang.String fieldName,
java.lang.Class type)
PUBLIC: Add the field to the table, default sizes are used. |
void |
addField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
PUBLIC: Add the field to the table. |
void |
addField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize,
int fieldSubSize)
PUBLIC: Add the field to the table. |
void |
addField(java.lang.String fieldName,
java.lang.String typeName)
PUBLIC: Add the field to the type to a nested type. |
void |
addForeignKeyConstraint(ForeignKeyConstraint foreignKey)
PUBLIC: Add a foreign key constraint to the table. |
void |
addForeignKeyConstraint(java.lang.String name,
java.lang.String sourceField,
java.lang.String targetField,
java.lang.String targetTable)
PUBLIC: Add a foreign key constraint to the table. |
void |
addIdentityField(java.lang.String fieldName,
java.lang.Class type)
PUBLIC: Add the field to the table, default sizes are used. |
void |
addIdentityField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
PUBLIC: Add the field to the table, default sizes are used. |
void |
addPrimaryKeyField(java.lang.String fieldName,
java.lang.Class type)
PUBLIC: Add the field to the table, default sizes are used. |
void |
addPrimaryKeyField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
PUBLIC: Add the field to the table, default sizes are used. |
void |
addUniqueKeyConstraint(java.lang.String name,
java.lang.String sourceField)
PUBLIC: Add a unique key constraint to the table. |
void |
addUniqueKeyConstraint(java.lang.String name,
java.lang.String[] sourceFields)
PUBLIC: Add a unique key constraint to the table. |
void |
addUniqueKeyConstraint(UniqueKeyConstraint uniqueKey)
PUBLIC: Add a unique key constraint to the table. |
java.io.Writer |
buildConstraintCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
ForeignKeyConstraint foreignKey,
java.io.Writer writer)
INTERNAL: Return the alter table statement to add the constraints. |
java.io.Writer |
buildConstraintDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
ForeignKeyConstraint foreignKey,
java.io.Writer writer)
INTERNAL: Return the alter table statement to drop the constraints. |
java.io.Writer |
buildCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer writer)
INTERNAL: Return the create table statement. |
java.io.Writer |
buildDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer writer)
INTERNAL: Return the drop table statement. |
protected void |
buildFieldTypes(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Build the foriegn key constraints. |
protected ForeignKeyConstraint |
buildForeignKeyConstraint(FieldDefinition field,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
Build a foriegn key constraint using FieldDefinition.getForeignKeyFieldName(). |
protected ForeignKeyConstraint |
buildForeignKeyConstraint(java.util.Vector fkFieldNames,
java.util.Vector pkFieldNames,
TableDefinition targetTable,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
Build a foriegn key constraint. |
protected java.lang.String |
buildForeignKeyConstraintName(java.lang.String tableName,
java.lang.String fieldName,
int maximumNameLength)
Return foreign key constraint name built from the table and field name with the specified maximum length. |
java.io.Writer |
buildUniqueConstraintCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
UniqueKeyConstraint uniqueKey,
java.io.Writer writer)
INTERNAL: Return the alter table statement to add the constraints. |
java.io.Writer |
buildUniqueConstraintDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
UniqueKeyConstraint uniqueKey,
java.io.Writer writer)
INTERNAL: Return the alter table statement to drop the constraints. |
protected UniqueKeyConstraint |
buildUniqueKeyConstraint(java.util.List<java.lang.String> fieldNames,
int serialNumber,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
|
protected java.lang.String |
buildUniqueKeyConstraintName(java.lang.String tableName,
int serialNumber,
int maximumNameLength)
Return unique key constraint name built from the table name and sequence number with the specified maximum length. |
java.lang.Object |
clone()
PUBLIC: Performs a deep copy of this table definition. |
void |
createConstraints(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer schemaWriter)
INTERNAL: Execute the SQL alter table constraint creation string. |
void |
createConstraintsOnDatabase(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Execute the SQL alter table constraint creation string. |
java.lang.String |
deletionStringFor(org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor accessor)
INTERNAL: Return the delete SQL string. |
void |
dropConstraints(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer schemaWriter)
INTERNAL: Execute the SQL alter table constraint creation string. |
void |
dropConstraintsOnDatabase(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Execute the SQL alter table constraint creation string. |
java.lang.String |
getCreationPrefix()
INTERNAL: Return the beginning of the sql create statement - the part before the name. |
java.lang.String |
getCreationSuffix()
INTERNAL: Return the end of the sql create statement - the part after the field list. |
java.util.Vector |
getFields()
PUBLIC: |
java.util.Vector<ForeignKeyConstraint> |
getForeignKeys()
PUBLIC: Returns the ForeignKeyConstraint list. |
java.util.Vector |
getPrimaryKeyFieldNames()
PUBLIC: |
java.util.Vector<UniqueKeyConstraint> |
getUniqueKeys()
PUBLIC: |
void |
setCreateSQLFiles(boolean genFlag)
PUBLIC: |
void |
setCreationPrefix(java.lang.String creationPrefix)
INTERNAL: Set the beginning of the sql create statement - the part before the name. |
void |
setCreationSuffix(java.lang.String creationSuffix)
INTERNAL: Set the end of the sql create statement - the part after the field list. |
void |
setFields(java.util.Vector fields)
PUBLIC: |
void |
setForeignKeys(java.util.Vector<ForeignKeyConstraint> foreignKeys)
PUBLIC: Set the ForeignKeyConstraint list. |
void |
setUniqueKeys(java.util.Vector<UniqueKeyConstraint> uniqueKeys)
PUBLIC: |
| Methods inherited from class org.eclipse.persistence.tools.schemaframework.DatabaseObjectDefinition |
|---|
createObject, createOnDatabase, dropFromDatabase, dropObject, getFullName, getName, getQualifier, setName, setQualifier, toString |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected java.util.Vector fields
protected java.util.HashMap<java.lang.String,ForeignKeyConstraint> foreignKeyMap
protected java.util.Vector<UniqueKeyConstraint> uniqueKeys
protected java.lang.String creationPrefix
protected java.lang.String creationSuffix
| Constructor Detail |
|---|
public TableDefinition()
| Method Detail |
|---|
public void addField(java.lang.String fieldName,
java.lang.Class type)
type - is the Java class type coresponding to the database type.
public void addField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
type - is the Java class type coresponding to the database type.
public void addField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize,
int fieldSubSize)
type - is the Java class type coresponding to the database type.
public void addField(java.lang.String fieldName,
java.lang.String typeName)
typeName - is the name of the nested type.public void addField(FieldDefinition field)
public void addForeignKeyConstraint(java.lang.String name,
java.lang.String sourceField,
java.lang.String targetField,
java.lang.String targetTable)
public void addUniqueKeyConstraint(java.lang.String name,
java.lang.String sourceField)
public void addUniqueKeyConstraint(java.lang.String name,
java.lang.String[] sourceFields)
public void addForeignKeyConstraint(ForeignKeyConstraint foreignKey)
public void addUniqueKeyConstraint(UniqueKeyConstraint uniqueKey)
public void addIdentityField(java.lang.String fieldName,
java.lang.Class type)
type - is the Java class type coresponding to the database type.
public void addIdentityField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
type - is the Java class type coresponding to the database type.
public void addPrimaryKeyField(java.lang.String fieldName,
java.lang.Class type)
type - is the Java class type coresponding to the database type.
public void addPrimaryKeyField(java.lang.String fieldName,
java.lang.Class type,
int fieldSize)
type - is the Java class type coresponding to the database type.
public java.io.Writer buildConstraintCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
ForeignKeyConstraint foreignKey,
java.io.Writer writer)
throws ValidationException
ValidationException
public java.io.Writer buildConstraintDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
ForeignKeyConstraint foreignKey,
java.io.Writer writer)
throws ValidationException
ValidationException
public java.io.Writer buildUniqueConstraintCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
UniqueKeyConstraint uniqueKey,
java.io.Writer writer)
throws ValidationException
ValidationException
public java.io.Writer buildUniqueConstraintDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
UniqueKeyConstraint uniqueKey,
java.io.Writer writer)
throws ValidationException
ValidationExceptionpublic java.lang.String getCreationPrefix()
public void setCreationPrefix(java.lang.String creationPrefix)
public java.lang.String getCreationSuffix()
public void setCreationSuffix(java.lang.String creationSuffix)
public java.io.Writer buildCreationWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer writer)
throws ValidationException
buildCreationWriter in class DatabaseObjectDefinitionValidationException
public java.io.Writer buildDeletionWriter(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer writer)
throws ValidationException
buildDeletionWriter in class DatabaseObjectDefinitionValidationExceptionprotected void buildFieldTypes(org.eclipse.persistence.internal.sessions.AbstractSession session)
protected ForeignKeyConstraint buildForeignKeyConstraint(FieldDefinition field,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
protected ForeignKeyConstraint buildForeignKeyConstraint(java.util.Vector fkFieldNames,
java.util.Vector pkFieldNames,
TableDefinition targetTable,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
protected java.lang.String buildForeignKeyConstraintName(java.lang.String tableName,
java.lang.String fieldName,
int maximumNameLength)
protected UniqueKeyConstraint buildUniqueKeyConstraint(java.util.List<java.lang.String> fieldNames,
int serialNumber,
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
protected java.lang.String buildUniqueKeyConstraintName(java.lang.String tableName,
int serialNumber,
int maximumNameLength)
public java.lang.Object clone()
clone in class DatabaseObjectDefinition
public void createConstraints(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer schemaWriter)
throws EclipseLinkException
EclipseLinkException
public void createConstraintsOnDatabase(org.eclipse.persistence.internal.sessions.AbstractSession session)
throws EclipseLinkException
EclipseLinkExceptionpublic java.lang.String deletionStringFor(org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor accessor)
public void dropConstraints(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.io.Writer schemaWriter)
throws EclipseLinkException
EclipseLinkException
public void dropConstraintsOnDatabase(org.eclipse.persistence.internal.sessions.AbstractSession session)
throws EclipseLinkException
EclipseLinkExceptionpublic java.util.Vector getFields()
public java.util.Vector<ForeignKeyConstraint> getForeignKeys()
public java.util.Vector<UniqueKeyConstraint> getUniqueKeys()
public java.util.Vector getPrimaryKeyFieldNames()
public void setFields(java.util.Vector fields)
public void setForeignKeys(java.util.Vector<ForeignKeyConstraint> foreignKeys)
public void setUniqueKeys(java.util.Vector<UniqueKeyConstraint> uniqueKeys)
public void setCreateSQLFiles(boolean genFlag)
|
EclipseLink 1.1.0_ 1.1.0.r3634 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||