1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.datadictionary.validation.processor;
17
18 import org.kuali.rice.krad.datadictionary.exception.AttributeValidationException;
19 import org.kuali.rice.krad.datadictionary.validation.AttributeValueReader;
20 import org.kuali.rice.krad.datadictionary.validation.ValidationUtils;
21 import org.kuali.rice.krad.datadictionary.validation.constraint.Constraint;
22 import org.kuali.rice.krad.datadictionary.validation.constraint.PrerequisiteConstraint;
23 import org.kuali.rice.krad.datadictionary.validation.result.ConstraintValidationResult;
24 import org.kuali.rice.krad.datadictionary.validation.result.DictionaryValidationResult;
25 import org.kuali.rice.krad.datadictionary.validation.result.ProcessorResult;
26
27
28
29
30
31 public class PrerequisiteConstraintProcessor extends BasePrerequisiteConstraintProcessor<PrerequisiteConstraint> {
32
33 private static final String CONSTRAINT_NAME = "prerequisite constraint";
34
35
36
37
38
39 @Override
40 public ProcessorResult process(DictionaryValidationResult result, Object value, PrerequisiteConstraint constraint, AttributeValueReader attributeValueReader) throws AttributeValidationException {
41
42 if (ValidationUtils.isNullOrEmpty(value))
43 return new ProcessorResult(result.addSkipped(attributeValueReader, CONSTRAINT_NAME));
44
45
46 ConstraintValidationResult constraintValidationResult = processPrerequisiteConstraint(constraint, attributeValueReader);
47
48 if(constraint != null){
49 constraintValidationResult.setConstraintLabelKey(constraint.getLabelKey());
50 constraintValidationResult.setErrorParameters(constraint.getValidationMessageParamsArray());
51 }
52
53 result.addConstraintValidationResult(attributeValueReader, constraintValidationResult);
54
55 return new ProcessorResult(constraintValidationResult);
56 }
57
58 @Override
59 public String getName() {
60 return CONSTRAINT_NAME;
61 }
62
63
64
65
66 @Override
67 public Class<? extends Constraint> getConstraintType() {
68 return PrerequisiteConstraint.class;
69 }
70
71 }