Class SoftDeleteHelper

java.lang.Object
org.hibernate.boot.model.internal.SoftDeleteHelper

public class SoftDeleteHelper extends Object
Helper for dealing with SoftDelete
  • Constructor Details

    • SoftDeleteHelper

      public SoftDeleteHelper()
  • Method Details

    • bindSoftDeleteIndicator

      public static void bindSoftDeleteIndicator(SoftDelete softDeleteConfig, SoftDeletable target, Table table, MetadataBuildingContext context)
      Creates and binds the column and value for modeling the soft-delete in the database
      Parameters:
      softDeleteConfig - The SoftDelete annotation
      target - The thing which is to be soft-deleted
      table - The table to which the soft-delete should be applied
      context - The processing context for access to needed info and services
    • resolveSoftDeleteMapping

      public static SoftDeleteMappingImpl resolveSoftDeleteMapping(SoftDeletableModelPart softDeletableModelPart, SoftDeletable bootMapping, String tableName, MappingModelCreationProcess creationProcess)
    • resolveSoftDeleteMapping

      public static SoftDeleteMappingImpl resolveSoftDeleteMapping(SoftDeletableModelPart softDeletableModelPart, SoftDeletable bootMapping, String tableName, Dialect dialect)
    • createNonSoftDeletedRestriction

      public static Predicate createNonSoftDeletedRestriction(TableReference tableReference, SoftDeleteMapping softDeleteMapping)
      Create a SQL AST Predicate for restricting matches to non-deleted rows
      Parameters:
      tableReference - The table reference for the table containing the soft-delete column
      softDeleteMapping - The soft-delete mapping
    • createNonSoftDeletedRestriction

      public static Predicate createNonSoftDeletedRestriction(TableReference tableReference, SoftDeleteMapping softDeleteMapping, SqlExpressionResolver expressionResolver)
      Create a SQL AST Predicate for restricting matches to non-deleted rows
      Parameters:
      tableReference - The table reference for the table containing the soft-delete column
      softDeleteMapping - The soft-delete mapping
    • createSoftDeleteAssignment

      public static Assignment createSoftDeleteAssignment(TableReference tableReference, SoftDeleteMapping softDeleteMapping)
      Create a SQL AST Assignment for setting the soft-delete column to its deleted indicate value
      Parameters:
      tableReference - The table reference for the table containing the soft-delete column
      softDeleteMapping - The soft-delete mapping