Class TableCreator

java.lang.Object
org.eclipse.persistence.tools.schemaframework.TableCreator

public class TableCreator extends Object
Purpose: This class is responsible for creating the tables defined in the project. A specific subclass of this class is created for each project. The specific table information is defined in the subclass.
Author:
Peter Krogh
  • Field Details

    • DEFAULT_IDENTITY_GENERATOR

      public static final String DEFAULT_IDENTITY_GENERATOR
      Default identity generator sequence name. Copy of value from JPA: MetadataProject.DEFAULT_IDENTITY_GENERATOR.
      See Also:
    • CHECK_EXISTENCE

      public static boolean CHECK_EXISTENCE
      Flag to disable table existence check before create.
    • tableDefinitions

      protected List<TableDefinition> tableDefinitions
    • name

      protected String name
    • ignoreDatabaseException

      protected boolean ignoreDatabaseException
  • Constructor Details

    • TableCreator

      public TableCreator()
    • TableCreator

      public TableCreator(List<TableDefinition> tableDefinitions)
  • Method Details

    • addTableDefinition

      public void addTableDefinition(TableDefinition tableDefinition)
      Add the table.
    • addTableDefinitions

      public void addTableDefinitions(Collection<TableDefinition> tableDefs)
      Add a set of tables.
    • createConstraints

      public void createConstraints(DatabaseSession session)
      Create constraints.
    • createConstraints

      public void createConstraints(DatabaseSession session, SchemaManager schemaManager)
      Create constraints.
    • createConstraints

      public void createConstraints(DatabaseSession session, SchemaManager schemaManager, boolean build)
      Create constraints.
    • createConstraints

      public void createConstraints(List<TableDefinition> tables, DatabaseSession session, SchemaManager schemaManager, boolean build)
      Create constraints.
    • createTables

      public void createTables(DatabaseSession session)
      This creates the tables on the database. If the table already exists this will fail.
    • createTables

      public void createTables(DatabaseSession session, SchemaManager schemaManager)
      This creates the tables on the database. If the table already exists this will fail.
    • createTables

      public void createTables(DatabaseSession session, SchemaManager schemaManager, boolean build)
      This creates the tables on the database. If the table already exists this will fail.
    • createTables

      public void createTables(DatabaseSession session, SchemaManager schemaManager, boolean build, boolean check, boolean createSequenceTables, boolean createSequences)
      This creates the tables on the database. If the table already exists this will fail.
      Parameters:
      session - Active database session.
      schemaManager - Database schema manipulation manager.
      build - Whether to build constraints.
      check - Whether to check for tables existence.
      createSequenceTables - Whether to create sequence tables.
      createSequences - Whether to create sequences.
    • dropConstraints

      public void dropConstraints(DatabaseSession session)
      Drop the table constraints from the database.
    • dropConstraints

      public void dropConstraints(DatabaseSession session, SchemaManager schemaManager)
      Drop the table constraints from the database.
    • dropConstraints

      public void dropConstraints(DatabaseSession session, SchemaManager schemaManager, boolean build)
      Drop the table constraints from the database.
    • dropTables

      public void dropTables(DatabaseSession session)
      Drop the tables from the database.
    • dropTables

      public void dropTables(DatabaseSession session, SchemaManager schemaManager)
      Drop the tables from the database.
    • dropTables

      public void dropTables(DatabaseSession session, SchemaManager schemaManager, boolean build)
      Drop the tables from the database.
      Parameters:
      session - Active database session.
      schemaManager - Database schema manipulation manager.
      build - Whether to build constraints.
    • getName

      public String getName()
      Return the name.
    • getTableDefinitions

      public List<TableDefinition> getTableDefinitions()
      Return the tables.
    • replaceTables

      public void replaceTables(DatabaseSession session)
      Recreate the tables on the database. This will drop the tables if they exist and recreate them.
    • replaceTables

      public void replaceTables(DatabaseSession session, SchemaManager schemaManager)
      Recreate the tables on the database. This will drop the tables if they exist and recreate them.
    • replaceTables

      public void replaceTables(DatabaseSession session, SchemaManager schemaManager, boolean createSequenceTables)
      Recreate the tables on the database. This will drop the tables if they exist and recreate them.
    • replaceTables

      public void replaceTables(DatabaseSession session, SchemaManager schemaManager, boolean createSequenceTables, boolean createSequences)
      Recreate the tables on the database. This will drop the tables if they exist and recreate them.
    • replaceTablesAndConstraints

      protected void replaceTablesAndConstraints(SchemaManager schemaManager, DatabaseSession session, boolean createSequenceTables, boolean createSequences)
    • replaceTablesAndConstraints

      protected void replaceTablesAndConstraints(SchemaManager schemaManager, DatabaseSession session)
    • buildConstraints

      protected void buildConstraints(SchemaManager schemaManager, boolean build)
      Convert any field constraint to constraint objects.
    • setName

      public void setName(String name)
      Set the name.
    • setTableDefinitions

      public void setTableDefinitions(Vector tableDefinitions)
      Set the tables.
    • shouldIgnoreDatabaseException

      public boolean shouldIgnoreDatabaseException()
      Return true if DatabaseException is to be ignored.
    • setIgnoreDatabaseException

      public void setIgnoreDatabaseException(boolean ignoreDatabaseException)
      Set flag whether DatabaseException should be ignored.
    • getSequenceTableName

      protected String getSequenceTableName(Session session)
      This returns the Sequence Table's qualified name, without delimiting.
      Parameters:
      session -
      Returns:
      the qualified table name
    • extendTables

      public void extendTables(DatabaseSession session, SchemaManager schemaManager)
      Create or extend the tables on the database. This will alter existing tables to add missing fields or create the table otherwise. It will also create Sequences tables and objects.
    • extendTablesAndConstraints

      protected void extendTablesAndConstraints(SchemaManager schemaManager, DatabaseSession session)
    • extendTables

      public void extendTables(DatabaseSession session, SchemaManager schemaManager, boolean build)
      This creates/extends the tables on the database.
      Parameters:
      session - Active database session.
      schemaManager - Database schema manipulation manager.
      build - Whether to build constraints.