protected synchronized void ensureOpen() { if (writer == null) { try { writer = operations.createDataIndexWriter(adapter); } catch (final Exception e) { LOGGER.error("Unable to open writer", e); } } } }
private MetadataReader getReader(final boolean warnIfNotExists) { try { if (!operations.metadataExists(MetadataType.INTERNAL_ADAPTER)) { return null; } } catch (final IOException e1) { if (warnIfNotExists) { LOGGER.error("Unable to check for existence of metadata to get object", e1); } return null; } return operations.createMetadataReader(MetadataType.INTERNAL_ADAPTER); }
default <T> Deleter<T> createDeleter(final ReaderParams<T> readerParams) { return new QueryAndDeleteByRow<>( createRowDeleter( readerParams.getIndex().getName(), readerParams.getAdapterStore(), readerParams.getInternalAdapterStore(), readerParams.getAdditionalAuthorizations()), createReader(readerParams)); }
((BaseDataStore) other).baseOperations.createMetadataWriter(metadataType)) { final MetadataReader reader = baseOperations.createMetadataReader(metadataType); try ( CloseableIterator<GeoWaveMetadata> it = reader.query(new MetadataQuery(null, null))) { bldr.adapterIds(new short[] {adapter.getAdapterId()}); try (RowReader<GeoWaveRow> reader = ((BaseDataStore) other).baseOperations.createReader(bldr.build())) { try (RowWriter writer = ((BaseDataStore) other).baseOperations.createWriter(index, adapter)) { while (reader.hasNext()) { writer.write(reader.next());
protected void addObject(final ByteArray id, final ByteArray secondaryId, final T object) { addObjectToCache(id, secondaryId, object); try (final MetadataWriter writer = operations.createMetadataWriter(getType())) { if (writer != null) { final GeoWaveMetadata metadata = new GeoWaveMetadata( id.getBytes(), secondaryId != null ? secondaryId.getBytes() : null, getVisibility(object), getValue(object)); writer.write(metadata); } } catch (final Exception e) { LOGGER.warn("Unable to close metadata writer", e); e.printStackTrace(); } }
@Override protected void lastSceneComplete(final AnalysisInfo analysisInfo) { processPreviousScene(); super.lastSceneComplete(analysisInfo); if (!ingestOptions.isSkipMerge()) { System.out.println("Merging overlapping tiles..."); for (final Index index : indices) { if (dataStorePluginOptions.createDataStoreOperations().mergeData( index, dataStorePluginOptions.createAdapterStore(), dataStorePluginOptions.createInternalAdapterStore(), dataStorePluginOptions.createAdapterIndexMappingStore(), dataStorePluginOptions.getFactoryOptions().getStoreOptions().getMaxRangeDecomposition())) { System.out.println( "Successfully merged overlapping tiles within index '" + index.getName() + "'"); } else { System.err.println( "Unable to merge overlapping landsat8 tiles in index '" + index.getName() + "'"); } } } }
final AdapterIndexMappingStore adapterIndexMappingStore) { final RowDeleter deleter = operations.createRowDeleter(index.getName(), adapterStore, internalAdapterStore); try { final Map<Short, InternalDataAdapter> mergingAdapters = new HashMap<>(); paramsBuilder.adapterIds(adapterIds); try (RowWriter writer = operations.createWriter(index, adapter.getValue()); RowReader<GeoWaveRow> reader = operations.createReader(paramsBuilder.build())) { final RewritingMergingEntryIterator<?> iterator = new RewritingMergingEntryIterator(
final String... authorizations) { try { if (!operations.metadataExists(type)) { return false; return false; try (final MetadataDeleter deleter = operations.createMetadataDeleter(type)) { if (primaryId != null) { final MetadataReader reader = operations.createMetadataReader(type); try (final CloseableIterator<GeoWaveMetadata> it = reader.query(
final Deleter<C> deleter = operations.createDeleter(readerParams); scanCallback.addScanCallback((ScanCallback) deleter); return deleter; return operations.createReader(readerParams);
protected synchronized void ensureOpen() { if (writer == null) { try { writer = operations.createWriter(index, adapter); } catch (final Exception e) { LOGGER.error("Unable to open writer", e); } } } }
Arrays.stream(readerParams.getDataIds()).map(dataId -> { final byte[] sortKey = Bytes.concat(new byte[] {(byte) dataId.length}, dataId); return createReader( new ReaderParams<>( DataIndexUtils.DATA_ID_INDEX,
operations.createMetadataWriter(MetadataType.INTERNAL_ADAPTER)) { if (writer != null) { final byte[] adapterIdBytes = ByteArrayUtils.shortToByteArray(adapterId);
@Override protected void lastSceneComplete(final AnalysisInfo analysisInfo) { processPreviousScene(); super.lastSceneComplete(analysisInfo); if (!ingestOptions.isSkipMerge()) { System.out.println("Merging overlapping tiles..."); for (final Index index : indices) { if (dataStorePluginOptions.createDataStoreOperations().mergeData( index, dataStorePluginOptions.createAdapterStore(), dataStorePluginOptions.createInternalAdapterStore(), dataStorePluginOptions.createAdapterIndexMappingStore(), dataStorePluginOptions.getFactoryOptions().getStoreOptions().getMaxRangeDecomposition())) { System.out.println( "Successfully merged overlapping tiles within index '" + index.getName() + "'"); } else { System.err.println( "Unable to merge overlapping landsat8 tiles in index '" + index.getName() + "'"); } } } // Clear all scene files? if ((lastScene != null) && !ingestOptions.isRetainImages()) { DownloadRunner.cleanDownloadedFiles(lastScene, sentinel2Options.getWorkspaceDir()); } lastScene = null; }
default RowWriter createDataIndexWriter(final InternalDataAdapter<?> adapter) { return new DefaultDataIndexRowWriterWrapper( createWriter(DataIndexUtils.DATA_ID_INDEX, adapter)); }
protected static RowReader<GeoWaveRow> getRowReader( final DataStoreOperations operations, final PersistentAdapterStore adapterStore, final InternalAdapterStore internalAdapterStore, final Pair<String[], InternalDataAdapter<?>> fieldSubsets, final Pair<InternalDataAdapter<?>, Aggregation<?, ?, ?>> aggregation, final String[] additionalAuthorizations, final short adapterId, final byte[]... dataIds) { final DataIndexReaderParams readerParams = new DataIndexReaderParamsBuilder<>( adapterStore, internalAdapterStore).additionalAuthorizations( additionalAuthorizations).isAuthorizationsLimiting(false).adapterId( adapterId).dataIds(dataIds).fieldSubsets(fieldSubsets).aggregation( aggregation).build(); return operations.createReader(readerParams); } }
outputStoreOptions.createDataStoreOperations().createMetadataWriter( MetadataType.STATS).close(); } catch (final Exception e) {
if (!operations.mergeData( index, adapterStore,
protected CloseableIterator<T> internalGetObjects(final MetadataQuery query) { try { if (!operations.metadataExists(getType())) { return new CloseableIterator.Empty<>(); } } catch (final IOException e1) { LOGGER.error("Unable to check for existence of metadata to get objects", e1); return new CloseableIterator.Empty<>(); } final MetadataReader reader = operations.createMetadataReader(getType()); final CloseableIterator<GeoWaveMetadata> it = reader.query(query); return new NativeIteratorWrapper(it, query.getAuthorizations()); }
default void delete(final DataIndexReaderParams readerParams) { try (QueryAndDeleteByRow<GeoWaveRow> defaultDeleter = new QueryAndDeleteByRow<>( createRowDeleter( DataIndexUtils.DATA_ID_INDEX.getName(), readerParams.getAdapterStore(), readerParams.getInternalAdapterStore()), createReader(readerParams))) { while (defaultDeleter.hasNext()) { defaultDeleter.next(); } } }
dataStoreOptions.createDataStoreOperations().createMetadataWriter(type).close(); dataStoreOptions.createDataStoreOperations().createMetadataWriter(MetadataType.STATS).close();