|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jpox.store.AbstractIdentifierFactory
org.jpox.store.rdbms.sqlidentifier.AbstractRDBMSIdentifierFactory
org.jpox.store.rdbms.sqlidentifier.JPOXIdentifierFactory
public class JPOXIdentifierFactory
Factory that creates immutable instances of DatastoreIdentifier for RDBMS datastores. Includes a JPOX naming strategy, naming as follows
| Field Summary | |
|---|---|
protected java.lang.String |
defaultCatalogName
Default catalog name for any created identifiers. |
protected java.lang.String |
defaultSchemaName
Default schema name for any created identifiers. |
protected java.lang.String |
tablePrefix
Prefix for all generated table names. |
protected java.lang.String |
tableSuffix
Suffix for all generated table names. |
| Fields inherited from class org.jpox.store.rdbms.sqlidentifier.AbstractRDBMSIdentifierFactory |
|---|
candidates, columns, foreignkeys, indexes, primarykeys, rdba, references, sequences, tables, wordSeparator |
| Fields inherited from class org.jpox.store.AbstractIdentifierFactory |
|---|
CASE_LOWER, CASE_PRESERVE, CASE_UPPER, dba, identifierCase, LOCALISER |
| Fields inherited from interface org.jpox.store.IdentifierFactory |
|---|
CANDIDATE_KEY, COLUMN, FOREIGN_KEY, IDENTIFIER_LOWER_CASE, IDENTIFIER_LOWER_CASE_QUOTED, IDENTIFIER_MIXED_CASE, IDENTIFIER_MIXED_CASE_QUOTED, IDENTIFIER_UPPER_CASE, IDENTIFIER_UPPER_CASE_QUOTED, INDEX, PRIMARY_KEY, SEQUENCE, TABLE |
| Constructor Summary | |
|---|---|
JPOXIdentifierFactory(DatastoreAdapter dba,
java.lang.String defaultCatalog,
java.lang.String defaultSchema,
java.lang.String requiredCase,
java.lang.String wordSeparator,
java.lang.String tablePrefix,
java.lang.String tableSuffix)
Constructor. |
|
| Method Summary | |
|---|---|
java.lang.String |
generateIdentifierNameForJavaName(java.lang.String javaName)
Generate a datastore identifier from a Java identifier. |
protected java.lang.String |
getColumnIdentifierSuffix(int role,
boolean embedded)
Accessor for the suffix to add to any column identifier, based on the role type. |
DatastoreIdentifier |
newAdapterIndexFieldIdentifier()
Method to return an identifier for an adapter index datastore field. |
DatastoreIdentifier |
newDatastoreContainerIdentifier(ClassLoaderResolver clr,
AbstractClassMetaData cmd)
Method to return a Table identifier for the specified class. |
DatastoreIdentifier |
newDatastoreContainerIdentifier(ClassLoaderResolver clr,
AbstractPropertyMetaData fmd)
Method to return a Table identifier for the join table of the specified field. |
DatastoreIdentifier |
newDiscriminatorFieldIdentifier()
Method to return an identifier for a discriminator column. |
DatastoreIdentifier |
newForeignKeyFieldIdentifier(AbstractPropertyMetaData ownerFmd,
AbstractPropertyMetaData relatedFmd,
DatastoreIdentifier destinationId,
boolean embedded,
int fieldRole)
Method to generate a FK/FK-index field identifier. |
DatastoreIdentifier |
newIndexFieldIdentifier()
Method to return an identifier for an index datastore field. |
DatastoreIdentifier |
newJoinTableFieldIdentifier(AbstractPropertyMetaData ownerFmd,
AbstractPropertyMetaData relatedFmd,
DatastoreIdentifier destinationId,
boolean embedded,
int fieldRole)
Method to generate a join-table identifier. |
DatastoreIdentifier |
newReferenceFieldIdentifier(AbstractPropertyMetaData refMetaData,
AbstractClassMetaData implMetaData,
DatastoreIdentifier implIdentifier,
boolean embedded,
int fieldRole)
Method to generate an identifier name for reference field, based on the metadata for the field, and the ClassMetaData for the implementation. |
DatastoreIdentifier |
newVersionFieldIdentifier()
Method to return an identifier for a version datastore field. |
| Methods inherited from class org.jpox.store.AbstractIdentifierFactory |
|---|
getDatastoreAdapter, getIdentifierCase, getNameOfIdentifierCase, truncate |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.jpox.store.IdentifierFactory |
|---|
getDatastoreAdapter, getIdentifierCase, getNameOfIdentifierCase |
| Field Detail |
|---|
protected java.lang.String tablePrefix
protected java.lang.String tableSuffix
protected java.lang.String defaultCatalogName
protected java.lang.String defaultSchemaName
| Constructor Detail |
|---|
public JPOXIdentifierFactory(DatastoreAdapter dba,
java.lang.String defaultCatalog,
java.lang.String defaultSchema,
java.lang.String requiredCase,
java.lang.String wordSeparator,
java.lang.String tablePrefix,
java.lang.String tableSuffix)
dba - Datastore adapterdefaultCatalog - Name of the default catalog (if any)defaultSchema - Name of the default schema (if any)requiredCase - The case the user requireswordSeparator - Word separator for identifierstablePrefix - Prefix for table names when being generatedtableSuffix - Suffix for table names when being generated| Method Detail |
|---|
public DatastoreIdentifier newDatastoreContainerIdentifier(ClassLoaderResolver clr,
AbstractPropertyMetaData fmd)
clr - the ClassLoaderResolverfmd - Meta data for the field
public DatastoreIdentifier newDatastoreContainerIdentifier(ClassLoaderResolver clr,
AbstractClassMetaData cmd)
clr - the ClassLoaderResolvercmd - Meta data for the class
public DatastoreIdentifier newReferenceFieldIdentifier(AbstractPropertyMetaData refMetaData,
AbstractClassMetaData implMetaData,
DatastoreIdentifier implIdentifier,
boolean embedded,
int fieldRole)
refMetaData - the AbstractPropertyMetaData for the reference fieldimplMetaData - the AbstractClassMetaData for this implementationimplIdentifier - PK identifier for the implementationembedded - Whether the identifier is for a field embeddedfieldRole - The role to be performed by this column e.g FK, collection element ?
public DatastoreIdentifier newJoinTableFieldIdentifier(AbstractPropertyMetaData ownerFmd,
AbstractPropertyMetaData relatedFmd,
DatastoreIdentifier destinationId,
boolean embedded,
int fieldRole)
ownerFmd - MetaData for the owner fieldrelatedFmd - MetaData for the related fielddestinationId - Identifier for the identity field of the destination (if FK)embedded - Whether the identifier is for a field embeddedfieldRole - The role to be performed by this column e.g FK, collection element ?
public DatastoreIdentifier newForeignKeyFieldIdentifier(AbstractPropertyMetaData ownerFmd,
AbstractPropertyMetaData relatedFmd,
DatastoreIdentifier destinationId,
boolean embedded,
int fieldRole)
ownerFmd - MetaData for the owner fieldrelatedFmd - MetaData for the related fielddestinationId - Identifier for the identity field of the destination table (if strict FK)embedded - Whether the identifier is for a field embeddedfieldRole - The role to be performed by this column e.g owner, index ?
public DatastoreIdentifier newDiscriminatorFieldIdentifier()
public DatastoreIdentifier newVersionFieldIdentifier()
public DatastoreIdentifier newAdapterIndexFieldIdentifier()
public DatastoreIdentifier newIndexFieldIdentifier()
public java.lang.String generateIdentifierNameForJavaName(java.lang.String javaName)
Conversion consists of breaking the identifier into words, converting each word to upper-case, and separating each one with a word separator. Words are identified by a leading upper-case character. Any leading or trailing underscores are removed.
generateIdentifierNameForJavaName in class AbstractRDBMSIdentifierFactoryjavaName - the Java identifier.
protected java.lang.String getColumnIdentifierSuffix(int role,
boolean embedded)
getColumnIdentifierSuffix in class AbstractRDBMSIdentifierFactoryrole - Datastore field roleembedded - Whether the DatastoreField is stored embedded
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||