Interface Constraint<V>
- Type Parameters:
V- value type
public interface Constraint<V>
Perform a validation on data upon load.
- Since:
- 4.0.0
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceConstraint.Factory<A extends Annotation,V> Provider for a specific constraint given a field type. -
Method Summary
Modifier and TypeMethodDescriptionstatic Constraint.Factory<Matches,String> localizedPattern(ResourceBundle bundle) Require values to match thepatternprovided.static Constraint.Factory<Matches,String> pattern()Require values to match thepatternprovided.static <T extends Annotation>
Constraint.Factory<T,Object> required()Require a value to be present for fields marked with the annotationT.voidCheck if the provided deserialized value matches an expected condition.
-
Method Details
-
validate
Check if the provided deserialized value matches an expected condition.- Parameters:
value- value to test- Throws:
SerializationException- if the value falls outside its constraint.- Since:
- 4.0.0
-
required
Require a value to be present for fields marked with the annotationT.- Type Parameters:
T- marker annotation type- Returns:
- new constraint factory
- Since:
- 4.0.0
-
pattern
Require values to match thepatternprovided.Upon failure, an error message will be taken from the annotation.
- Returns:
- factory providing matching pattern test
- Since:
- 4.0.0
-
localizedPattern
Require values to match thepatternprovided.Upon failure, an error message will be taken from
bundlewith a key defined in the annotation.- Parameters:
bundle- source for localized messages- Returns:
- factory providing matching pattern test
- Since:
- 4.0.0
-