package mil.nga.giat.geowave.core.store.adapter; import mil.nga.giat.geowave.core.index.ByteArrayId; import mil.nga.giat.geowave.core.store.CloseableIterator; /** * This is responsible for persisting data adapters (either in memory or to disk * depending on the implementation). */ public interface AdapterStore { /** * Add the adapter to the store * * @param adapter * the adapter */ public void addAdapter( DataAdapter<?> adapter ); /** * Get an adapter from the store by its unique ID * * @param adapterId * the unique adapter ID * @return the adapter, null if it doesn't exist */ public DataAdapter<?> getAdapter( ByteArrayId adapterId ); /** * Check for the existence of the adapter with the given unique ID * * @param adapterId * the unique ID to look up * @return a boolean flag indicating whether the adapter exists */ public boolean adapterExists( ByteArrayId adapterId ); /** * Get the full set of adapters within this store * * @return an iterator over all of the adapters in this store */ public CloseableIterator<DataAdapter<?>> getAdapters(); public void removeAll(); }