package mil.nga.giat.geowave.datastore.hbase.query; import java.util.List; import mil.nga.giat.geowave.core.index.ByteArrayId; import mil.nga.giat.geowave.core.index.ByteArrayRange; import mil.nga.giat.geowave.core.store.adapter.DataAdapter; import mil.nga.giat.geowave.core.store.index.PrimaryIndex; import mil.nga.giat.geowave.datastore.hbase.operations.config.HBaseOptions; import org.apache.commons.lang3.tuple.Pair; abstract public class HBaseQuery { protected List<ByteArrayId> adapterIds; protected final PrimaryIndex index; protected Pair<List<String>, DataAdapter<?>> fieldIds; protected HBaseOptions options = null; protected final String[] authorizations; public HBaseQuery( final PrimaryIndex index, final String... authorizations ) { this( null, index, null, authorizations); } public HBaseQuery( final List<ByteArrayId> adapterIds, final PrimaryIndex index, final Pair<List<String>, DataAdapter<?>> fieldIds, final String... authorizations ) { this.adapterIds = adapterIds; this.index = index; this.fieldIds = fieldIds; this.authorizations = authorizations; } public String[] getAdditionalAuthorizations() { return authorizations; } abstract protected List<ByteArrayRange> getRanges(); public void setOptions( HBaseOptions options ) { this.options = options; } }