Class CustomLockDatabaseChangeLogGenerator

java.lang.Object
liquibase.sqlgenerator.core.AbstractSqlGenerator<liquibase.statement.core.LockDatabaseChangeLogStatement>
liquibase.sqlgenerator.core.LockDatabaseChangeLogGenerator
org.keycloak.connections.jpa.updater.liquibase.lock.CustomLockDatabaseChangeLogGenerator
All Implemented Interfaces:
liquibase.servicelocator.PrioritizedService, liquibase.sqlgenerator.SqlGenerator<liquibase.statement.core.LockDatabaseChangeLogStatement>

public class CustomLockDatabaseChangeLogGenerator extends liquibase.sqlgenerator.core.LockDatabaseChangeLogGenerator
We use "SELECT FOR UPDATE" pessimistic locking (Same algorithm like Hibernate LockMode.PESSIMISTIC_WRITE )
Author:
Marek Posolda
  • Field Summary

    Fields inherited from class liquibase.sqlgenerator.core.LockDatabaseChangeLogGenerator

    hostaddress, hostDescription, hostname

    Fields inherited from interface liquibase.servicelocator.PrioritizedService

    COMPARATOR

    Fields inherited from interface liquibase.sqlgenerator.SqlGenerator

    EMPTY_SQL, PRIORITY_DATABASE, PRIORITY_DEFAULT
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    liquibase.sql.Sql[]
    generateSql(liquibase.statement.core.LockDatabaseChangeLogStatement statement, liquibase.database.Database database, liquibase.sqlgenerator.SqlGeneratorChain sqlGeneratorChain)
     
    int
     

    Methods inherited from class liquibase.sqlgenerator.core.LockDatabaseChangeLogGenerator

    validate

    Methods inherited from class liquibase.sqlgenerator.core.AbstractSqlGenerator

    generateRollbackStatementsIsVolatile, generateStatementsIsVolatile, looksLikeFunctionCall, supports, warn

    Methods inherited from class java.lang.Object

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

    • CustomLockDatabaseChangeLogGenerator

      public CustomLockDatabaseChangeLogGenerator()
  • Method Details

    • getPriority

      public int getPriority()
      Specified by:
      getPriority in interface liquibase.servicelocator.PrioritizedService
      Specified by:
      getPriority in interface liquibase.sqlgenerator.SqlGenerator<liquibase.statement.core.LockDatabaseChangeLogStatement>
      Overrides:
      getPriority in class liquibase.sqlgenerator.core.AbstractSqlGenerator<liquibase.statement.core.LockDatabaseChangeLogStatement>
    • generateSql

      public liquibase.sql.Sql[] generateSql(liquibase.statement.core.LockDatabaseChangeLogStatement statement, liquibase.database.Database database, liquibase.sqlgenerator.SqlGeneratorChain sqlGeneratorChain)
      Specified by:
      generateSql in interface liquibase.sqlgenerator.SqlGenerator<liquibase.statement.core.LockDatabaseChangeLogStatement>
      Overrides:
      generateSql in class liquibase.sqlgenerator.core.LockDatabaseChangeLogGenerator