| com.triactive.jdo.SchemaManager
All known Subclasses: com.triactive.jdo.store.StoreManager,
SchemaManager | public interface SchemaManager (Code) | | An interface to perform limited storage management on a database schema
used by TJDO.
author: Mike Martin version: $Revision: 1.4 $ See Also: SchemaManagerFactory |
Method Summary | |
void | addClasses(Class[] classes) Adds to the schema any database objects (tables, views, constraints,
indexes, etc.) necessary to enable persistence of the given
PersistenceCapable class(es). | void | dropAllTables() Drops all tables in the schema. | void | dropTablesFor(Class[] classes) Removes from the schema any existing database tables used in persisting
the given PersistenceCapable class(es). | String | getSchemaName() Returns the name of the database schema. | void | reset() Resets the schema manager back to its initial state.
This method discards all knowledge of persistent classes and the state of
the schema.
After reset(), all initialization procedures such as schema validation
etc. |
addClasses | void addClasses(Class[] classes)(Code) | | Adds to the schema any database objects (tables, views, constraints,
indexes, etc.) necessary to enable persistence of the given
PersistenceCapable class(es).
If any of the objects already exist, they are validated for structural
correctness; that is, checked to ensure that they "match" the current
class code and JDO metadata.
This method is primarily useful for applications that wish to perform all
of their database initialization up front, rather than wait for the TJDO
runtime to do it on-demand.
SQL identifiers for new database objects are chosen so as not to collide
with any existing objects.
Therefore it is always safe for TJDO and non-TJDO code to share the same
database schema.
Parameters: classes - The class(es) to be added. exception: SchemaValidationException - If there is some mismatch between the current schema contents andthose necessary to enable persistence of the given classes. |
dropAllTables | void dropAllTables()(Code) | | Drops all tables in the schema.
This empties the schema of all database objects managed by TJDO.
All objects not managed by TJDO are left untouched.
After dropping tables this method performs an implicit
SchemaManager.reset .
|
dropTablesFor | void dropTablesFor(Class[] classes)(Code) | | Removes from the schema any existing database tables used in persisting
the given PersistenceCapable class(es).
This method will fail if the relevant tables are depended upon by others
used for classes that are not being removed.
In case of failure, it is unspecified whether or not any tables were
actually removed.
After dropping tables this method performs an implicit
SchemaManager.reset .
Parameters: classes - The class(es) whose tables are to be removed. |
getSchemaName | String getSchemaName()(Code) | | Returns the name of the database schema.
The name of the database schema, or null if theDBMS does not support the concept of schemas. |
reset | void reset()(Code) | | Resets the schema manager back to its initial state.
This method discards all knowledge of persistent classes and the state of
the schema.
After reset(), all initialization procedures such as schema validation
etc. will be repeated as necessary as though the JVM were starting anew.
|
|
|