Search in sources :

Example 1 with MinConstraint

use of org.grails.validation.MinConstraint in project grails-core by grails.

the class ConstrainedProperty method setMin.

/**
     * @param min The min to set.
     */
@SuppressWarnings("rawtypes")
public void setMin(Comparable min) {
    if (min == null) {
        appliedConstraints.remove(MIN_CONSTRAINT);
        return;
    }
    if (!propertyType.equals(min.getClass())) {
        throw new MissingPropertyException(MIN_CONSTRAINT, propertyType);
    }
    Range r = getRange();
    if (r != null) {
        LOG.warn("Range constraint already set ignoring constraint [" + MIN_CONSTRAINT + "] for value [" + min + "]");
        return;
    }
    Constraint c = appliedConstraints.get(MIN_CONSTRAINT);
    if (c == null) {
        c = new MinConstraint();
        c.setOwningClass(owningClass);
        c.setPropertyName(propertyName);
        appliedConstraints.put(MIN_CONSTRAINT, c);
    }
    c.setParameter(min);
}
Also used : MaxSizeConstraint(org.grails.validation.MaxSizeConstraint) MinConstraint(org.grails.validation.MinConstraint) SizeConstraint(org.grails.validation.SizeConstraint) MinSizeConstraint(org.grails.validation.MinSizeConstraint) BlankConstraint(org.grails.validation.BlankConstraint) RangeConstraint(org.grails.validation.RangeConstraint) ValidatorConstraint(org.grails.validation.ValidatorConstraint) ScaleConstraint(org.grails.validation.ScaleConstraint) NullableConstraint(org.grails.validation.NullableConstraint) MaxConstraint(org.grails.validation.MaxConstraint) CreditCardConstraint(org.grails.validation.CreditCardConstraint) UrlConstraint(org.grails.validation.UrlConstraint) InListConstraint(org.grails.validation.InListConstraint) MatchesConstraint(org.grails.validation.MatchesConstraint) NotEqualConstraint(org.grails.validation.NotEqualConstraint) EmailConstraint(org.grails.validation.EmailConstraint) MissingPropertyException(groovy.lang.MissingPropertyException) Range(groovy.lang.Range) MinConstraint(org.grails.validation.MinConstraint)

Example 2 with MinConstraint

use of org.grails.validation.MinConstraint in project grails-core by grails.

the class ConstrainedProperty method getMin.

/**
     * @return Returns the min.
     */
@Override
@SuppressWarnings({ "unchecked", "rawtypes" })
public Comparable getMin() {
    Comparable minValue = null;
    MinConstraint minConstraint = (MinConstraint) appliedConstraints.get(MIN_CONSTRAINT);
    RangeConstraint rangeConstraint = (RangeConstraint) appliedConstraints.get(RANGE_CONSTRAINT);
    if (minConstraint != null || rangeConstraint != null) {
        Comparable minConstraintValue = minConstraint != null ? minConstraint.getMinValue() : null;
        Comparable rangeConstraintLowValue = rangeConstraint != null ? rangeConstraint.getRange().getFrom() : null;
        if (minConstraintValue != null && rangeConstraintLowValue != null) {
            minValue = (minConstraintValue.compareTo(rangeConstraintLowValue) > 0) ? minConstraintValue : rangeConstraintLowValue;
        } else if (minConstraintValue == null && rangeConstraintLowValue != null) {
            minValue = rangeConstraintLowValue;
        } else if (minConstraintValue != null && rangeConstraintLowValue == null) {
            minValue = minConstraintValue;
        }
    }
    return minValue;
}
Also used : RangeConstraint(org.grails.validation.RangeConstraint) MinConstraint(org.grails.validation.MinConstraint)

Aggregations

MinConstraint (org.grails.validation.MinConstraint)2 RangeConstraint (org.grails.validation.RangeConstraint)2 MissingPropertyException (groovy.lang.MissingPropertyException)1 Range (groovy.lang.Range)1 BlankConstraint (org.grails.validation.BlankConstraint)1 CreditCardConstraint (org.grails.validation.CreditCardConstraint)1 EmailConstraint (org.grails.validation.EmailConstraint)1 InListConstraint (org.grails.validation.InListConstraint)1 MatchesConstraint (org.grails.validation.MatchesConstraint)1 MaxConstraint (org.grails.validation.MaxConstraint)1 MaxSizeConstraint (org.grails.validation.MaxSizeConstraint)1 MinSizeConstraint (org.grails.validation.MinSizeConstraint)1 NotEqualConstraint (org.grails.validation.NotEqualConstraint)1 NullableConstraint (org.grails.validation.NullableConstraint)1 ScaleConstraint (org.grails.validation.ScaleConstraint)1 SizeConstraint (org.grails.validation.SizeConstraint)1 UrlConstraint (org.grails.validation.UrlConstraint)1 ValidatorConstraint (org.grails.validation.ValidatorConstraint)1