Class AbstractEnumValueConfigurationValidator
- java.lang.Object
-
- com.github.toolarium.enumeration.configuration.validation.impl.AbstractEnumValueConfigurationValidator
-
- All Implemented Interfaces:
IEnumValueConfigurationValidator
- Direct Known Subclasses:
DefaultEnumValueConfigurationValidator
public abstract class AbstractEnumValueConfigurationValidator extends java.lang.Object implements IEnumValueConfigurationValidator
Abstract validator base class
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringHEX_WEBCOLOR_PATTERNprotected static java.util.regex.PatternhexWebColorPattern
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractEnumValueConfigurationValidator()Constructor for AbstractEnumValueConfigurationValidator
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.StringcheckBase(java.lang.String value)Check if the given value is a number or not<T> Tconvert(EnumValueConfigurationDataType dataType, java.lang.String inputToTest)Convertprotected EnumValueConfigurationBinaryObjectgetBinary(java.lang.String input)Get the binary content.protected java.lang.BooleangetBoolean(java.lang.String input)Get the booleanprotected java.lang.StringgetCertificate(java.lang.String input)Get the certificateprotected java.lang.StringgetCIDR(java.lang.String input)Get the CIDRprotected java.lang.StringgetColor(java.lang.String input)Get the colorprotected java.lang.StringgetCron(java.lang.String input)Get the cronprotected java.time.LocalDategetDate(java.lang.String input)Get the dateprotected java.lang.DoublegetDouble(java.lang.String input)Get the doubleprotected java.lang.StringgetEmail(java.lang.String input)Get the emailprotected java.lang.LonggetNumber(java.lang.String input)Get the numberprotected java.lang.StringgetRegExp(java.lang.String input)Get the regexpprotected java.time.LocalTimegetTime(java.lang.String input)Get the timeprotected java.time.InstantgetTimestamp(java.lang.String input)Get the timestampprotected java.net.URIgetURI(java.lang.String input)Get the uriprotected java.util.UUIDgetUUID(java.lang.String input)Get the UUIDvoidvalidate(EnumValueConfiguration enumValueConfiguration)Validate consistency of anEnumValueConfigurationvoidvalidate(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String input)Validate the data type against an input stringvoidvalidate(EnumValueConfiguration enumValueConfiguration, java.lang.String input)Validate anEnumValueConfigurationagainst an input stringprotected voidvalidateDefaultValue(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String inputDefaultValue)Validate default valueprotected voidvalidateDescription(java.lang.String description)Validate descriptionprotected voidvalidateExampleValue(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String inputExampleValue)Validate example valueprotected voidvalidateKey(java.lang.String key)Validate keyprotected voidvalidateValidity(java.time.Instant validFrom, java.time.Instant validTill)Validate validityprotected voidvalidateValue(java.lang.String inputType, EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String input)Validate example value
-
-
-
Field Detail
-
HEX_WEBCOLOR_PATTERN
protected static final java.lang.String HEX_WEBCOLOR_PATTERN
- See Also:
- Constant Field Values
-
hexWebColorPattern
protected static final java.util.regex.Pattern hexWebColorPattern
-
-
Method Detail
-
validate
public void validate(EnumValueConfiguration enumValueConfiguration, java.lang.String input) throws ValidationException
Description copied from interface:IEnumValueConfigurationValidatorValidate anEnumValueConfigurationagainst an input string- Specified by:
validatein interfaceIEnumValueConfigurationValidator- Parameters:
enumValueConfiguration- enum value configurationinput- the input to validate- Throws:
ValidationException- In case of a validation error- See Also:
IEnumValueConfigurationValidator.validate(com.github.toolarium.enumeration.configuration.dto.EnumValueConfiguration, java.lang.String)
-
validate
public void validate(EnumValueConfiguration enumValueConfiguration) throws ValidationException
Description copied from interface:IEnumValueConfigurationValidatorValidate consistency of anEnumValueConfiguration- Specified by:
validatein interfaceIEnumValueConfigurationValidator- Parameters:
enumValueConfiguration- enum value configuation- Throws:
ValidationException- In case of a validation error- See Also:
IEnumValueConfigurationValidator.validate(com.github.toolarium.enumeration.configuration.dto.EnumValueConfiguration)
-
validate
public void validate(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String input) throws ValidationException
Description copied from interface:IEnumValueConfigurationValidatorValidate the data type against an input string- Specified by:
validatein interfaceIEnumValueConfigurationValidator- Parameters:
dataType- the data typecardinality- the cardinalityvalueSize- the value sizeisOptional- true if it is optionalinput- the input to validate- Throws:
ValidationException- In case of a validation error- See Also:
IEnumValueConfigurationValidator.validate(com.github.toolarium.enumeration.configuration.dto.EnumValueConfigurationDataType, com.github.toolarium.enumeration.configuration.dto.EnumValueConfigurationSizing, com.github.toolarium.enumeration.configuration.dto.EnumValueConfigurationSizing, boolean, java.lang.String)
-
validateDescription
protected void validateDescription(java.lang.String description) throws ValidationExceptionValidate description- Parameters:
description- the description- Throws:
ValidationException- In case of a validation violation
-
validateKey
protected void validateKey(java.lang.String key) throws ValidationExceptionValidate key- Parameters:
key- the key- Throws:
ValidationException- In case of a validation violation
-
validateValidity
protected void validateValidity(java.time.Instant validFrom, java.time.Instant validTill) throws ValidationExceptionValidate validity- Parameters:
validFrom- the valid fromvalidTill- the valid till- Throws:
ValidationException- In case of a validation violation
-
validateDefaultValue
protected void validateDefaultValue(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String inputDefaultValue) throws ValidationException
Validate default value- Parameters:
dataType- the data typecardinality- the cardinalityvalueSize- the value sizeisOptional- true if it is optionalinputDefaultValue- the default value- Throws:
ValidationException- In case of a validation violation
-
validateExampleValue
protected void validateExampleValue(EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String inputExampleValue) throws ValidationException
Validate example value- Parameters:
dataType- the data typecardinality- the cardinalityvalueSize- the value sizeisOptional- true if it is optionalinputExampleValue- the example value- Throws:
ValidationException- In case of a validation violation
-
validateValue
protected void validateValue(java.lang.String inputType, EnumValueConfigurationDataType dataType, EnumValueConfigurationSizing cardinality, EnumValueConfigurationSizing valueSize, boolean isOptional, java.lang.String input) throws ValidationExceptionValidate example value- Parameters:
inputType- the input typedataType- the data typecardinality- the cardinalityvalueSize- the value sizeinput- the default valueisOptional- true if it is optional; otherwise false- Throws:
ValidationException- In case of a validation violation
-
convert
public <T> T convert(EnumValueConfigurationDataType dataType, java.lang.String inputToTest) throws ValidationException
Description copied from interface:IEnumValueConfigurationValidatorConvert- Specified by:
convertin interfaceIEnumValueConfigurationValidator- Type Parameters:
T- the generic type- Parameters:
dataType- the data typeinputToTest- the input to validate- Returns:
- the result
- Throws:
ValidationException- In case of a validation error- See Also:
IEnumValueConfigurationValidator.convert(com.github.toolarium.enumeration.configuration.dto.EnumValueConfigurationDataType, java.lang.String)
-
checkBase
protected java.lang.String checkBase(java.lang.String value)
Check if the given value is a number or not- Parameters:
value- the expression- Returns:
- true if it is a number
-
getNumber
protected java.lang.Long getNumber(java.lang.String input) throws java.lang.NumberFormatExceptionGet the number- Parameters:
input- the input to parse- Returns:
- the number
- Throws:
java.lang.NumberFormatException- in case its not a number
-
getDouble
protected java.lang.Double getDouble(java.lang.String input) throws java.lang.NumberFormatExceptionGet the double- Parameters:
input- the input to parse- Returns:
- the double
- Throws:
java.lang.NumberFormatException- in case its not a double
-
getBoolean
protected java.lang.Boolean getBoolean(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the boolean- Parameters:
input- the input to parse- Returns:
- the boolean
- Throws:
java.lang.IllegalArgumentException- in case its not a boolean
-
getDate
protected java.time.LocalDate getDate(java.lang.String input) throws java.time.format.DateTimeParseExceptionGet the date- Parameters:
input- the input to parse- Returns:
- the date
- Throws:
java.time.format.DateTimeParseException- in case its not a date
-
getTime
protected java.time.LocalTime getTime(java.lang.String input) throws java.time.format.DateTimeParseExceptionGet the time- Parameters:
input- the input to parse- Returns:
- the time
- Throws:
java.time.format.DateTimeParseException- in case its not a time
-
getTimestamp
protected java.time.Instant getTimestamp(java.lang.String input) throws java.time.format.DateTimeParseExceptionGet the timestamp- Parameters:
input- the input to parse- Returns:
- the timestamp
- Throws:
java.time.format.DateTimeParseException- in case its not a timestamp
-
getRegExp
protected java.lang.String getRegExp(java.lang.String input) throws java.util.regex.PatternSyntaxExceptionGet the regexp- Parameters:
input- the input to parse- Returns:
- the regexp
- Throws:
java.util.regex.PatternSyntaxException- in case its not a regexp
-
getUUID
protected java.util.UUID getUUID(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the UUID- Parameters:
input- the input to parse- Returns:
- the UUID
- Throws:
java.lang.IllegalArgumentException- in case its not a UUID
-
getURI
protected java.net.URI getURI(java.lang.String input) throws java.net.URISyntaxExceptionGet the uri- Parameters:
input- the input to parse- Returns:
- the uri
- Throws:
java.net.URISyntaxException- in case its not a url
-
getCIDR
protected java.lang.String getCIDR(java.lang.String input) throws java.net.URISyntaxExceptionGet the CIDR- Parameters:
input- the input to parse- Returns:
- the CIDR
- Throws:
java.net.URISyntaxException- in case its not a CIDR
-
getEmail
protected java.lang.String getEmail(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the email- Parameters:
input- the input to parse- Returns:
- the email
- Throws:
java.lang.IllegalArgumentException- in case its not a email
-
getCron
protected java.lang.String getCron(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the cron- Parameters:
input- the input to parse- Returns:
- the cron expression
- Throws:
java.lang.IllegalArgumentException- in case its not a cron expression
-
getColor
protected java.lang.String getColor(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the color- Parameters:
input- the input to parse- Returns:
- the color
- Throws:
java.lang.IllegalArgumentException- in case its not a color
-
getCertificate
protected java.lang.String getCertificate(java.lang.String input) throws java.lang.IllegalArgumentExceptionGet the certificate- Parameters:
input- the input to parse- Returns:
- the certificate
- Throws:
java.lang.IllegalArgumentException- in case its not a certificate
-
getBinary
protected EnumValueConfigurationBinaryObject getBinary(java.lang.String input) throws java.lang.IllegalArgumentException
Get the binary content. Format:[name]|[timestamp]|[mime-type]|[content base64 encoded].The name, timestamp (as RFC 3339), mimetype are optional, only base64 content is a valid content., e.g.myfile.txt|2021-03-15T08:59:22.123Z|text/plain|VGV4dAo=ormyfile.txt|||VGV4dAo=orVGV4dAo=- Parameters:
input- the input to parse- Returns:
- the file
- Throws:
java.lang.IllegalArgumentException- in case its not a file
-
-