Class LegacyHiLoAlgorithmOptimizer

java.lang.Object
org.hibernate.id.enhanced.AbstractOptimizer
org.hibernate.id.enhanced.LegacyHiLoAlgorithmOptimizer
All Implemented Interfaces:
Optimizer

public class LegacyHiLoAlgorithmOptimizer extends AbstractOptimizer
Slight variation from HiLoOptimizer, maintaining compatibility with the values generated by the legacy Hibernate hilo based generators.
  • Constructor Details

    • LegacyHiLoAlgorithmOptimizer

      public LegacyHiLoAlgorithmOptimizer(Class<?> returnClass, int incrementSize)
      Constructs a LegacyHiLoAlgorithmOptimizer
      Parameters:
      returnClass - The Java type of the values to be generated
      incrementSize - The increment size.
  • Method Details

    • generate

      public Serializable generate(AccessCallback callback)
      Description copied from interface: Optimizer
      Generate an identifier value accounting for this specific optimization.
      Parameters:
      callback - Callback to access the underlying value source.
      Returns:
      The generated identifier value.
    • getLastSourceValue

      public IntegralDataTypeHolder getLastSourceValue()
      Description copied from interface: Optimizer
      A common means to access the last value obtained from the underlying source. This is intended for testing purposes, since accessing the underlying database source directly is much more difficult.
      Returns:
      The last value we obtained from the underlying source; null indicates we have not yet consulted with the source.
    • applyIncrementSizeToSourceValues

      public boolean applyIncrementSizeToSourceValues()
      Description copied from interface: Optimizer
      Are increments to be applied to the values stored in the underlying value source?
      Returns:
      True if the values in the source are to be incremented according to the defined increment size; false otherwise, in which case the increment is totally an in memory construct.
    • getLastValue

      public IntegralDataTypeHolder getLastValue()
      Getter for property 'lastValue'.

      Exposure intended for testing purposes.

      Returns:
      Value for property 'lastValue'.