java.lang.Object
org.broadleafcommerce.openadmin.server.service.persistence.module.criteria.Restriction

public class Restriction extends Object
Responsible for providing a JPA Predicate instance for query construction based on several objects that define query construction behavior for the target field. The objects can be replaced with custom implementations for more specific behavior.
Author:
Jeff Fischer
See Also:
  • Field Details

  • Constructor Details

    • Restriction

      public Restriction()
  • Method Details

    • withPredicateProvider

      public Restriction withPredicateProvider(PredicateProvider predicateProvider)
    • withFilterValueConverter

      public Restriction withFilterValueConverter(FilterValueConverter filterValueConverter)
    • withFieldPathBuilder

      public Restriction withFieldPathBuilder(FieldPathBuilder fieldPathBuilder)
    • buildRestriction

      public jakarta.persistence.criteria.Predicate buildRestriction(jakarta.persistence.criteria.CriteriaBuilder builder, jakarta.persistence.criteria.From root, String ceilingEntity, String targetPropertyName, jakarta.persistence.criteria.Path explicitPath, List directValues, boolean shouldConvert, jakarta.persistence.criteria.CriteriaQuery criteria, List<jakarta.persistence.criteria.Predicate> restrictions)
      This method will return a FieldPathBuilder that could be used by the caller to establish any additional Roots that might be necessary due to the path living inside of a polymorphic version of the ceiling entity. The Predicate object that {@link #buildRestriction(...)} returns is also available inside of the FieldPathBuilder object for the caller's use.
      Parameters:
      builder -
      root -
      ceilingEntity -
      targetPropertyName -
      explicitPath -
      directValues -
      shouldConvert -
      Returns:
    • getFilterValueConverter

      public FilterValueConverter getFilterValueConverter()
    • setFilterValueConverter

      public void setFilterValueConverter(FilterValueConverter filterValueConverter)
    • getPredicateProvider

      public PredicateProvider getPredicateProvider()
    • setPredicateProvider

      public void setPredicateProvider(PredicateProvider predicateProvider)
    • getFieldPathBuilder

      public FieldPathBuilder getFieldPathBuilder()
    • setFieldPathBuilder

      public void setFieldPathBuilder(FieldPathBuilder fieldPathBuilder)
    • clone

      public Restriction clone()
      Overrides:
      clone in class Object