WebObjects 5.2

com.webobjects.jdbcadaptor
Class SybasePlugIn.SybaseSynchronizationFactory

java.lang.Object
  |
  +--com.webobjects.eoaccess.EOSynchronizationFactory
        |
        +--com.webobjects.jdbcadaptor.SybasePlugIn.SybaseSynchronizationFactory
All Implemented Interfaces:
EOSchemaGeneration, EOSchemaSynchronization
Enclosing class:
SybasePlugIn

public static class SybasePlugIn.SybaseSynchronizationFactory
extends EOSynchronizationFactory


Inner classes inherited from class com.webobjects.eoaccess.EOSynchronizationFactory
EOSynchronizationFactory.Delegate
 
Inner classes inherited from class com.webobjects.eoaccess.EOSchemaSynchronization
EOSchemaSynchronization.ColumnTypes
 
Fields inherited from interface com.webobjects.eoaccess.EOSchemaGeneration
CreateDatabaseKey, CreatePrimaryKeySupportKey, CreateTablesKey, DropDatabaseKey, DropPrimaryKeySupportKey, DropTablesKey, ForeignKeyConstraintsKey, PrimaryKeyConstraintsKey
 
Fields inherited from interface com.webobjects.eoaccess.EOSchemaSynchronization
AllowsNullKey, ColumnNameKey, ExternalNameKey, ExternalTypeKey, NameKey, PrecisionKey, RelationshipsKey, ScaleKey, SchemaSynchronizationForeignKeyConstraintsKey, SchemaSynchronizationPrimaryKeyConstraintsKey, SchemaSynchronizationPrimaryKeySupportKey, WidthKey
 
Constructor Summary
SybasePlugIn.SybaseSynchronizationFactory(EOAdaptor adaptor)
           
 
Method Summary
 NSArray dropPrimaryKeySupportStatementsForEntityGroups(NSArray entityGroups)
          Returns an array of EOSQLExpression objects that define the SQL necessary to drop the primary key generation support for all the entities in each of the the entity groups in entityGroups.
 NSArray dropTableStatementsForEntityGroup(NSArray entityGroup)
          Returns an array of EOSQLExpression objects that define the SQL necessary to drop the table identified by entityGroup.
 NSArray primaryKeySupportStatementsForEntityGroups(NSArray entityGroups)
          Returns an array of EOSQLExpression objects that define the SQL necessary to create the primary key generation support for all the entities in each of the the entity groups in entityGroups.
 NSArray statementsToRenameTableNamed(String tableName, String newName, NSDictionary options)
          Returns an array of EOSQLExpressions to rename in place the the table indentifed by tableName to newName.
 boolean supportsSchemaSynchronization()
          The default implementation returns false.
 
Methods inherited from class com.webobjects.eoaccess.EOSynchronizationFactory
adaptor, appendExpressionToScript, createDatabaseStatementsForConnectionDictionary, createTableStatementsForEntityGroup, createTableStatementsForEntityGroups, dropDatabaseStatementsForConnectionDictionary, dropPrimaryKeySupportStatementsForEntityGroup, dropTableStatementsForEntityGroups, foreignKeyConstraintStatementsForRelationship, isCaseSensitive, isColumnTypeEquivalentToColumnType, logicalErrorsInChangeDictionaryForModelOptions, objectStoreChangesFromAttributeToAttribute, phraseCastingColumnNamed, primaryKeyConstraintStatementsForEntityGroup, primaryKeyConstraintStatementsForEntityGroups, primaryKeyEntityGroupsForEntities, primaryKeySupportStatementsForEntityGroup, schemaCreationScriptForEntities, schemaCreationStatementsForEntities, schemaSynchronizationDelegate, setSchemaSynchronizationDelegate, statementsToConvertColumnType, statementsToCopyTableNamed, statementsToDeleteColumnNamed, statementsToDropForeignKeyConstraintsOnEntityGroups, statementsToDropPrimaryKeyConstraintsOnEntityGroups, statementsToDropPrimaryKeySupportForEntityGroups, statementsToImplementForeignKeyConstraintsOnEntityGroups, statementsToImplementPrimaryKeyConstraintsOnEntityGroups, statementsToImplementPrimaryKeySupportForEntityGroups, statementsToInsertColumnForAttribute, statementsToModifyColumnNullRule, statementsToRenameColumnNamed, statementsToUpdateObjectStoreForEntityGroups, statementsToUpdateObjectStoreForModel, supportsDirectColumnCoercion, supportsDirectColumnDeletion, supportsDirectColumnInsertion, supportsDirectColumnNullRuleModification, supportsDirectColumnRenaming, tableEntityGroupsForEntities
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SybasePlugIn.SybaseSynchronizationFactory

public SybasePlugIn.SybaseSynchronizationFactory(EOAdaptor adaptor)
Method Detail

dropPrimaryKeySupportStatementsForEntityGroups

public NSArray dropPrimaryKeySupportStatementsForEntityGroups(NSArray entityGroups)
Description copied from class: EOSynchronizationFactory
Returns an array of EOSQLExpression objects that define the SQL necessary to drop the primary key generation support for all the entities in each of the the entity groups in entityGroups. Returns an empty array if entityGroups is null or empty. If primary key generation is not supported, returns an array that contains the string "The 'Drop Primary Key Support' option is unavailable."

