Class HsqlSupportingUniqueConstraintSnapshotGenerator

java.lang.Object
liquibase.snapshot.jvm.JdbcSnapshotGenerator
liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
com.atlassian.crowd.util.persistence.liquibase.ext.snapshot.jvm.HsqlSupportingUniqueConstraintSnapshotGenerator
All Implemented Interfaces:
liquibase.snapshot.SnapshotGenerator

public class HsqlSupportingUniqueConstraintSnapshotGenerator extends liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
Replaces UniqueConstraintSnapshotGenerator with one that can handle hsql 1.8 (CORE-2966)

Can't be used directly, as it needs to extend UniqueConstraintSnapshotGenerator, but that prevents it from replacing it using Liquibase's replace semantic.

See Also:
  • Field Summary

    Fields inherited from interface liquibase.snapshot.SnapshotGenerator

    PRIORITY_ADDITIONAL, PRIORITY_DATABASE, PRIORITY_DEFAULT, PRIORITY_NONE
  • Constructor Summary

    Constructors
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    addTo(liquibase.structure.DatabaseObject foundObject, liquibase.snapshot.DatabaseSnapshot snapshot)
     
    int
    getPriority(Class<? extends liquibase.structure.DatabaseObject> objectType, liquibase.database.Database database)
     
    protected List<liquibase.snapshot.CachedRow>
    listConstraints(liquibase.structure.core.Table table, liquibase.snapshot.DatabaseSnapshot snapshot, liquibase.structure.core.Schema schema)
     
    protected liquibase.structure.DatabaseObject
    snapshotObject(liquibase.structure.DatabaseObject example, liquibase.snapshot.DatabaseSnapshot snapshot)
     

    Methods inherited from class liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator

    getCacheKey, getCacheKey, includeTableNameInCacheKey, listColumns, supportsBulkQuery

    Methods inherited from class liquibase.snapshot.jvm.JdbcSnapshotGenerator

    addStatusListener, addsTo, cleanNameFromDatabase, getDatabaseCatalogNames, replaces, shouldAddTo, snapshot, updateListeners

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • HsqlSupportingUniqueConstraintSnapshotGenerator

      public HsqlSupportingUniqueConstraintSnapshotGenerator()
  • Method Details

    • snapshotObject

      protected liquibase.structure.DatabaseObject snapshotObject(liquibase.structure.DatabaseObject example, liquibase.snapshot.DatabaseSnapshot snapshot) throws liquibase.exception.DatabaseException
      Overrides:
      snapshotObject in class liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
      Throws:
      liquibase.exception.DatabaseException
    • addTo

      protected void addTo(liquibase.structure.DatabaseObject foundObject, liquibase.snapshot.DatabaseSnapshot snapshot) throws liquibase.exception.DatabaseException
      Overrides:
      addTo in class liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
      Throws:
      liquibase.exception.DatabaseException
    • getPriority

      public int getPriority(Class<? extends liquibase.structure.DatabaseObject> objectType, liquibase.database.Database database)
      Specified by:
      getPriority in interface liquibase.snapshot.SnapshotGenerator
      Overrides:
      getPriority in class liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
    • listConstraints

      protected List<liquibase.snapshot.CachedRow> listConstraints(liquibase.structure.core.Table table, liquibase.snapshot.DatabaseSnapshot snapshot, liquibase.structure.core.Schema schema) throws liquibase.exception.DatabaseException, SQLException
      Overrides:
      listConstraints in class liquibase.snapshot.jvm.UniqueConstraintSnapshotGenerator
      Throws:
      liquibase.exception.DatabaseException
      SQLException