@Override protected ByteArray getSecondaryId(final InternalDataStatistics<?, ?, ?> persistedObject) { return shortToByteArrayId(persistedObject.getAdapterId()); }
@Override public void setStatistics(final InternalDataStatistics<?, ?, ?> statistics) { removeStatistics(statistics.getAdapterId(), statistics.getType()); addObject(statistics); }
@Override public <R> Statistics<R>[] queryStatistics(final StatisticsQuery<R> query) { try (CloseableIterator<InternalDataStatistics<?, R, ?>> it = internalQueryStatistics(query)) { return Streams.stream(it).map( s -> new StatisticsImpl<>( s.getResult(), s.getType(), s.getExtendedId(), internalAdapterStore.getTypeName(s.getAdapterId()))).toArray( size -> new Statistics[size]); } }
@Override public GeoWaveMetadata next() { InternalDataStatistics<?, ?, ?> currentStatistics = nextVal; nextVal = null; while (it.hasNext()) { final GeoWaveMetadata row = it.next(); final InternalDataStatistics<?, ?, ?> statEntry = entryToValue(row); if (currentStatistics == null) { currentStatistics = statEntry; } else { if (statEntry.getType().equals(currentStatistics.getType()) && statEntry.getAdapterId().equals(currentStatistics.getAdapterId()) && statEntry.getExtendedId().equals(currentStatistics.getExtendedId())) { currentStatistics.merge(statEntry); } else { nextVal = statEntry; break; } } } return statsToMetadata(currentStatistics); }
while (statsIt.hasNext()) { final InternalDataStatistics<?, ?, ?> stats = statsIt.next(); if (stats.getAdapterId() != adapter.getAdapterId()) { continue; while (statsIt.hasNext()) { final InternalDataStatistics<?, ?, ?> stats = statsIt.next(); if (stats.getAdapterId() != adapter.getAdapterId()) { continue;
protected GeoWaveMetadata statsToMetadata(final InternalDataStatistics<?, ?, ?> stats) { return new GeoWaveMetadata( DataStatisticsStoreImpl.getPrimaryId(stats.getType(), stats.getExtendedId()).getBytes(), ByteArrayUtils.shortToByteArray(stats.getAdapterId()), stats.getVisibility(), PersistenceUtils.toBinary(stats)); }