package mil.nga.giat.geowave.core.store; import java.io.Closeable; import java.io.IOException; import java.util.List; import mil.nga.giat.geowave.core.index.ByteArrayId; import mil.nga.giat.geowave.core.store.data.VisibilityWriter; import mil.nga.giat.geowave.core.store.index.PrimaryIndex; public interface IndexWriter<T> extends Closeable { /** * Write the entry using the index writer's configure field visibility * writer. * * @param writableAdapter * @param entry * @return * @throws IOException */ public List<ByteArrayId> write( final T entry ) throws IOException; public List<ByteArrayId> write( final T entry, final VisibilityWriter<T> fieldVisibilityWriter ) throws IOException; public PrimaryIndex[] getIndices(); public void flush(); }