List of usage examples for com.google.common.collect Range closed
public static <C extends Comparable<?>> Range<C> closed(C lower, C upper)
From source file:org.apache.bookkeeper.mledger.impl.NonDurableCursorImpl.java
private void recoverCursor(PositionImpl mdPosition) { Pair<PositionImpl, Long> lastEntryAndCounter = ledger.getLastPositionAndCounter(); this.readPosition = ledger.getNextValidPosition(mdPosition); markDeletePosition = mdPosition;/*from w w w .j av a2s .c o m*/ // Initialize the counter such that the difference between the messages written on the ML and the // messagesConsumed is equal to the current backlog (negated). long initialBacklog = readPosition.compareTo(lastEntryAndCounter.first) < 0 ? ledger.getNumberOfEntries(Range.closed(readPosition, lastEntryAndCounter.first)) : 0; messagesConsumedCounter = lastEntryAndCounter.second - initialBacklog; }
From source file:io.github.mzmine.parameters.parametertypes.ranges.MZRangeParameter.java
@Override public void loadValueFromXML(@Nonnull Element xmlElement) { NodeList minNodes = xmlElement.getElementsByTagName("min"); if (minNodes.getLength() != 1) return;// w w w . java 2s.c om NodeList maxNodes = xmlElement.getElementsByTagName("max"); if (maxNodes.getLength() != 1) return; String minText = minNodes.item(0).getTextContent(); String maxText = maxNodes.item(0).getTextContent(); double min = Double.valueOf(minText); double max = Double.valueOf(maxText); setValue(Range.closed(min, max)); }
From source file:org.mskcc.shenkers.view.GeneViewBuilder.java
public RangeSet<Integer> asClosed(RangeSet<Integer> s) { RangeSet<Integer> exons = TreeRangeSet.create(); for (Range<Integer> r : s.asRanges()) { exons.add(Range.closed(r.lowerBoundType() == BoundType.OPEN ? r.lowerEndpoint() + 1 : r.lowerEndpoint(), r.upperBoundType() == BoundType.OPEN ? r.upperEndpoint() - 1 : r.upperEndpoint())); }/*from w w w .j a va2s.co m*/ return exons; }
From source file:com.reimed.guid.client.pii.validation.GreogorianBirthdayConstraint.java
private ContiguousSet<Integer> range(int start, int end) { return ContiguousSet.create(Range.closed(start, end), DiscreteDomain.integers()); }
From source file:org.eclipse.fx.ui.controls.styledtext.internal.LineHelper.java
public Range<Integer> getRange(int index) { int lower = getOffset(index); int upper = lower + getLength(index); return Range.closed(Integer.valueOf(lower), Integer.valueOf(upper)); }
From source file:org.waveprotocol.box.server.persistence.blocks.impl.IntervalImpl.java
public IntervalImpl(VersionRange range, Segment segment, Collection<ReadableFragment> fragments, ImmutableSegmentSnapshot lastSnapshot) { this.range = range; this.segment = segment; Preconditions.checkArgument(!range.isEmpty(), "Empty range"); Preconditions.checkArgument(!fragments.isEmpty(), "No fragments"); ReadableFragment prevFragment = null; Iterator<ReadableFragment> it = fragments.iterator(); while (it.hasNext()) { long endVersion; ReadableFragment fragment = it.next(); if (prevFragment == null) { Preconditions.checkArgument(range.from() >= fragment.getStartVersion(), "First fragment is not start of interval"); } else {/*www . j av a 2 s.c om*/ Preconditions.checkArgument(prevFragment.getLastModifiedVersion() + 1 == fragment.getStartVersion(), "Fragments are not sequential"); } if (it.hasNext()) { Preconditions.checkArgument(fragment.getLastModifiedVersion() < range.to(), "Too many fragments"); endVersion = fragment.getLastModifiedVersion(); } else { endVersion = Math.max(fragment.getLastModifiedVersion(), range.to()); } rangeMap.put(Range.closed(fragment.getStartVersion(), endVersion), fragment); prevFragment = fragment; } this.lastSnapshot = lastSnapshot; }
From source file:jetbrains.jetpad.geometry.Rectangle.java
public Range<Integer> xRange() { return Range.closed(origin.x, origin.x + dimension.x); }
From source file:org.opendaylight.mdsal.binding.java.api.generator.AbstractPrimitiveRangeGenerator.java
private String createRangeString(final Collection<RangeConstraint> constraints) { final List<Range<T>> ranges = new ArrayList<>(constraints.size()); for (RangeConstraint c : constraints) { ranges.add(Range.closed(getValue(c.getMin()), getValue(c.getMax()))); }// ww w . j a va2 s.c o m return ranges.toString(); }
From source file:org.locationtech.geogig.osm.internal.history.HistoryDownloader.java
/** * @return the next available changeset, or absent if reached the last one * @throws IOException/*from ww w.j a v a2s. com*/ * @throws InterruptedException */ public Iterator<Changeset> fetchChangesets() { Range<Long> range = Range.closed(initialChangeset, finalChangeset); ContiguousSet<Long> changesetIds = ContiguousSet.create(range, DiscreteDomain.longs()); final int fetchSize = 100; Iterator<List<Long>> partitions = Iterators.partition(changesetIds.iterator(), fetchSize); Function<List<Long>, Iterator<Changeset>> asChangesets = new Function<List<Long>, Iterator<Changeset>>() { @Override public Iterator<Changeset> apply(List<Long> batchIds) { Iterable<Changeset> changesets = downloader.fetchChangesets(batchIds); for (Changeset changeset : changesets) { if (filter.apply(changeset)) { Supplier<Optional<File>> changesFile; changesFile = downloader.fetchChanges(changeset.getId()); Supplier<Optional<Iterator<Change>>> changes = new ChangesSupplier(changesFile); changeset.setChanges(changes); } } return changesets.iterator(); } }; Iterator<Iterator<Changeset>> changesets = Iterators.transform(partitions, asChangesets); Iterator<Changeset> concat = Iterators.concat(changesets); return concat; }
From source file:org.mskcc.juber.intervals.IntervalNameMap.java
public void add(String contig, int start, int end, String name) { List<TreeRangeMap<Integer, String>> contigRanges = contigIntervals.get(contig); // if the contig-specific list does not exist, add it if (contigRanges == null) { contigRanges = new ArrayList<TreeRangeMap<Integer, String>>(); contigIntervals.put(contig, contigRanges); }/*from w ww . j a v a2 s.c om*/ Range<Integer> range = Range.closed(start, end); add(contigRanges, range, name); }