@SuppressWarnings("unchecked") @Override public TreeSet<T> update(Number object, TreeSet<T> cache, Object... others) { // TODO Auto-generated method stub if (cache == null) { cache = new TreeSet<T>(comparator); } cache.add((T) object); if (cache.size() > n) { cache.remove(cache.last()); } return cache; }
/** * Returns an array consisting of the unique values in {@code data}. * The return array is sorted in descending order. Empty arrays * are allowed, but null arrays result in NullPointerException. * Infinities are allowed. NaN values are allowed with maximum * sort order - i.e., if there are NaN values in {@code data}, * {@code Double.NaN} will be the first element of the output array, * even if the array also contains {@code Double.POSITIVE_INFINITY}. * * @param data array to scan * @return descending list of values included in the input array * @throws NullPointerException if data is null * @since 3.6 */ public static double[] unique(double[] data) { TreeSet<Double> values = new TreeSet<Double>(); for (int i = 0; i < data.length; i++) { values.add(data[i]); } final int count = values.size(); final double[] out = new double[count]; Iterator<Double> iterator = values.iterator(); int i = 0; while (iterator.hasNext()) { out[count - ++i] = iterator.next(); } return out; } }
@Test public void testMixedElevationExtraction() throws IOException { MockDimensionReader reader = new MockDimensionReader(); reader.metadata.put(GridCoverage2DReader.HAS_ELEVATION_DOMAIN, "true"); reader.metadata.put(GridCoverage2DReader.ELEVATION_DOMAIN, "0/0/0,10,15/20/1"); ReaderDimensionsAccessor accessor = new ReaderDimensionsAccessor(reader); TreeSet<Object> domain = accessor.getElevationDomain(); assertEquals(3, domain.size()); Iterator<Object> it = domain.iterator(); Number firstEntry = (Number) it.next(); assertEquals(0, firstEntry.doubleValue(), 0d); Number secondEntry = (Number) it.next(); assertEquals(10, secondEntry.doubleValue(), 0d); NumberRange thirdEntry = (NumberRange) it.next(); assertEquals(15, thirdEntry.getMinimum(), 0d); assertEquals(20, thirdEntry.getMaximum(), 0d); }
while (it.hasNext()) { IncludeHandler inc = (IncludeHandler) it.next(); logger.finest("compressing include " + inc.getSchemaLocation()); it = this.imports.iterator(); while (it.hasNext()) { Object obj = it.next(); TreeSet tmp = new TreeSet(SchemaComparator.getInstance()); tmp.addAll(imports); schema1.imports = (Schema[]) tmp.toArray(new Schema[tmp.size()]); schema1.simpleTypes = (SimpleType[]) tmp.toArray(new SimpleType[tmp.size()]); tmp.addAll(attributeGroups); schema1.attributeGroups = (AttributeGroup[]) tmp.toArray(new AttributeGroup[tmp.size()]); schema1.attributes = (Attribute[]) tmp.toArray(new Attribute[tmp.size()]); schema1.complexTypes = (ComplexType[]) tmp.toArray(new ComplexType[tmp.size()]); schema1.elements = (Element[]) tmp.toArray(new Element[tmp.size()]); schema1.groups = (Group[]) tmp.toArray(new Group[tmp.size()]);
@Override protected String getCompletedOffset() { String offset = null; if (pending.size() > 0) { //find the smallest offset in pending list offset = pending.keySet().iterator().next(); } if (toResend.size() > 0) { //find the smallest offset in toResend list String offset2 = toResend.first().getMessageId().getOffset(); if (offset == null || offset2.compareTo(offset) < 0) { offset = offset2; } } if (offset == null) { offset = lastOffset; } return offset; } }
private void validateTraces(List<Span> spans, Connection conn, long traceid, String tableName) throws Exception { TraceReader reader = new TraceReader(conn, tableName); Collection<TraceHolder> traces = reader.readAll(1); assertEquals("Got an unexpected number of traces!", 1, traces.size()); // make sure the trace matches what we wrote TraceHolder trace = traces.iterator().next(); assertEquals("Got an unexpected traceid", traceid, trace.traceid); assertEquals("Got an unexpected number of spans", spans.size(), trace.spans.size()); validateTrace(spans, trace); }
@Override public Long[] listAllVersions() throws IOException { if (!fileSystem.exists(basePath)) { return new Long[0]; // for the removed SegmentAppendTrieDictBuilder } FileStatus[] versionDirs = fileSystem.listStatus(basePath, new PathFilter() { @Override public boolean accept(Path path) { return path.getName().startsWith(VERSION_PREFIX); } }); TreeSet<Long> versions = new TreeSet<>(); for (int i = 0; i < versionDirs.length; i++) { Path path = versionDirs[i].getPath(); versions.add(Long.parseLong(path.getName().substring(VERSION_PREFIX.length()))); } return versions.toArray(new Long[versions.size()]); }
@Override public TreeSet<T> merge(Collection<TreeSet<T>> objs, TreeSet<T> unflushed, Object... others) { // TODO Auto-generated method stub TreeSet<T> temp = new TreeSet<T>(comparator); if (unflushed != null) { temp.addAll(unflushed); } for (TreeSet<T> set : objs) { temp.addAll(set); } if (temp.size() <= n) { return temp; } TreeSet<T> ret = new TreeSet<T>(comparator); int i = 0; for (T item : temp) { if (i < n) { ret.add(item); i++; } else { break; } } return ret; }
String posUnique = formattedToken.getAnalyzedToken(k).getPOSTag(); if (posUnique == null) { wordForms.add(formattedToken.getToken()); oneForm = true; } else { || PARAGRAPH_END_TAGNAME.equals(posUnique)) { if (!oneForm) { wordForms.add(formattedToken.getToken()); formattedString = wordForms.toArray(new String[wordForms.size()]); formattedString = wordForms.toArray(new String[wordForms.size()]);
if (ks.size() <= 1) { List<String> oneList = new ArrayList<String>(1); if (ks.size() == 1) { oneList.add(ks.first()); new ArrayList<Operator<? extends OperatorDesc>>(ks.size()); List<List<ExprNodeDesc>> newSprayKeyLists = new ArrayList<List<ExprNodeDesc>>(ks.size()); List<List<ExprNodeDesc>> newDistinctKeyLists = new ArrayList<List<ExprNodeDesc>>(ks.size());
private int handleUpdateForSinglePriorityLevel(int remainingCount, Iterator<Entry<Integer, TreeSet<TaskInfo>>> iterator, TaskInfo failedUpdate, List<TaskInfo> toUpdate, boolean newValue) { Entry<Integer, TreeSet<TaskInfo>> entry = iterator.next(); TreeSet<TaskInfo> atPriority = entry.getValue(); WM_LOG.info("At priority " + entry.getKey() + " observing " + entry.getValue().size()); Iterator<TaskInfo> atPriorityIter = newValue ? atPriority.iterator() : atPriority.descendingIterator(); TreeMap<Integer, TreeSet<TaskInfo>> toMap = newValue ? guaranteedTasks : speculativeTasks, fromMap = newValue ? speculativeTasks : guaranteedTasks; while (atPriorityIter.hasNext() && remainingCount > 0) { TaskInfo taskInfo = atPriorityIter.next(); if (taskInfo == failedUpdate) continue; atPriorityIter.remove();
@Test public void testMixedTimeExtraction() throws IOException, ParseException { MockDimensionReader reader = new MockDimensionReader(); reader.metadata.put(GridCoverage2DReader.HAS_TIME_DOMAIN, "true"); reader.metadata.put( GridCoverage2DReader.TIME_DOMAIN, "2016-02-23T03:00:00.000Z/2016-02-23T03:00:00.000Z/PT1S,2016-02-23T06:00:00.000Z,2016-02-23T09:00:00.000Z/2016-02-23T12:00:00.000Z/PT1S"); ReaderDimensionsAccessor accessor = new ReaderDimensionsAccessor(reader); TreeSet<Object> domain = accessor.getTimeDomain(); assertEquals(3, domain.size()); Iterator<Object> it = domain.iterator(); Date firstEntry = (Date) it.next(); assertEquals(accessor.getTimeFormat().parse("2016-02-23T03:00:00.000Z"), firstEntry); Date secondEntry = (Date) it.next(); assertEquals(accessor.getTimeFormat().parse("2016-02-23T06:00:00.000Z"), secondEntry); DateRange thirdEntry = (DateRange) it.next(); assertEquals( accessor.getTimeFormat().parse("2016-02-23T09:00:00.000Z"), thirdEntry.getMinValue()); assertEquals( accessor.getTimeFormat().parse("2016-02-23T12:00:00.000Z"), thirdEntry.getMaxValue()); }
@Override public String[] childrenNames() throws BackingStoreException { synchronized (lock) { checkState(); TreeSet<String> result = new TreeSet<String>(cachedNode.keySet()); String[] names = childrenNamesSpi(); for (int i = 0; i < names.length; i++) { result.add(names[i]); } return result.toArray(new String[result.size()]); } }