public class ConstraintValidatorContextImpl extends java.lang.Object implements HibernateConstraintValidatorContext
Constructor and Description |
---|
ConstraintValidatorContextImpl(java.util.List<java.lang.String> methodParameterNames,
javax.validation.ClockProvider clockProvider,
PathImpl propertyPath,
javax.validation.metadata.ConstraintDescriptor<?> constraintDescriptor,
java.lang.Object constraintValidatorPayload) |
Modifier and Type | Method and Description |
---|---|
HibernateConstraintValidatorContext |
addExpressionVariable(java.lang.String name,
java.lang.Object value)
Allows to set an additional expression variable which will be available as an EL variable during interpolation.
|
HibernateConstraintValidatorContext |
addMessageParameter(java.lang.String name,
java.lang.Object value)
Allows to set an additional named parameter which can be interpolated in the constraint violation message.
|
javax.validation.ConstraintValidatorContext.ConstraintViolationBuilder |
buildConstraintViolationWithTemplate(java.lang.String messageTemplate) |
void |
disableDefaultConstraintViolation() |
javax.validation.ClockProvider |
getClockProvider() |
javax.validation.metadata.ConstraintDescriptor<?> |
getConstraintDescriptor() |
<C> C |
getConstraintValidatorPayload(java.lang.Class<C> type)
Returns an instance of the specified type or
null if the current constraint validator payload isn't of
the given type. |
java.util.List<ConstraintViolationCreationContext> |
getConstraintViolationCreationContexts() |
java.lang.String |
getDefaultConstraintMessageTemplate() |
java.util.List<java.lang.String> |
getMethodParameterNames() |
<T> T |
unwrap(java.lang.Class<T> type) |
HibernateConstraintValidatorContext |
withDynamicPayload(java.lang.Object violationContext)
Allows to set an object that may further describe the violation.
|
public ConstraintValidatorContextImpl(java.util.List<java.lang.String> methodParameterNames, javax.validation.ClockProvider clockProvider, PathImpl propertyPath, javax.validation.metadata.ConstraintDescriptor<?> constraintDescriptor, java.lang.Object constraintValidatorPayload)
public final void disableDefaultConstraintViolation()
disableDefaultConstraintViolation
in interface javax.validation.ConstraintValidatorContext
public final java.lang.String getDefaultConstraintMessageTemplate()
getDefaultConstraintMessageTemplate
in interface javax.validation.ConstraintValidatorContext
public final javax.validation.ConstraintValidatorContext.ConstraintViolationBuilder buildConstraintViolationWithTemplate(java.lang.String messageTemplate)
buildConstraintViolationWithTemplate
in interface javax.validation.ConstraintValidatorContext
public <T> T unwrap(java.lang.Class<T> type)
unwrap
in interface javax.validation.ConstraintValidatorContext
public HibernateConstraintValidatorContext addExpressionVariable(java.lang.String name, java.lang.Object value)
HibernateConstraintValidatorContext
ConstraintViolationBuilder
.
To create multiple constraint violations with different variable values, this method can be called
between successive calls to ConstraintValidatorContext.ConstraintViolationBuilder.addConstraintViolation()
.
For example:
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
HibernateConstraintValidatorContext context = constraintValidatorContext.unwrap( HibernateConstraintValidatorContext.class );
context.addExpressionVariable( "foo", "bar" );
context.buildConstraintViolationWithTemplate( "${foo}" )
.addConstraintViolation();
context.addExpressionVariable( "foo", "snafu" );
context.buildConstraintViolationWithTemplate( "${foo}" )
.addConstraintViolation();
return false;
}
addExpressionVariable
in interface HibernateConstraintValidatorContext
name
- the name under which to bind the expression variable, cannot be null
value
- the value to be bound to the specified namepublic HibernateConstraintValidatorContext addMessageParameter(java.lang.String name, java.lang.Object value)
HibernateConstraintValidatorContext
ConstraintViolationBuilder
.
To create multiple constraint violations with different variable values, this method can be called
between successive calls to ConstraintViolationBuilder#addConstraintViolation()
.
For example:
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
HibernateConstraintValidatorContext context = constraintValidatorContext.unwrap( HibernateConstraintValidatorContext.class );
context.addMessageParameter( "foo", "bar" );
context.buildConstraintViolationWithTemplate( "{foo}" )
.addConstraintViolation();
context.addMessageParameter( "foo", "snafu" );
context.buildConstraintViolationWithTemplate( "{foo}" )
.addConstraintViolation();
return false;
}
addMessageParameter
in interface HibernateConstraintValidatorContext
name
- the name under which to bind the parameter, cannot be null
value
- the value to be bound to the specified namepublic javax.validation.ClockProvider getClockProvider()
getClockProvider
in interface javax.validation.ConstraintValidatorContext
public HibernateConstraintValidatorContext withDynamicPayload(java.lang.Object violationContext)
HibernateConstraintValidatorContext
javax.validation.ConstraintViolation
has to be serialized.withDynamicPayload
in interface HibernateConstraintValidatorContext
violationContext
- an object representing additional information about the violationpublic <C> C getConstraintValidatorPayload(java.lang.Class<C> type)
HibernateConstraintValidatorContext
null
if the current constraint validator payload isn't of
the given type.getConstraintValidatorPayload
in interface HibernateConstraintValidatorContext
type
- the type of payload to retrievenull
if the current constraint validator payload isn't of
the given typeHibernateValidatorConfiguration.constraintValidatorPayload(Object)
public final javax.validation.metadata.ConstraintDescriptor<?> getConstraintDescriptor()
public final java.util.List<ConstraintViolationCreationContext> getConstraintViolationCreationContexts()
public java.util.List<java.lang.String> getMethodParameterNames()
Copyright © 2007-2022 Red Hat, Inc. All Rights Reserved