001 package org.springframework.rules.reporting;
002
003 import org.springframework.rules.constraint.Constraint;
004 import org.springframework.richclient.core.Severity;
005
006 /**
007 * @author Keith Donald
008 */
009 public class ValueValidationResults implements ValidationResults {
010
011 private Object argument;
012
013 private Constraint violatedConstraint;
014
015 public ValueValidationResults(Object argument, Constraint violatedConstraint) {
016 this.argument = argument;
017 this.violatedConstraint = violatedConstraint;
018 }
019
020 public ValueValidationResults(Object argument) {
021 this.argument = argument;
022 }
023
024 /**
025 * @see org.springframework.rules.reporting.ValidationResults#getRejectedValue()
026 */
027 public Object getRejectedValue() {
028 return argument;
029 }
030
031 /**
032 * @see org.springframework.rules.reporting.ValidationResults#getViolatedConstraint()
033 */
034 public Constraint getViolatedConstraint() {
035 return violatedConstraint;
036 }
037
038 /**
039 * @see org.springframework.rules.reporting.ValidationResults#getViolatedCount()
040 */
041 public int getViolatedCount() {
042 if (violatedConstraint != null)
043 return new SummingVisitor(violatedConstraint).sum();
044
045 return 0;
046 }
047
048 /**
049 * @see org.springframework.rules.reporting.ValidationResults#getSeverity()
050 */
051 public Severity getSeverity() {
052 return Severity.ERROR;
053 }
054
055 }