Package org.nuiton.validator.bean
Class AbstractNuitonValidatorContext<O,V,E>
java.lang.Object
org.nuiton.validator.bean.AbstractNuitonValidatorContext<O,V,E>
- Type Parameters:
O- type of bean to validateV- type of bean validator usedE- type of event to create
- Direct Known Subclasses:
BeanListValidator.NuitonValidatorContext,SimpleBeanValidator.NuitonValidatorContext
public abstract class AbstractNuitonValidatorContext<O,V,E>
extends java.lang.Object
Defines a context of validation used for a single bean.
SimpleBeanValidator will then used one of this object and
BeanListValidator as many as it contains beans.
This object box a NuitonValidator to get validation state each time
a higher validator requires it.
It also offers the way to create events (merge logic- Since:
- 2.5.2
- Author:
- Tony Chemit - chemit@codelutin.com
-
Field Summary
Fields Modifier and Type Field Description protected ObeanBean to validate.protected booleancanValidateState to know if the validator can be used (we keep this state for performance reasons : do not want to compute this value each time a validation is asked...).protected java.util.Map<java.lang.String,java.lang.String>conversionErrorsmap of conversion errors detected by this validatorprotected NuitonValidatorResultmessagesState of validation (keep all messages of validation for the filled bean).protected NuitonValidator<O>validatorValidator. -
Constructor Summary
Constructors Constructor Description AbstractNuitonValidatorContext() -
Method Summary
Modifier and Type Method Description <T> Tconvert(java.lang.String fieldName, java.lang.String value, java.lang.Class<T> valueClass)Convert a value.protected abstract EcreateEvent(V source, O bean, java.lang.String field, NuitonValidatorScope scope, java.lang.String[] toAdd, java.lang.String[] toDelete)OgetBean()NuitonValidatorScopegetHighestScope(java.lang.String field)NuitonValidatorResultgetMessages()NuitonValidator<O>getValidator()booleanhasErrors()booleanhasFatalErrors()booleanhasInfos()booleanhasWarnings()booleanisCanValidate()booleanisValid()booleanisValid(java.lang.String fieldName)java.util.List<E>mergeMessages(V beanValidator, NuitonValidatorResult newMessages)protected voidmergeMessages(V beanValidator, NuitonValidatorScope scope, NuitonValidatorResult newMessages, java.util.List<E> events)voidsetBean(O bean)voidsetCanValidate(boolean canValidate)voidsetValidator(NuitonValidator<O> validator)NuitonValidatorResultvalidate()
-
Field Details
-
bean
Bean to validate. -
messages
State of validation (keep all messages of validation for the filled bean). -
validator
Validator. -
conversionErrors
protected final java.util.Map<java.lang.String,java.lang.String> conversionErrorsmap of conversion errors detected by this validator -
canValidate
protected boolean canValidateState to know if the validator can be used (we keep this state for performance reasons : do not want to compute this value each time a validation is asked...).
-
-
Constructor Details
-
AbstractNuitonValidatorContext
public AbstractNuitonValidatorContext()
-
-
Method Details
-
createEvent
protected abstract E createEvent(V source, O bean, java.lang.String field, NuitonValidatorScope scope, java.lang.String[] toAdd, java.lang.String[] toDelete) -
getBean
-
setBean
-
getValidator
-
getMessages
-
isCanValidate
public boolean isCanValidate() -
setCanValidate
public void setCanValidate(boolean canValidate) -
isValid
public boolean isValid() -
hasFatalErrors
public boolean hasFatalErrors() -
hasErrors
public boolean hasErrors() -
hasWarnings
public boolean hasWarnings() -
hasInfos
public boolean hasInfos() -
isValid
public boolean isValid(java.lang.String fieldName) -
getHighestScope
-
setValidator
-
validate
-
convert
public <T> T convert(java.lang.String fieldName, java.lang.String value, java.lang.Class<T> valueClass)Convert a value. If an error occurs, then add an error in validator.- Type Parameters:
T- the type of conversion- Parameters:
fieldName- the name of the bean propertyvalue- the value to convertvalueClass- the type of converted value- Returns:
- the converted value, or null if conversion was not ok
-
mergeMessages
-
mergeMessages
protected void mergeMessages(V beanValidator, NuitonValidatorScope scope, NuitonValidatorResult newMessages, java.util.List<E> events)
-