Class DefaultFulfillmentGroupSubmitValidator

  • All Implemented Interfaces:
    FulfillmentGroupSubmitValidator, FulfillmentValidator, org.springframework.validation.SmartValidator, org.springframework.validation.Validator

    public class DefaultFulfillmentGroupSubmitValidator
    extends Object
    implements FulfillmentGroupSubmitValidator
    Performs validation for a fulfillment group. This mainly delegates to other validators the are able to validate with more specific conditions.
    Author:
    Jacob Mitash
    • Method Detail

      • validate

        public void validate​(@NonNull
                             @NonNull Object target,
                             @NonNull
                             @NonNull org.springframework.validation.Errors errors,
                             @NonNull
                             @NonNull Set<Object> hints)
        Description copied from interface: FulfillmentValidator
        Validates the target.
        Specified by:
        validate in interface FulfillmentValidator
        Parameters:
        target - the target of the validation
        errors - an errors container to place rejections and pull values from
        hints - any hints that should be used during validation
      • validateBase

        protected void validateBase​(@NonNull
                                    @NonNull com.broadleafcommerce.cart.client.domain.FulfillmentGroup group,
                                    @NonNull
                                    @NonNull org.springframework.validation.Errors errors,
                                    @NonNull
                                    @NonNull Set<Object> hints)
        Validates a fulfillment group at the top level, not considering nested or pricing fields. By default, this will also delegate to typeValidators to validate things that would be specific to the fulfillment type being used.
        Parameters:
        group - the fulfillment group to validate
        errors - an error container to place validation errors in
        hints - any hints to use when validating the group
      • validatePricing

        protected void validatePricing​(@NonNull
                                       @NonNull com.broadleafcommerce.cart.client.domain.FulfillmentGroup group,
                                       @NonNull
                                       @NonNull org.springframework.validation.Errors errors,
                                       @NonNull
                                       @NonNull Set<Object> hints)
        Validates the price fields on the fulfillment group (top-level only- does not consider individual item prices).
        Parameters:
        group - the fulfillment group to validate
        errors - an error container to place validation errors in
        hints - any hints to use when validating the group
      • validateItems

        protected void validateItems​(@NonNull
                                     @NonNull com.broadleafcommerce.cart.client.domain.FulfillmentGroup group,
                                     @NonNull
                                     @NonNull org.springframework.validation.Errors errors,
                                     @NonNull
                                     @NonNull Set<Object> hints)
        Validates the fulfillment items of the group. Delegates to itemValidators for the actual validation.
        Parameters:
        group - the fulfillment group to validate
        errors - an error container to place validation errors in
        hints - any hints to use when validating the group
      • validateOptions

        protected void validateOptions​(@NonNull
                                       @NonNull com.broadleafcommerce.cart.client.domain.FulfillmentGroup group,
                                       @NonNull
                                       @NonNull org.springframework.validation.Errors errors,
                                       @NonNull
                                       @NonNull Set<Object> hints)
        Validates the fulfillment option on this group. Delegates to optionValidators.
        Parameters:
        group - the fulfillment group to validate
        errors - an error container to place validation errors in
        hints - any hints to use when validating the group
      • pricingFields

        protected Set<String> pricingFields()
        Produces a set of field names of pricing fields that should be validated. These are the simple field names (i.e. no nested paths).
        Returns:
        the price field names
      • getPricingFields

        protected Set<String> getPricingFields()