Example usage for com.google.common.collect Range hasLowerBound

List of usage examples for com.google.common.collect Range hasLowerBound

Introduction

In this page you can find the example usage for com.google.common.collect Range hasLowerBound.

Prototype

public boolean hasLowerBound() 

Source Link

Document

Returns true if this range has a lower endpoint.

Usage

From source file:net.conquiris.lucene.search.SearchSupport.java

static boolean minIncluded(Range<?> range) {
    return range.hasLowerBound() && range.lowerBoundType() == BoundType.CLOSED;
}

From source file:net.conquiris.lucene.search.SearchSupport.java

static <T extends Comparable<T>> T min(Range<? extends T> range) {
    if (range.hasLowerBound()) {
        return range.lowerEndpoint();
    }//from  w  w  w  .ja  v a2  s  .c  om
    return null;
}

From source file:google.registry.model.common.PersistedRangeLong.java

public static PersistedRangeLong create(Range<Long> range) {
    PersistedRangeLong instance = new PersistedRangeLong();
    if (range.hasLowerBound()) {
        instance.lowerBound = range.lowerEndpoint();
        instance.lowerBoundType = range.lowerBoundType();
    }/*from   www .  j av a 2s . c o  m*/
    if (range.hasUpperBound()) {
        instance.upperBound = range.upperEndpoint();
        instance.upperBoundType = range.upperBoundType();
    }
    return instance;
}

From source file:com.stackframe.collect.RangeUtilities.java

/**
 * Build an expression suitable for passing to JDBC as part of an SQL query from a date range.
 *
 * @param column the name of the column/*  w w w  .j  a  va  2s .co  m*/
 * @param dateRange the Range
 * @return a String containing the expression
 */
public static String toSQL(String column, Range<Date> dateRange) {
    StringBuilder buf = new StringBuilder();
    if (dateRange.hasLowerBound()) {
        BoundType lowerBound = dateRange.lowerBoundType();
        String operator;
        switch (lowerBound) {
        case CLOSED:
            operator = ">=";
            break;
        case OPEN:
            operator = ">";
            break;
        default:
            throw new AssertionError("unexpected bound type " + lowerBound);
        }

        Date lowerEndpoint = dateRange.lowerEndpoint();
        java.sql.Date lowerDate = convert(lowerEndpoint);
        buf.append(String.format("%s %s '%s'", column, operator, lowerDate.toString()));
        if (dateRange.hasUpperBound()) {
            buf.append(" AND ");
        }
    }

    if (dateRange.hasUpperBound()) {
        BoundType upperBound = dateRange.upperBoundType();
        String operator;
        switch (upperBound) {
        case CLOSED:
            operator = "<=";
            break;
        case OPEN:
            operator = "<";
            break;
        default:
            throw new AssertionError("unexpected bound type " + upperBound);
        }

        Date upperEndpoint = dateRange.upperEndpoint();
        java.sql.Date upperDate = convert(upperEndpoint);
        buf.append(String.format("%s %s '%s'", column, operator, upperDate.toString()));
    }

    return buf.toString();
}

From source file:org.apache.druid.sql.calcite.filtration.MoveTimeFiltersToIntervals.java

private static Range<Long> toLongRange(final Range<BoundValue> range) {
    if (!range.hasUpperBound() && !range.hasLowerBound()) {
        return Range.all();
    } else if (range.hasUpperBound() && !range.hasLowerBound()) {
        return Range.upTo(Long.parseLong(range.upperEndpoint().getValue()), range.upperBoundType());
    } else if (!range.hasUpperBound() && range.hasLowerBound()) {
        return Range.downTo(Long.parseLong(range.lowerEndpoint().getValue()), range.lowerBoundType());
    } else {/*from  w w  w.ja v  a2  s  . co  m*/
        return Range.range(Long.parseLong(range.lowerEndpoint().getValue()), range.lowerBoundType(),
                Long.parseLong(range.upperEndpoint().getValue()), range.upperBoundType());
    }
}

From source file:org.apache.druid.sql.calcite.filtration.Bounds.java

public static BoundDimFilter toFilter(final BoundRefKey boundRefKey, final Range<BoundValue> range) {
    return new BoundDimFilter(boundRefKey.getDimension(),
            range.hasLowerBound() ? range.lowerEndpoint().getValue() : null,
            range.hasUpperBound() ? range.upperEndpoint().getValue() : null,
            range.hasLowerBound() && range.lowerBoundType() == BoundType.OPEN,
            range.hasUpperBound() && range.upperBoundType() == BoundType.OPEN, null,
            boundRefKey.getExtractionFn(), boundRefKey.getComparator());
}

From source file:org.apache.kylin.common.util.RangeUtil.java

public static <C extends Comparable<?>> boolean lowerBoundInclusive(Range<C> range) {
    if (!range.hasLowerBound()) {
        throw new IllegalArgumentException(("This range does not have lower bound" + range));
    }//from   w w  w .j a  v  a2 s .c o  m
    return range.lowerBoundType() == BoundType.CLOSED;
}

From source file:com.google.android.apps.forscience.whistlepunk.NextRequestType.java

static NextRequestType compute(Range<Long> alreadyRequested, long minWanted, long maxWanted) {
    if (maxWanted < minWanted) {
        return NONE;
    } else if (alreadyRequested == null) {
        return FIRST;
    } else if (alreadyRequested.hasLowerBound() && minWanted < alreadyRequested.lowerEndpoint()) {
        return NEXT_LOWER;
    } else if (alreadyRequested.hasUpperBound() && maxWanted > alreadyRequested.upperEndpoint()) {
        return NEXT_HIGHER;
    } else {/*from  w  w  w  .  ja va 2  s  .c o  m*/
        return NONE;
    }
}

From source file:io.druid.sql.calcite.filtration.RangeSets.java

public static List<Interval> toIntervals(final RangeSet<Long> rangeSet) {
    final List<Interval> retVal = Lists.newArrayList();

    for (Range<Long> range : rangeSet.asRanges()) {
        final long start;
        final long end;

        if (range.hasLowerBound()) {
            final long millis = range.lowerEndpoint();
            start = millis + (range.lowerBoundType() == BoundType.OPEN ? 1 : 0);
        } else {/* w ww  .  j  a v  a 2 s. c  o  m*/
            start = Filtration.eternity().getStartMillis();
        }

        if (range.hasUpperBound()) {
            final long millis = range.upperEndpoint();
            end = millis + (range.upperBoundType() == BoundType.OPEN ? 0 : 1);
        } else {
            end = Filtration.eternity().getEndMillis();
        }

        retVal.add(Intervals.utc(start, end));
    }

    return retVal;
}

From source file:org.obiba.opal.web.gwt.app.client.magma.derive.view.ValueMapEntry.java

public static Builder fromRange(Range<? extends Number> range) {
    return fromRange(range.hasLowerBound() ? range.lowerEndpoint() : null,
            range.hasUpperBound() ? range.upperEndpoint() : null).label(range.toString());
}