Search in sources :

Example 1 with Range

use of groovy.lang.Range in project groovy by apache.

the class StringGroovyMethods method getAt.

/**
     * Select a List of values from a Matcher using a Collection
     * to identify the indices to be selected.
     *
     * @param self    a Matcher
     * @param indices a Collection of indices
     * @return a String of the values at the given indices
     * @since 1.6.0
     */
public static List getAt(Matcher self, Collection indices) {
    List result = new ArrayList();
    if (indices instanceof IntRange) {
        int size = (int) size(self);
        RangeInfo info = subListBorders(size, (Range) indices);
        indices = new IntRange(((IntRange) indices).getInclusive(), info.from, info.to - 1);
    }
    for (Object value : indices) {
        if (value instanceof Range) {
            result.addAll(getAt(self, (Range) value));
        } else {
            int idx = DefaultTypeTransformation.intUnbox(value);
            result.add(getAt(self, idx));
        }
    }
    return result;
}
Also used : ArrayList(java.util.ArrayList) IntRange(groovy.lang.IntRange) ArrayList(java.util.ArrayList) List(java.util.List) IntRange(groovy.lang.IntRange) EmptyRange(groovy.lang.EmptyRange) Range(groovy.lang.Range)

Example 2 with Range

use of groovy.lang.Range 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 3 with Range

use of groovy.lang.Range in project grails-core by grails.

the class ConstrainedProperty method setMax.

/**
     * @param max The max to set.
     */
@SuppressWarnings("rawtypes")
public void setMax(Comparable max) {
    if (max == null) {
        appliedConstraints.remove(MAX_CONSTRAINT);
        return;
    }
    if (!propertyType.equals(max.getClass())) {
        throw new MissingPropertyException(MAX_CONSTRAINT, propertyType);
    }
    Range r = getRange();
    if (r != null) {
        LOG.warn("Range constraint already set ignoring constraint [" + MAX_CONSTRAINT + "] for value [" + max + "]");
        return;
    }
    Constraint c = appliedConstraints.get(MAX_CONSTRAINT);
    if (c == null) {
        c = new MaxConstraint();
        c.setOwningClass(owningClass);
        c.setPropertyName(propertyName);
        appliedConstraints.put(MAX_CONSTRAINT, c);
    }
    c.setParameter(max);
}
Also used : MaxConstraint(org.grails.validation.MaxConstraint) 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)

Example 4 with Range

use of groovy.lang.Range in project groovy-core by groovy.

the class StringGroovyMethods method getAt.

/**
     * Select a List of values from a Matcher using a Collection
     * to identify the indices to be selected.
     *
     * @param self    a Matcher
     * @param indices a Collection of indices
     * @return a String of the values at the given indices
     * @since 1.6.0
     */
public static List getAt(Matcher self, Collection indices) {
    List result = new ArrayList();
    for (Object value : indices) {
        if (value instanceof Range) {
            result.addAll(getAt(self, (Range) value));
        } else {
            int idx = DefaultTypeTransformation.intUnbox(value);
            result.add(getAt(self, idx));
        }
    }
    return result;
}
Also used : ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List) IntRange(groovy.lang.IntRange) EmptyRange(groovy.lang.EmptyRange) Range(groovy.lang.Range)

Aggregations

Range (groovy.lang.Range)4 EmptyRange (groovy.lang.EmptyRange)2 IntRange (groovy.lang.IntRange)2 MissingPropertyException (groovy.lang.MissingPropertyException)2 ArrayList (java.util.ArrayList)2 List (java.util.List)2 BlankConstraint (org.grails.validation.BlankConstraint)2 CreditCardConstraint (org.grails.validation.CreditCardConstraint)2 EmailConstraint (org.grails.validation.EmailConstraint)2 InListConstraint (org.grails.validation.InListConstraint)2 MatchesConstraint (org.grails.validation.MatchesConstraint)2 MaxConstraint (org.grails.validation.MaxConstraint)2 MaxSizeConstraint (org.grails.validation.MaxSizeConstraint)2 MinConstraint (org.grails.validation.MinConstraint)2 MinSizeConstraint (org.grails.validation.MinSizeConstraint)2 NotEqualConstraint (org.grails.validation.NotEqualConstraint)2 NullableConstraint (org.grails.validation.NullableConstraint)2 RangeConstraint (org.grails.validation.RangeConstraint)2 ScaleConstraint (org.grails.validation.ScaleConstraint)2 SizeConstraint (org.grails.validation.SizeConstraint)2