Top Fields Constructors Methods
liquibase.diff.compare

public Class DatabaseObjectComparatorFactory

extends Object
Class Inheritance
Imports
liquibase.Scope, liquibase.database.Database, liquibase.diff.ObjectDifferences, liquibase.exception.UnexpectedLiquibaseException, liquibase.structure.DatabaseObject, liquibase.structure.core.Catalog, .Schema, liquibase.util.StringUtil, java.util.*

Field Summary

Modifier and TypeField and Description
private final Map<String, DatabaseObjectComparatorChain>
private final List<DatabaseObjectComparator>
private static DatabaseObjectComparatorFactory
private final Map<String, List<DatabaseObjectComparator>>

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
private DatabaseObjectComparatorChain
createComparatorChain(Class<? extends DatabaseObject> databaseObjectType, CompareControl.SchemaComparison[] schemaComparisons, Database database)

public ObjectDifferences
findDifferences(DatabaseObject object1, DatabaseObject object2, Database accordingTo, CompareControl compareControl)

public DatabaseObjectComparator
getComparator(Class<? extends DatabaseObject> comparatorClass, Database database)

protected List<DatabaseObjectComparator>
getComparators(Class<? extends DatabaseObject> comparatorClass, Database database)

public static synchronized DatabaseObjectComparatorFactory
getInstance()

Return singleton DatabaseObjectComparatorFactory

public String[]
hash(DatabaseObject databaseObject, CompareControl.SchemaComparison[] schemaComparisons, Database accordingTo)

public boolean
isSameObject(DatabaseObject object1, DatabaseObject object2, CompareControl.SchemaComparison[] schemaComparisons, Database accordingTo)

public void
public static synchronized void
public static synchronized void
public void
public void
unregister(Class<T> generatorClass)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

comparatorChainsByClassAndDatabaseback to summary
private final Map<String, DatabaseObjectComparatorChain> comparatorChainsByClassAndDatabase
comparatorsback to summary
private final List<DatabaseObjectComparator> comparators
instanceback to summary
private static DatabaseObjectComparatorFactory instance
validComparatorsByClassAndDatabaseback to summary
private final Map<String, List<DatabaseObjectComparator>> validComparatorsByClassAndDatabase

Constructor Detail

DatabaseObjectComparatorFactoryback to summary
private DatabaseObjectComparatorFactory()

Method Detail

createComparatorChainback to summary
private DatabaseObjectComparatorChain createComparatorChain(Class<? extends DatabaseObject> databaseObjectType, CompareControl.SchemaComparison[] schemaComparisons, Database database)
findDifferencesback to summary
public ObjectDifferences findDifferences(DatabaseObject object1, DatabaseObject object2, Database accordingTo, CompareControl compareControl)
getComparatorback to summary
public DatabaseObjectComparator getComparator(Class<? extends DatabaseObject> comparatorClass, Database database)
getComparatorsback to summary
protected List<DatabaseObjectComparator> getComparators(Class<? extends DatabaseObject> comparatorClass, Database database)
getInstanceback to summary
public static synchronized DatabaseObjectComparatorFactory getInstance()

Return singleton DatabaseObjectComparatorFactory

hashback to summary
public String[] hash(DatabaseObject databaseObject, CompareControl.SchemaComparison[] schemaComparisons, Database accordingTo)
isSameObjectback to summary
public boolean isSameObject(DatabaseObject object1, DatabaseObject object2, CompareControl.SchemaComparison[] schemaComparisons, Database accordingTo)
registerback to summary
public void register(DatabaseObjectComparator generator)
resetback to summary
public static synchronized void reset()
resetAllback to summary
public static synchronized void resetAll()
unregisterback to summary
public void unregister(DatabaseObjectComparator generator)
unregisterback to summary
public void unregister(Class<T> generatorClass)