Class Table

java.lang.Object
org.apache.openjpa.jdbc.schema.NameSet
org.apache.openjpa.jdbc.schema.Table
All Implemented Interfaces:
Serializable, Comparable<Object>, SourceTracker

public class Table extends NameSet implements Comparable<Object>, SourceTracker
Represents a database table.
Author:
Abe White, Stephen Kim
See Also:
  • Constructor Details

    • Table

      public Table()
      Default constructor.
    • Table

      @Deprecated public Table(String name, Schema schema)
      Deprecated.
      Constructor.
      Parameters:
      name - the table name
      schema - the table schema
    • Table

      public Table(DBIdentifier name, Schema schema)
  • Method Details

    • setAssociation

      public void setAssociation()
    • isAssociation

      public boolean isAssociation()
    • getSchema

      public Schema getSchema()
      Return the schema for the table.
    • getSchemaName

      @Deprecated public String getSchemaName()
      Deprecated.
      The table's schema name.
    • getSchemaIdentifier

      public DBIdentifier getSchemaIdentifier()
    • setSchemaName

      @Deprecated public void setSchemaName(String name)
      Deprecated.
      The table's schema name. You can only call this method on tables whose schema object is not set.
    • setSchemaIdentifier

      public void setSchemaIdentifier(DBIdentifier name)
    • getName

      @Deprecated public String getName()
      Deprecated.
      Return the name of the table.
    • getIdentifier

      public DBIdentifier getIdentifier()
    • setName

      @Deprecated public void setName(String name)
      Deprecated.
      Set the name of the table. This method can only be called on tables that are not part of a schema.
    • setIdentifier

      public void setIdentifier(DBIdentifier name)
      Set the name of the table. This method can only be called on tables which are not part of a schema.
      Parameters:
      name - The name of the table.
      Throws:
      IllegalStateException - if getSchema() does not return null.
    • getFullName

      @Deprecated public String getFullName()
      Deprecated.
      Return the table name, including schema, using '.' as the catalog separator.
    • getQualifiedPath

      public QualifiedDBIdentifier getQualifiedPath()
    • getFullIdentifier

      public DBIdentifier getFullIdentifier()
    • getSourceFile

      public File getSourceFile()
      Description copied from interface: SourceTracker
      Return the file from which this instance was parsed.
      Specified by:
      getSourceFile in interface SourceTracker
    • getSourceScope

      public Object getSourceScope()
      Description copied from interface: SourceTracker
      Return the domain-dependent scope of this instance within its file.
      Specified by:
      getSourceScope in interface SourceTracker
    • getSourceType

      public int getSourceType()
      Description copied from interface: SourceTracker
      Return the type of source.
      Specified by:
      getSourceType in interface SourceTracker
    • setSource

      public void setSource(File source, int srcType)
    • getResourceName

      public String getResourceName()
      Description copied from interface: SourceTracker
      Return the domain-meaningful name of the resource that was loaded from this source. I.e., if we had loaded the source for a Java class, this would return the name of the class.
      Specified by:
      getResourceName in interface SourceTracker
    • getColumns

      public Column[] getColumns()
      Return the table's columns, in alphabetical order.
    • getAutoAssignedColumns

      public Column[] getAutoAssignedColumns()
      Return this table's auto-assigned columns.
    • getRelationIdColumns

      public Column[] getRelationIdColumns()
      Return this table's relation id columns.
    • getColumnNames

      public String[] getColumnNames()
      Return the list of column names, used only for informative (error) messages.
      Returns:
    • getColumn

      @Deprecated public Column getColumn(String name)
      Deprecated.
      Return the column with the given name, or null if none.
    • getColumn

      public Column getColumn(DBIdentifier name)
    • getColumn

      public Column getColumn(DBIdentifier name, boolean create)
    • containsColumn

      @Deprecated public boolean containsColumn(String name)
      Deprecated.
      Affirms if this table contains the column of the given name without any side-effect.
      See Also:
    • containsColumn

      public boolean containsColumn(DBIdentifier name)
    • containsColumn

      @Deprecated public boolean containsColumn(String name, DBDictionary dict)
      Deprecated.
      Affirms if this table contains the column of the given name without any side-effect.
      Parameters:
      dict - the current database dictionary or null.
      See Also:
    • containsColumn

      public boolean containsColumn(DBIdentifier name, DBDictionary dict)
    • containsColumn

      public boolean containsColumn(Column col)
    • addColumn

      @Deprecated public Column addColumn(String name)
      Deprecated.
      Add a column to the table.
    • addColumn

      public Column addColumn(DBIdentifier name)
    • addColumn

      @Deprecated public Column addColumn(String name, String validName)
      Deprecated.
      Add a column with a shortened (i.e., validated) name to the table
    • addColumn

      public Column addColumn(DBIdentifier name, DBIdentifier validName)
    • addCorrectedColumnName

      @Deprecated public void addCorrectedColumnName(String name, boolean validate)
      Deprecated.
      Add a name to this NameSet
    • addCorrectedColumnName

      public void addCorrectedColumnName(DBIdentifier name, boolean validate)
    • removeColumn

      public boolean removeColumn(Column col)
      Remove the given column from the table.
      Returns:
      true if the column was removed, false if not in the table
    • importColumn

      public Column importColumn(Column col)
      Import a column from another table.
    • getPrimaryKey

      public PrimaryKey getPrimaryKey()
      Return the primary key for the table, if any.
    • addPrimaryKey

      public PrimaryKey addPrimaryKey()
      Set the primary key for the table.
    • addPrimaryKey

      @Deprecated public PrimaryKey addPrimaryKey(String name)
      Deprecated.
      Set the primary key for the table.
    • addPrimaryKey

      public PrimaryKey addPrimaryKey(DBIdentifier name)
    • removePrimaryKey

      public boolean removePrimaryKey()
      Remove the primary key from this table.
      Returns:
      true if there was a pk to remove, false otherwise
    • importPrimaryKey

      public PrimaryKey importPrimaryKey(PrimaryKey pk)
      Import a primary key; column names must match columns of this table.
    • getForeignKey

      @Deprecated public ForeignKey getForeignKey(String name)
      Deprecated.
      Return the foreign key with the given name. If multiple foreign keys have the name, the first match is returned.
    • getForeignKey

      public ForeignKey getForeignKey(DBIdentifier name)
    • getForeignKeys

      public ForeignKey[] getForeignKeys()
      Return all foreign keys for the table.
    • addForeignKey

      public ForeignKey addForeignKey()
      Add a foreign key to the table.
    • addForeignKey

      @Deprecated public ForeignKey addForeignKey(String name)
      Deprecated.
      Add a foreign key to the table. Duplicate key names are not allowed.
    • addForeignKey

      public ForeignKey addForeignKey(DBIdentifier name)
    • removeForeignKey

      public boolean removeForeignKey(ForeignKey fk)
      Remove the given foreign key from the table.
      Returns:
      true if the key was removed, false if not in the table
    • importForeignKey

      public ForeignKey importForeignKey(ForeignKey fk)
      Import a foreign key; column names must match columns of this table.
    • getIndexes

      public Index[] getIndexes()
      Return the table's indexes.
    • getIndex

      @Deprecated public Index getIndex(String name)
      Deprecated.
      Return the index with the given name, or null if none.
    • getIndex

      public Index getIndex(DBIdentifier name)
    • addIndex

      @Deprecated public Index addIndex(String name)
      Deprecated.
      Add an index to the table.
    • addIndex

      public Index addIndex(DBIdentifier name)
    • removeIndex

      public boolean removeIndex(Index idx)
      Remove the given index from the table.
      Returns:
      true if the index was removed, false if not in the table
    • importIndex

      public Index importIndex(Index idx)
      Import an index; column names must match columns of this table.
    • getUniques

      public Unique[] getUniques()
      Return the table's unique constraints.
    • getUnique

      @Deprecated public Unique getUnique(String name)
      Deprecated.
      Return the unique constraint with the given name, or null if none.
    • getUnique

      public Unique getUnique(DBIdentifier name)
    • addUnique

      @Deprecated public Unique addUnique(String name)
      Deprecated.
      Add a unique constraint to the table.
    • addUnique

      public Unique addUnique(DBIdentifier name)
    • removeUnique

      public boolean removeUnique(Unique unq)
      Remove the given unique constraint from the table.
      Returns:
      true if the constraint was removed, false if not in the table
    • importUnique

      public Unique importUnique(Unique unq)
      Import a constraint; column names must match columns of this table.
    • compareTo

      public int compareTo(Object other)
      Specified by:
      compareTo in interface Comparable<Object>
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hasComment

      public boolean hasComment()
    • getComment

      public String getComment()
    • setComment

      public void setComment(String comment)
    • getLineNumber

      public int getLineNumber()
      Description copied from interface: SourceTracker
      Return the line number of the file at which this instance was parsed.
      Specified by:
      getLineNumber in interface SourceTracker
    • setLineNumber

      public void setLineNumber(int lineNum)
    • getColNumber

      public int getColNumber()
      Description copied from interface: SourceTracker
      Return the column number in the line of the file at which this instance was parsed.
      Specified by:
      getColNumber in interface SourceTracker
    • setColNumber

      public void setColNumber(int colNum)