This method invokes dropPrimaryKeySupportStatementsForEntityGroup for each entity group in entityGroups and returns an array of all the resulting EOSQLExpressions. Since the default implementation of dropPrimaryKeySupportStatementsForEntityGroup returns null, this method returns the "not supported" value (see above) by default, but a subclass need only override dropPrimaryKeySupportStatementsForEntityGroup in order to enable this method as well.

Overrides:
dropPrimaryKeySupportStatementsForEntityGroups in class EOSynchronizationFactory
Following copied from class: com.webobjects.eoaccess.EOSynchronizationFactory
Parameters:
entityGroups - An NSArray of entity groups, which are arrays of EOEntity objects that have the same external name.
Returns:
An array of EOSQLExpressions that define the SQL necessary to drop primary key generation support for entityGroups, or an empty array, or an array containing a string message that the option is not supported.
See Also:
EOSynchronizationFactory.dropPrimaryKeySupportStatementsForEntityGroup( NSArray entityGroup), EOSynchronizationFactory.schemaCreationStatementsForEntities( NSArray allEntities, NSDictionary options), EOAdaptorChannel.primaryKeyForNewRowWithEntity( EOEntity entity), EOEntity.externalName()

dropTableStatementsForEntityGroup

public NSArray dropTableStatementsForEntityGroup(NSArray entityGroup)
Description copied from class: EOSynchronizationFactory
Returns an array of EOSQLExpression objects that define the SQL necessary to drop the table identified by entityGroup. Returns an empty array if entityGroup is null. The drop statement generated by this method should be sufficient to remove the table created by createTableStatementsForEntityGroup's statements.

This method creates a statement of the form:

             DROP TABLE TABLE_NAME
 

where TABLE_NAME is the external name of the first entity in entityGroup.

If the database server's drop semantics are different, a subclass should override this method.

Overrides:
dropTableStatementsForEntityGroup in class EOSynchronizationFactory
Following copied from class: com.webobjects.eoaccess.EOSynchronizationFactory
Parameters:
entityGroup - An array of EOEntity objects that have the same external name.
Returns:
An array of EOSQLExpressions that define the SQL necessary to drop tables for the entities in entityGroup, or an empty array.
See Also:
EOSynchronizationFactory.createTableStatementsForEntityGroup( NSArray entityGroup), EOEntity.externalName()

primaryKeySupportStatementsForEntityGroups

public NSArray primaryKeySupportStatementsForEntityGroups(NSArray entityGroups)
Description copied from class: EOSynchronizationFactory
Returns an array of EOSQLExpression objects that define the SQL necessary to create the primary key generation support for all the entities in each of the the entity groups in entityGroups. Returns an empty array if entityGroups is null or empty. If primary key generation is not supported, returns an array that contains the string "The 'Create Primary Key Support' option is unavailable."

This method invokes primaryKeySupportStatementsForEntityGroup for each entity group in entityGroups and returns an array of all the resulting EOSQLExpressions. Since the default implementation of primaryKeySupportStatementsForEntityGroup returns null, this method returns the "not supported" value (see above) by default, but a subclass need only override primaryKeySupportStatementsForEntityGroup in order to enable this method as well.

Overrides:
primaryKeySupportStatementsForEntityGroups in class EOSynchronizationFactory
Following copied from class: com.webobjects.eoaccess.EOSynchronizationFactory
Parameters:
entityGroups - An NSArray of entity groups, which are arrays of EOEntity objects that have the same external name.
Returns:
An array of EOSQLExpressions that define the SQL necessary to create primary key generation support for entityGroups, or an empty array, or an array containing a string message that the option is not supported.
See Also:
EOSynchronizationFactory.primaryKeySupportStatementsForEntityGroup( NSArray entityGroup), EOAdaptorChannel.primaryKeyForNewRowWithEntity( EOEntity entity), EOEntity.externalName()

statementsToRenameTableNamed

public NSArray statementsToRenameTableNamed(String tableName,
                                            String newName,
                                            NSDictionary options)
Description copied from interface: EOSchemaSynchronization
Returns an array of EOSQLExpressions to rename in place the the table indentifed by tableName to newName. options is a dictionary describing the aspects of the schema for which to create SQL statements.
Overrides:
statementsToRenameTableNamed in class EOSynchronizationFactory
Following copied from interface: com.webobjects.eoaccess.EOSchemaSynchronization
Parameters:
tableName - The name of a table to be renamed.
newName - The new name for the specified table.
options - A dictionary describing the aspects of the schema for which to create SQL statements.
Returns:
An array of the EOSQLExpressions to rename in place the specified table.

supportsSchemaSynchronization

public boolean supportsSchemaSynchronization()
Description copied from class: EOSynchronizationFactory
The default implementation returns false. Can be overridden by subclasses to return true if the adaptor can update the database schema to reflect changes in an EOModel.
Overrides:
supportsSchemaSynchronization in class EOSynchronizationFactory
Following copied from class: com.webobjects.eoaccess.EOSynchronizationFactory
Returns:
true if the adaptor can update the database schema.

Last updated Fri Feb 21 13:15:00 PST 2003.

Copyright © 2003 Apple Computer, Inc.