Class EnumCharacteristicValueValidator
java.lang.Object
com.broadleafcommerce.catalog.service.validation.characteristic.EnumCharacteristicValueValidator
- All Implemented Interfaces:
CharacteristicValueValidator
public class EnumCharacteristicValueValidator
extends Object
implements CharacteristicValueValidator
An implementation of
CharacteristicValueValidator
that handles validation for the
CharacteristicValue
of a Characteristic
with an
ENUM
Characteristic.valueType
.
This has separate handling from SimpleCharacteristicValueValidator
because a
Characteristic
with ENUM value type
can have multiple
value entries
whose value
types
can be BOOLEAN
,
DECIMAL
,
INTEGER
, or
STRING
, and also has a label for each value
entry.
- Since:
- Catalog Service 2.2.0, Release Train 2.2.0
- Author:
- Julia Lopez-Pozas (jlopezpozas)
-
Constructor Summary
ConstructorsConstructorDescriptionEnumCharacteristicValueValidator
(List<String> enumCharacteristicValueTypes, SimpleCharacteristicValueValidator simpleCharacteristicValueValidator) -
Method Summary
Modifier and TypeMethodDescriptionboolean
canHandle
(@NonNull CharacteristicValue characteristicValue, Characteristic characteristic) Checks if this Validator can handle validation for the givenCharacteristicValue.valueType
.protected SimpleCharacteristicValueValidator
void
validate
(@NonNull CharacteristicValue characteristicValue, @NonNull org.springframework.validation.Errors errors, Characteristic characteristic) Validates that eachCharacteristicValue.value
matches itsCharacteristicValue.valueType
, along with someDefaultCharacteristicValueValueType
specific validation forCharacteristicValues
.
-
Constructor Details
-
EnumCharacteristicValueValidator
public EnumCharacteristicValueValidator(List<String> enumCharacteristicValueTypes, SimpleCharacteristicValueValidator simpleCharacteristicValueValidator)
-
-
Method Details
-
canHandle
public boolean canHandle(@NonNull @NonNull CharacteristicValue characteristicValue, @Nullable Characteristic characteristic) Description copied from interface:CharacteristicValueValidator
Checks if this Validator can handle validation for the givenCharacteristicValue.valueType
.- Specified by:
canHandle
in interfaceCharacteristicValueValidator
- Parameters:
characteristicValue
- theCharacteristicValue
object to check against this Validator's expectedCharacteristic.valueTypes
.characteristic
- theCharacteristic
object to check against this Validator's expectedCharacteristic.valueType
. Can be null if the Validator has no need for theCharacteristic
, likeSimpleCharacteristicValueValidator
- Returns:
- true if this Validator handles validation for the
Characteristic.value
of thisCharacteristic.valueType
, false if not
-
validate
public void validate(@NonNull @NonNull CharacteristicValue characteristicValue, @NonNull @NonNull org.springframework.validation.Errors errors, @Nullable Characteristic characteristic) Description copied from interface:CharacteristicValueValidator
Validates that eachCharacteristicValue.value
matches itsCharacteristicValue.valueType
, along with someDefaultCharacteristicValueValueType
specific validation forCharacteristicValues
.- Specified by:
validate
in interfaceCharacteristicValueValidator
- Parameters:
characteristicValue
- The product characteristic value to validateerrors
- Holder for validation context informationcharacteristic
- The product characteristic that can be used for validation, if necessary
-
getSimpleCharacteristicValueValidator
-
getEnumCharacteristicValueTypes
-