public abstract class DatabaseObjectDefinition
extends java.lang.Object
implements java.lang.Cloneable, java.io.Serializable
Purpose: Define a database object for the purpose of creation and deletion. A database object is an entity such as a table, view, proc, sequence...
Responsibilities:
Modifier and Type | Field and Description |
---|---|
java.lang.String |
name |
java.lang.String |
qualifier |
Constructor and Description |
---|
DatabaseObjectDefinition() |
Modifier and Type | Method and Description |
---|---|
abstract java.io.Writer |
buildCreationWriter(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Returns the writer used for creation of this object.
|
abstract java.io.Writer |
buildDeletionWriter(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Returns the writer used for deletion of this object.
|
java.io.Writer |
buildVPDCreationFunctionWriter(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Sub classes should override.
|
java.io.Writer |
buildVPDCreationPolicyWriter(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Sub classes should override.
|
java.io.Writer |
buildVPDDeletionWriter(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Sub classes should override.
|
java.lang.Object |
clone()
PUBLIC:
|
void |
createDatabaseSchema(AbstractSession session,
java.io.Writer writer,
java.util.Set<java.lang.String> createdDatabaseSchemas)
INTERNAL:
Execute the DDL to create the database schema for this object.
|
void |
createDatabaseSchemaOnDatabase(AbstractSession session,
java.util.Set<java.lang.String> createdDatabaseSchemas)
INTERNAL:
Execute the DDL to create the database schema for this object.
|
void |
createObject(AbstractSession session,
java.io.Writer schemaWriter)
INTERNAL:
Either drop from the database directly or write the statement to a file.
|
void |
createOnDatabase(AbstractSession session)
INTERNAL:
Execute the DDL to create this object.
|
void |
dropDatabaseSchema(AbstractSession session,
java.io.Writer writer)
INTERNAL:
Execute the DDL to drop the database schema for this object.
|
void |
dropDatabaseSchemaOnDatabase(AbstractSession session)
INTERNAL:
Execute the DDL to drop the database schema for this object.
|
void |
dropFromDatabase(AbstractSession session)
INTERNAL:
Execute the DDL to drop the object.
|
void |
dropObject(AbstractSession session,
java.io.Writer schemaWriter,
boolean createSQLFiles)
INTERNAL:
Execute the DDL to drop the object.
|
java.lang.String |
getDatabaseSchema()
PUBLIC:
Return the database schema associated with this database object.
|
java.lang.String |
getFullName()
INTERNAL:
Most major databases support a creator name scope.
|
java.lang.String |
getName()
PUBLIC:
Return the name of the object.
|
java.lang.String |
getQualifier()
PUBLIC:
Most major databases support a creator name scope.
|
void |
postCreateObject(AbstractSession session,
java.io.Writer createSchemaWriter,
boolean createSQLFiles)
Execute any statements required after the creation of the object
|
void |
preDropObject(AbstractSession session,
java.io.Writer dropSchemaWriter,
boolean createSQLFiles)
Execute any statements required before the deletion of the object
|
void |
setName(java.lang.String name)
PUBLIC:
Set the name of the object.
|
void |
setQualifier(java.lang.String qualifier)
PUBLIC:
Most major databases support a creator name scope.
|
boolean |
shouldCreateDatabaseSchema(java.util.Set<java.lang.String> createdDatabaseSchemas)
INTERNAL:
Subclasses who care should override this method, e.g.
|
boolean |
shouldCreateVPDCalls(AbstractSession session)
INTERNAL:
Subclasses who care should override this method.
|
java.lang.String |
toString() |
public abstract java.io.Writer buildCreationWriter(AbstractSession session, java.io.Writer writer) throws ValidationException
ValidationException
public java.io.Writer buildVPDCreationPolicyWriter(AbstractSession session, java.io.Writer writer)
public java.io.Writer buildVPDCreationFunctionWriter(AbstractSession session, java.io.Writer writer)
public java.io.Writer buildVPDDeletionWriter(AbstractSession session, java.io.Writer writer)
public abstract java.io.Writer buildDeletionWriter(AbstractSession session, java.io.Writer writer) throws ValidationException
ValidationException
public java.lang.Object clone()
clone
in class java.lang.Object
public void createDatabaseSchema(AbstractSession session, java.io.Writer writer, java.util.Set<java.lang.String> createdDatabaseSchemas) throws EclipseLinkException
EclipseLinkException
TableDefinition
public void createDatabaseSchemaOnDatabase(AbstractSession session, java.util.Set<java.lang.String> createdDatabaseSchemas) throws EclipseLinkException
EclipseLinkException
TableDefinition
public void createObject(AbstractSession session, java.io.Writer schemaWriter) throws EclipseLinkException
EclipseLinkException
public void createOnDatabase(AbstractSession session) throws EclipseLinkException
EclipseLinkException
public boolean shouldCreateDatabaseSchema(java.util.Set<java.lang.String> createdDatabaseSchemas)
public boolean shouldCreateVPDCalls(AbstractSession session)
public void dropDatabaseSchema(AbstractSession session, java.io.Writer writer) throws EclipseLinkException
EclipseLinkException
TableDefinition
public void dropDatabaseSchemaOnDatabase(AbstractSession session) throws EclipseLinkException
EclipseLinkException
TableDefinition
public void dropFromDatabase(AbstractSession session) throws EclipseLinkException
EclipseLinkException
public void dropObject(AbstractSession session, java.io.Writer schemaWriter, boolean createSQLFiles) throws EclipseLinkException
EclipseLinkException
public java.lang.String getDatabaseSchema()
TableDefinition
public java.lang.String getFullName()
public java.lang.String getName()
public java.lang.String getQualifier()
public void postCreateObject(AbstractSession session, java.io.Writer createSchemaWriter, boolean createSQLFiles)
session
- createSchemaWriter
- public void preDropObject(AbstractSession session, java.io.Writer dropSchemaWriter, boolean createSQLFiles)
session
- dropSchemaWriter
- public void setName(java.lang.String name)
public void setQualifier(java.lang.String qualifier)
public java.lang.String toString()
toString
in class java.lang.Object
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference