package mil.nga.giat.geowave.datastore.accumulo.index.secondary; import mil.nga.giat.geowave.core.store.StoreFactoryOptions; import mil.nga.giat.geowave.core.store.index.SecondaryIndexDataStore; import mil.nga.giat.geowave.datastore.accumulo.AbstractAccumuloStoreFactory; import mil.nga.giat.geowave.datastore.accumulo.operations.config.AccumuloOptions; import mil.nga.giat.geowave.datastore.accumulo.operations.config.AccumuloRequiredOptions; public class AccumuloSecondaryIndexDataStoreFactory extends AbstractAccumuloStoreFactory<SecondaryIndexDataStore> { @Override public SecondaryIndexDataStore createStore( StoreFactoryOptions options ) { if (!(options instanceof AccumuloRequiredOptions)) { throw new AssertionError( "Expected " + AccumuloRequiredOptions.class.getSimpleName()); } AccumuloRequiredOptions opts = (AccumuloRequiredOptions) options; if (opts.getAdditionalOptions() == null) { opts.setAdditionalOptions(new AccumuloOptions()); } return new AccumuloSecondaryIndexDataStore( createOperations(opts), opts.getAdditionalOptions()); } }