Class SourceRuleConditionOverlapValidator

  • All Implemented Interfaces:
    java.util.function.Predicate<SourceRuleModel>

    public class SourceRuleConditionOverlapValidator
    extends java.lang.Object
    implements java.util.function.Predicate<SourceRuleModel>
    Performs validation of SourceRuleModel on the presence of overlapping containers by comparing categories and products on the chance of their matching
    • Constructor Detail

      • SourceRuleConditionOverlapValidator

        public SourceRuleConditionOverlapValidator()
    • Method Detail

      • validateOverlap

        protected boolean validateOverlap​(java.util.Map<RuleConditionData,​java.util.Set<java.lang.String>> mappedItemCodes)
      • setRuleConditionsService

        public void setRuleConditionsService​(RuleConditionsService ruleConditionsService)
      • setRuleConditionsRegistry

        public void setRuleConditionsRegistry​(RuleConditionsRegistry ruleConditionsRegistry)
      • getContainerCountThreshold

        protected java.lang.Integer getContainerCountThreshold()
      • setContainerCountThreshold

        public void setContainerCountThreshold​(java.lang.Integer containerCountThreshold)
      • getOverlapCountThreshold

        protected java.lang.Integer getOverlapCountThreshold()
      • setOverlapCountThreshold

        public void setOverlapCountThreshold​(java.lang.Integer overlapCountThreshold)
      • getConditionToCategoriesMapper

        protected java.util.function.Function<RuleConditionData,​java.util.List<CategoryModel>> getConditionToCategoriesMapper()
      • setConditionToCategoriesMapper

        public void setConditionToCategoriesMapper​(java.util.function.Function<RuleConditionData,​java.util.List<CategoryModel>> conditionToCategoriesMapper)
      • getConditionToProductsMapper

        protected java.util.function.Function<RuleConditionData,​java.util.List<ProductModel>> getConditionToProductsMapper()
      • setConditionToProductsMapper

        public void setConditionToProductsMapper​(java.util.function.Function<RuleConditionData,​java.util.List<ProductModel>> conditionToProductsMapper)
      • getCategoryToCodesMapper

        public java.util.function.Function<CategoryModel,​java.util.Set<java.lang.String>> getCategoryToCodesMapper()
      • setCategoryToCodesMapper

        public void setCategoryToCodesMapper​(java.util.function.Function<CategoryModel,​java.util.Set<java.lang.String>> categoryToCodesMapper)
      • getProductToCodesMapper

        protected java.util.function.Function<ProductModel,​java.util.Set<java.lang.String>> getProductToCodesMapper()
      • setProductToCodesMapper

        public void setProductToCodesMapper​(java.util.function.Function<ProductModel,​java.util.Set<java.lang.String>> productToCodesMapper)
      • getContainerDefinitionId

        protected java.lang.String getContainerDefinitionId()
      • setContainerDefinitionId

        public void setContainerDefinitionId​(java.lang.String containerDefinitionId)