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:com.yahoo.gondola.container.BucketManager.java
private void loadBucketTable() { Range<Integer> range;//from w ww. j a va 2 s . c o m int numBuckets = 0; for (String shardId : config.getShardIds()) { Map<String, String> attributesForShard = config.getAttributesForShard(shardId); String bucketMapString = attributesForShard.get("bucketMap"); bucketMapString = validateBucketString(shardId, bucketMapString); if (bucketMapString == null) { continue; } for (String str : bucketMapString.split(",")) { String[] rangePair = str.split("-"); switch (rangePair.length) { case 1: range = Range.closed(Integer.parseInt(rangePair[0]), Integer.parseInt(rangePair[0])); break; case 2: range = Range.closed(Integer.valueOf(rangePair[0]), Integer.valueOf(rangePair[1])); break; default: throw new IllegalStateException("Range format: x - y or x, but get " + str); } if (range.lowerEndpoint() < 0) { throw new IllegalStateException("Bucket id must > 0"); } bucketMap.put(range, new ShardState(shardId, null)); } } for (Map.Entry<Range<Integer>, ShardState> e : bucketMap.asMapOfRanges().entrySet()) { Range<Integer> r = e.getKey(); numBuckets += (r.upperEndpoint() - r.lowerEndpoint() + 1); } numberOfBuckets = numBuckets; validateBucketMap(); }
From source file:org.rf.ide.core.testdata.model.table.exec.CommentedVariablesFilter.java
public boolean isInCommentedPart(final RobotFileOutput rfo, final RobotToken token) { boolean result = false; Optional<Integer> startCommentRange = Optional.empty(); final RobotFile fileModel = rfo.getFileModel(); final int tokenOffset = token.getStartOffset(); final Optional<Integer> robotLineIndex = fileModel.getRobotLineIndexBy(tokenOffset); if (robotLineIndex.isPresent()) { final RobotLine robotLine = fileModel.getFileContent().get(robotLineIndex.get()); final List<IRobotLineElement> lineElements = robotLine.getLineElements(); for (final IRobotLineElement lineElem : lineElements) { final List<IRobotTokenType> types = lineElem.getTypes(); if (types.contains(RobotTokenType.START_HASH_COMMENT) || types.contains(RobotTokenType.COMMENT_CONTINUE)) { startCommentRange = Optional.of(lineElem.getStartOffset()); break; }/*from w ww. j av a 2 s . c o m*/ } if (startCommentRange.isPresent()) { final Range<Integer> range = Range.closed(startCommentRange.get(), robotLine.getEndOfLine().getStartOffset()); result = range.contains(tokenOffset); } } return result; }
From source file:io.github.mzmine.parameters.parametertypes.selectors.ScanSelectionParameter.java
@Override public void loadValueFromXML(Element xmlElement) { Range<Integer> scanNumberRange = null; Range<Double> scanRTRange = null; PolarityType polarity = null;// ww w .j a v a2 s. com MsSpectrumType spectrumType = null; Integer msLevel = null; String scanDefinition = null; NodeList items = xmlElement.getElementsByTagName("scan_numbers"); for (int i = 0; i < items.getLength(); i++) { if (items.item(i).getChildNodes().getLength() != 2) continue; String minText = items.item(i).getChildNodes().item(0).getTextContent(); String maxText = items.item(i).getChildNodes().item(1).getTextContent(); scanNumberRange = Range.closed(Integer.valueOf(minText), Integer.valueOf(maxText)); } items = xmlElement.getElementsByTagName("retention_time"); for (int i = 0; i < items.getLength(); i++) { if (items.item(i).getChildNodes().getLength() != 2) continue; String minText = items.item(i).getChildNodes().item(0).getTextContent(); String maxText = items.item(i).getChildNodes().item(1).getTextContent(); scanRTRange = Range.closed(Double.valueOf(minText), Double.valueOf(maxText)); } items = xmlElement.getElementsByTagName("ms_level"); for (int i = 0; i < items.getLength(); i++) { msLevel = Integer.valueOf(items.item(i).getTextContent()); } items = xmlElement.getElementsByTagName("polarity"); for (int i = 0; i < items.getLength(); i++) { try { polarity = PolarityType.valueOf(items.item(i).getTextContent()); } catch (Exception e) { polarity = null; } } items = xmlElement.getElementsByTagName("spectrum_type"); for (int i = 0; i < items.getLength(); i++) { spectrumType = MsSpectrumType.valueOf(items.item(i).getTextContent()); } items = xmlElement.getElementsByTagName("scan_definition"); for (int i = 0; i < items.getLength(); i++) { scanDefinition = items.item(i).getTextContent(); } ScanSelection newValue = new ScanSelection(scanNumberRange, scanRTRange, polarity, spectrumType, msLevel, scanDefinition); setValue(newValue); }
From source file:com.cognifide.aet.job.common.datafilters.removelines.RemoveLinesDataModifier.java
private Set<Integer> extractIndexes(String dataRanges) throws ParametersException { Set<Integer> indexesToRemove = new HashSet<Integer>(); if (dataRanges != null) { for (String range : dataRanges.split(";")) { try { String[] split = range.split(","); indexesToRemove.addAll(/*from w ww .ja v a2 s . c om*/ ContiguousSet.create(Range.closed(Integer.valueOf(split[0]), Integer.valueOf(split[1])), DiscreteDomain.integers())); } catch (IllegalArgumentException e) { throw new ParametersException("Bad range: " + range, e); } } } return indexesToRemove; }
From source file:tile80.world80.World80HOF.java
@Override public Iterable<Tile80> getTileByRect(Pair<Integer, Integer> topLeft, Pair<Integer, Integer> bottomRight) { return FluentIterable.from(world).filter(Predicates.compose(Range.closed(topLeft, bottomRight), onlyCoord)); }
From source file:org.graylog2.commands.journal.JournalDecode.java
@Override protected void runCommand() { Range<Long> range;/*w w w. j a v a 2 s. c om*/ try { final List<String> offsets = Splitter.on("..").limit(2).splitToList(rangeArg); if (offsets.size() == 1) { range = Range.singleton(Long.valueOf(offsets.get(0))); } else if (offsets.size() == 2) { final String first = offsets.get(0); final String second = offsets.get(1); if (first.isEmpty()) { range = Range.atMost(Long.valueOf(second)); } else if (second.isEmpty()) { range = Range.atLeast(Long.valueOf(first)); } else { range = Range.closed(Long.valueOf(first), Long.valueOf(second)); } } else { throw new RuntimeException(); } } catch (Exception e) { System.err.println("Malformed offset range: " + rangeArg); return; } final Map<String, Codec.Factory<? extends Codec>> codecFactory = injector .getInstance(Key.get(new TypeLiteral<Map<String, Codec.Factory<? extends Codec>>>() { })); final Long readOffset = range.lowerEndpoint(); final long count = range.upperEndpoint() - range.lowerEndpoint() + 1; final List<Journal.JournalReadEntry> entries = journal.read(readOffset, count); for (final Journal.JournalReadEntry entry : entries) { final RawMessage raw = RawMessage.decode(entry.getPayload(), entry.getOffset()); if (raw == null) { System.err.println( MessageFormatter.format("Journal entry at offset {} failed to decode", entry.getOffset())); continue; } final Codec codec = codecFactory.get(raw.getCodecName()).create(raw.getCodecConfig()); final Message message = codec.decode(raw); if (message == null) { System.err.println( MessageFormatter.format("Could not use codec {} to decode raw message id {} at offset {}", new Object[] { raw.getCodecName(), raw.getId(), entry.getOffset() })); } else { message.setJournalOffset(raw.getJournalOffset()); } final ResolvableInetSocketAddress remoteAddress = raw.getRemoteAddress(); final String remote = remoteAddress == null ? "unknown address" : remoteAddress.getInetSocketAddress().toString(); final StringBuffer sb = new StringBuffer(); sb.append("Message ").append(raw.getId()).append('\n').append(" at ").append(raw.getTimestamp()) .append('\n').append(" in format ").append(raw.getCodecName()).append('\n') .append(" at offset ").append(raw.getJournalOffset()).append('\n') .append(" received from remote address ").append(remote).append('\n').append(" (source field: ") .append(message == null ? "unparsed" : message.getSource()).append(')').append('\n'); if (message != null) { sb.append(" contains ").append(message.getFieldNames().size()).append(" fields."); } else { sb.append("The message could not be parse by the given codec."); } System.out.println(sb); } }
From source file:net.opentsdb.contrib.tsquare.web.view.DataQueryView.java
private void executeSingleSeries(final SingleSeriesWriter singleSeriesWriter, final DataQueryModel modelObj, final ResponseContext context) throws IOException { Exception ex = null;// w w w . j a v a 2 s . c o m try { singleSeriesWriter.beginResponse(context); for (final AnnotatedDataQuery dataQuery : modelObj.getQueries()) { final DataPoints[] result = dataQuery.getQuery().run(); for (final DataPoints series : result) { AnnotatedDataPoints annPoints = new AnnotatedDataPoints(dataQuery.getMetric(), Range.closed(dataQuery.getQuery().getStartTime(), dataQuery.getQuery().getEndTime()), series); singleSeriesWriter.write(annPoints, context); } } singleSeriesWriter.endResponse(context); } catch (IOException e) { ex = e; throw e; } catch (RuntimeException e) { ex = e; throw e; } finally { if (ex != null) { singleSeriesWriter.onError(context, ex); } } }
From source file:org.pascani.dsl.lib.Event.java
/** * Checks whether this {@link Event} was raised within a given time window, * i.e., {@code this.timestamp} is contained in [ {@code start} , * {@code end}].//ww w. j ava 2s.c o m * * @param start * The initial timestamp of the time window * @param end * The final timestamp of the time window * @return Whether the range [{@code start}, {@code end}] contains the final * timestamp this object */ public boolean isInTimeWindow(long start, long end) { return Range.closed(start, end).contains(this.timestamp); }
From source file:org.mskcc.shenkers.view.RangeSetIntervalView.java
public void setData(List<Pair<Integer, Integer>> intervals) { for (Pair<Integer, Integer> interval : intervals) { ranges.add(Range.closed((interval.getKey() - min + 0.) / length, (interval.getValue() - min + 1.) / length)); }/*from w w w.j av a2s .co m*/ List<Node> content = new ArrayList<>(); for (Range<Double> interval : ranges.subRangeSet(Range.closed(0., 1.)).asRanges()) { Rectangle rectangle = new Rectangle(); rectangle.widthProperty() .bind(widthProperty().multiply(interval.upperEndpoint() - interval.lowerEndpoint())); rectangle.heightProperty().bind(heightProperty()); rectangle.xProperty().bind(widthProperty().multiply(interval.lowerEndpoint())); content.add(rectangle); } getChildren().setAll(content); }
From source file:io.github.mzmine.parameters.parametertypes.ranges.IntegerRangeParameter.java
@Override public void loadValueFromXML(@Nonnull Element xmlElement) { NodeList minNodes = xmlElement.getElementsByTagName("min"); if (minNodes.getLength() != 1) return;//from ww w . j a v a2 s . c om NodeList maxNodes = xmlElement.getElementsByTagName("max"); if (maxNodes.getLength() != 1) return; String minText = minNodes.item(0).getTextContent(); String maxText = maxNodes.item(0).getTextContent(); Integer min = Integer.valueOf(minText); Integer max = Integer.valueOf(maxText); setValue(Range.closed(min, max)); }