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 |
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 |
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 |
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 |
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 createObject(AbstractSession session, java.io.Writer schemaWriter) throws EclipseLinkException
EclipseLinkException
public void createOnDatabase(AbstractSession session) throws EclipseLinkException
EclipseLinkException
public boolean shouldCreateVPDCalls(AbstractSession session)
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 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.4.2, "build v20130514-5956486" API Reference