|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.fcrepo.server.utilities.TableSpec
public class TableSpec
A holder of table specification information that helps in producing RDBMS-generic DDL "CREATE TABLE" commands.
An application constructs a TableSpec without regard to the underlying database kind, and then the TableSpec is converted to a DB-specific CREATE TABLE DDL command by a DDLConverter before the command is issued via JDBC.
| Constructor Summary | |
|---|---|
TableSpec(String name,
List<ColumnSpec> columnSpecs,
String primaryColumnName)
Constructs a TableSpec given a name, a set of ColumnSpecs, and the name of the primary key column. |
|
TableSpec(String name,
List<ColumnSpec> columnSpecs,
String primaryColumnName,
String type)
Constructs a TableSpec given a name, a set of ColumnSpecs, the name of the primary key column, and a table type. |
|
| Method Summary | |
|---|---|
void |
assertConsistent()
Ensures that the TableSpec is internally consistent. |
Iterator<ColumnSpec> |
columnSpecIterator()
Gets an iterator over the columns. |
String |
getName()
Gets the name of the table. |
String |
getPrimaryColumnName()
Gets the name of the primary key column. |
static List<TableSpec> |
getTableSpecs(InputStream in)
Gets a TableSpec for each table element in the stream, where the stream contains a valid XML document containing one or more table elements, wrapped in the root element. |
String |
getType()
Gets the type of the table. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public TableSpec(String name,
List<ColumnSpec> columnSpecs,
String primaryColumnName)
throws InconsistentTableSpecException
name - The table name.columnSpecs - ColumnSpec objects describing columns in the table.primaryColumnName - The column that is the primary key for the table.
InconsistentTableSpecException - if inconsistencies are detected in table specifications.
public TableSpec(String name,
List<ColumnSpec> columnSpecs,
String primaryColumnName,
String type)
throws InconsistentTableSpecException
name - The table name.columnSpecs - ColumnSpec objects describing columns in the table.primaryColumnName - The column that is the primary key for the table.type - The table type.
InconsistentTableSpecException - if inconsistencies are detected in table specifications.| Method Detail |
|---|
public static List<TableSpec> getTableSpecs(InputStream in)
throws InconsistentTableSpecException,
IOException
Input is of the form:
<database>
<table name="tableName" primaryKey="primaryColumnName" type="tableType">
<column name="columnName"
type="typeSpec"
autoIncrement="isAutoIncremented"
index="indexName"
notNull="isNotNull"
unique="isUnique"
default="defaultValue"
foreignKey="foreignTableName.columnName onDeleteAction"/>
</table>
</database>
About the attributes:
in - The xml-encoded table specs.
InconsistentTableSpecException - if inconsistencies are detected in table specifications.
IOException - if an IO error occurs.
public void assertConsistent()
throws InconsistentTableSpecException
InconsistentTableSpecException - If it's inconsistent.public String getName()
public String getPrimaryColumnName()
public String getType()
public Iterator<ColumnSpec> columnSpecIterator()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||