@Override
public RecordReader<GeoWaveInputKey, T> createRecordReader(
final InputSplit split,
final TaskAttemptContext context) throws IOException, InterruptedException {
final Map<String, String> configOptions = getStoreOptionsMap(context);
final DataStore dataStore = GeoWaveStoreFinder.createDataStore(configOptions);
if ((dataStore != null) && (dataStore instanceof MapReduceDataStore)) {
return (RecordReader<GeoWaveInputKey, T>) ((MapReduceDataStore) dataStore).createRecordReader(
getCommonQueryOptions(context),
getDataTypeQueryOptions(context),
getIndexQueryOptions(context),
getQueryConstraints(context),
getJobContextAdapterStore(context),
getJobContextInternalAdapterStore(context),
getJobContextAdapterIndexMappingStore(context),
getJobContextDataStatisticsStore(context),
getJobContextIndexStore(context),
isOutputWritable(context).booleanValue(),
split);
}
LOGGER.error("Data Store does not support map reduce");
throw new IOException("Data Store does not support map reduce");
}