Package net.morimekta.providence.util
Class MessageValidation.MessageCollectionValidationExpectation<BaseMessage extends PMessage<BaseMessage>,FieldMessage extends PMessage<FieldMessage>,E extends java.lang.Exception>
- java.lang.Object
-
- net.morimekta.providence.util.MessageValidation.MessageCollectionValidationExpectation<BaseMessage,FieldMessage,E>
-
- Type Parameters:
BaseMessage- The base or container message type.FieldMessage- The field or contained message type.E- The exception type thrown.
- All Implemented Interfaces:
MessageValidation.Expectation<BaseMessage>,MessageValidation.ValidationExpectation<BaseMessage,E>
- Enclosing class:
- MessageValidation<M extends PMessage<M>,E extends java.lang.Exception>
public static final class MessageValidation.MessageCollectionValidationExpectation<BaseMessage extends PMessage<BaseMessage>,FieldMessage extends PMessage<FieldMessage>,E extends java.lang.Exception> extends java.lang.Object implements MessageValidation.ValidationExpectation<BaseMessage,E>
Test a field that itself is a map of message values using another message validation. The field value is only tested if present, so null value allowance check is required in addition to this validation.
-
-
Constructor Summary
Constructors Constructor Description MessageCollectionValidationExpectation(PField<BaseMessage> field, MessageValidation<FieldMessage,E> validation)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidtest(java.lang.String path, BaseMessage message)Test the expectation at a specific path in the structure.java.util.List<E>validationErrors(java.lang.String path, BaseMessage message)Check for validity, and collect as many validation errors as possible.
-
-
-
Constructor Detail
-
MessageCollectionValidationExpectation
public MessageCollectionValidationExpectation(PField<BaseMessage> field, MessageValidation<FieldMessage,E> validation)
-
-
Method Detail
-
test
public void test(java.lang.String path, BaseMessage message) throws java.lang.ExceptionDescription copied from interface:MessageValidation.ExpectationTest the expectation at a specific path in the structure.- Specified by:
testin interfaceMessageValidation.Expectation<BaseMessage extends PMessage<BaseMessage>>- Parameters:
path- The path to the current location.message- The value to be tested.- Throws:
java.lang.Exception- On validation failure.
-
validationErrors
public java.util.List<E> validationErrors(java.lang.String path, BaseMessage message)
Description copied from interface:MessageValidation.ValidationExpectationCheck for validity, and collect as many validation errors as possible.- Specified by:
validationErrorsin interfaceMessageValidation.ValidationExpectation<BaseMessage extends PMessage<BaseMessage>,FieldMessage extends PMessage<FieldMessage>>- Parameters:
path- The path to the base message.message- The message to test.- Returns:
- True if valid, otherwise false.
-
-