Class ConsignmentTrackingIdValidator

  • All Implemented Interfaces:
    javax.validation.ConstraintValidator<ConsignmentTrackingIdValid,​java.lang.Object>

    public class ConsignmentTrackingIdValidator
    extends java.lang.Object
    implements javax.validation.ConstraintValidator<ConsignmentTrackingIdValid,​java.lang.Object>
    Validates the correctness of the input trackingId of consignment.This validator delegates the actual validation process to actual implemented carrier.
    • Field Detail

      • DEFAULT_CARRIER_CODE

        public static final java.lang.String DEFAULT_CARRIER_CODE
        See Also:
        Constant Field Values
    • Constructor Detail

      • ConsignmentTrackingIdValidator

        public ConsignmentTrackingIdValidator()
    • Method Detail

      • isValid

        public boolean isValid​(java.lang.Object value,
                               javax.validation.ConstraintValidatorContext context)
        validate the correctness of consignment tracking ID
        Specified by:
        isValid in interface javax.validation.ConstraintValidator<ConsignmentTrackingIdValid,​java.lang.Object>
        Parameters:
        Object - value should be an instance of ConsignmentModel passed down from backoffice
        ConstraintValidatorContext - context is not used here
        Returns:
        boolean indicating if the trackingID from consignmentModel is valid
      • checkConsignmentInfo

        protected boolean checkConsignmentInfo​(ConsignmentModel consignment,
                                               java.util.Map<java.lang.String,​CarrierAdaptor> adaptors)
        Core logic to check the correctness of consignment.
        Parameters:
        consignment - The instance of consignment
        adaptors - Adaptor to get carrier info.
        Returns:
        The check result.