1
7 package org.hibernate.validator.internal.engine.validationcontext;
8
9 import java.time.Duration;
10
11 import javax.validation.ClockProvider;
12 import javax.validation.MessageInterpolator;
13 import javax.validation.Validator;
14
15 import org.hibernate.validator.internal.engine.ValidatorFactoryScopedContext;
16 import org.hibernate.validator.internal.util.ExecutableParameterNameProvider;
17 import org.hibernate.validator.spi.scripting.ScriptEvaluatorFactory;
18
19
24 public class ValidatorScopedContext {
25
26
29 private final MessageInterpolator messageInterpolator;
30
31
34 private final ExecutableParameterNameProvider parameterNameProvider;
35
36
39 private final ClockProvider clockProvider;
40
41
45 private final Duration temporalValidationTolerance;
46
47
51 private final ScriptEvaluatorFactory scriptEvaluatorFactory;
52
53
56 private final boolean failFast;
57
58
61 private final boolean traversableResolverResultCacheEnabled;
62
63
66 private final Object constraintValidatorPayload;
67
68 public ValidatorScopedContext(ValidatorFactoryScopedContext validatorFactoryScopedContext) {
69 this.messageInterpolator = validatorFactoryScopedContext.getMessageInterpolator();
70 this.parameterNameProvider = validatorFactoryScopedContext.getParameterNameProvider();
71 this.clockProvider = validatorFactoryScopedContext.getClockProvider();
72 this.temporalValidationTolerance = validatorFactoryScopedContext.getTemporalValidationTolerance();
73 this.scriptEvaluatorFactory = validatorFactoryScopedContext.getScriptEvaluatorFactory();
74 this.failFast = validatorFactoryScopedContext.isFailFast();
75 this.traversableResolverResultCacheEnabled = validatorFactoryScopedContext.isTraversableResolverResultCacheEnabled();
76 this.constraintValidatorPayload = validatorFactoryScopedContext.getConstraintValidatorPayload();
77 }
78
79 public MessageInterpolator getMessageInterpolator() {
80 return this.messageInterpolator;
81 }
82
83 public ExecutableParameterNameProvider getParameterNameProvider() {
84 return this.parameterNameProvider;
85 }
86
87 public ClockProvider getClockProvider() {
88 return this.clockProvider;
89 }
90
91 public Duration getTemporalValidationTolerance() {
92 return this.temporalValidationTolerance;
93 }
94
95 public ScriptEvaluatorFactory getScriptEvaluatorFactory() {
96 return this.scriptEvaluatorFactory;
97 }
98
99 public boolean isFailFast() {
100 return this.failFast;
101 }
102
103 public boolean isTraversableResolverResultCacheEnabled() {
104 return this.traversableResolverResultCacheEnabled;
105 }
106
107 public Object getConstraintValidatorPayload() {
108 return this.constraintValidatorPayload;
109 }
110 }
111