public boolean isViolation()

in validation-modules/property-validation/src/main/java/org/apache/myfaces/extensions/validator/crossval/strategy/DateIsStrategy.java [55:115]


    public boolean isViolation(Object object1, Object object2, DateIs annotation)
    {
        boolean violationFound = false;
        switch (annotation.type())
        {
            case before:
                violationFound = object1 != null && object2 != null &&
                              (!new Date(((Date) object1).getTime()).before((Date) object2) || object1.equals(object2));

                if (violationFound)
                {
                    this.violationResultStorage.put(RESULT_KEY, TOO_LATE);
                }
                break;
            case after:
                violationFound = object1 != null && object2 != null &&
                               (!new Date(((Date) object1).getTime()).after((Date) object2) || object1.equals(object2));

                if (violationFound)
                {
                    this.violationResultStorage.put(RESULT_KEY, TOO_EARLY);
                }
                break;
            case same:
                violationFound = object1 != null && !object1.equals(object2);

                if (violationFound)
                {
                    this.violationResultStorage.put(RESULT_KEY, NOT_EQUAL_DATE_TIME);
                }
                break;
            case beforeOrSame:
                violationFound = object1 != null && object2 != null &&
                                new Date(((Date) object1).getTime()).after((Date) object2);

                if (violationFound)
                {
                    this.violationResultStorage.put(RESULT_KEY, TOO_LATE_SAME);
                }
                break;
            case afterOrSame:
                violationFound = object1 != null && object2 != null &&
                                new Date(((Date) object1).getTime()).before((Date) object2);

                if (violationFound)
                {
                    this.violationResultStorage.put(RESULT_KEY, TOO_EARLY_SAME);
                }
                break;
            default:
                // Nothing to do.
        }

        if (violationFound)
        {
            this.violationResultStorage.put(COMPARED_VALUE_KEY, object1);
            this.violationResultStorage.put(REVERSE_COMPARED_VALUE_KEY, object2);
        }

        return violationFound;
    }