Preconditions.checkNotNull(context);
if (subScan instanceof MockSubScanPOP) {
return msc.getBatch(context, (MockSubScanPOP) subScan, Collections.<RecordBatch> emptyList());
} else if (subScan instanceof JSONSubScan) {
return new JSONScanBatchCreator().getBatch(context, (JSONSubScan) subScan, Collections.<RecordBatch> emptyList());
} else if (subScan instanceof ParquetRowGroupScan) {
return parquetScan.getBatch(context, (ParquetRowGroupScan) subScan, Collections.<RecordBatch> emptyList());
} else {
return super.visitSubScan(subScan, context);
}