Class HsqlSupportingUniqueConstraintSnapshotGeneratorWrapper

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

public class HsqlSupportingUniqueConstraintSnapshotGeneratorWrapper extends liquibase.snapshot.jvm.JdbcSnapshotGenerator
Replaces UniqueConstraintSnapshotGenerator with one that can handle hsql 1.8 (CORE-2966) Needs an extra level of indirection due to how liquibase handles replacements (it removes them based on being assignable from the replaced class, so this class can't extend UniqueConstraintSnapshotGenerator, or it won't be picked) Can't use a delegate directly due to having to access protected methods.
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)
     
    Class<? extends liquibase.snapshot.SnapshotGenerator>[]
     
    protected liquibase.structure.DatabaseObject
    snapshotObject(liquibase.structure.DatabaseObject example, liquibase.snapshot.DatabaseSnapshot snapshot)
     

    Methods inherited from class liquibase.snapshot.jvm.JdbcSnapshotGenerator

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

    Methods inherited from class java.lang.Object

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

    • HsqlSupportingUniqueConstraintSnapshotGeneratorWrapper

      public HsqlSupportingUniqueConstraintSnapshotGeneratorWrapper()
  • Method Details

    • replaces

      public Class<? extends liquibase.snapshot.SnapshotGenerator>[] replaces()
      Specified by:
      replaces in interface liquibase.snapshot.SnapshotGenerator
      Overrides:
      replaces in class liquibase.snapshot.jvm.JdbcSnapshotGenerator
    • snapshotObject

      protected liquibase.structure.DatabaseObject snapshotObject(liquibase.structure.DatabaseObject example, liquibase.snapshot.DatabaseSnapshot snapshot) throws liquibase.exception.DatabaseException, liquibase.snapshot.InvalidExampleException
      Specified by:
      snapshotObject in class liquibase.snapshot.jvm.JdbcSnapshotGenerator
      Throws:
      liquibase.exception.DatabaseException
      liquibase.snapshot.InvalidExampleException
    • addTo

      protected void addTo(liquibase.structure.DatabaseObject foundObject, liquibase.snapshot.DatabaseSnapshot snapshot) throws liquibase.exception.DatabaseException, liquibase.snapshot.InvalidExampleException
      Specified by:
      addTo in class liquibase.snapshot.jvm.JdbcSnapshotGenerator
      Throws:
      liquibase.exception.DatabaseException
      liquibase.snapshot.InvalidExampleException