public class FilteringRecordMaterializer<T> extends RecordMaterializer<T>
RecordMaterializer that updates a IncrementallyUpdatedFilterPredicate
as it receives concrete values for the current record. If, after the record assembly signals that
there are no more values, the predicate indicates that this record should be dropped, getCurrentRecord()
returns null to signal that this record is being skipped.
Otherwise, the record is retrieved from the delegate.RecordMaterializer.RecordMaterializationException| Constructor and Description |
|---|
FilteringRecordMaterializer(RecordMaterializer<T> delegate,
List<PrimitiveColumnIO> columnIOs,
Map<ColumnPath,List<IncrementallyUpdatedFilterPredicate.ValueInspector>> valueInspectorsByColumn,
IncrementallyUpdatedFilterPredicate filterPredicate) |
| Modifier and Type | Method and Description |
|---|---|
T |
getCurrentRecord() |
static List<Integer> |
getIndexFieldPathList(PrimitiveColumnIO c) |
GroupConverter |
getRootConverter() |
static List<Integer> |
intArrayToList(int[] arr) |
void |
skipCurrentRecord()
Called if
RecordMaterializer.getCurrentRecord() isn't going to be called. |
public FilteringRecordMaterializer(RecordMaterializer<T> delegate, List<PrimitiveColumnIO> columnIOs, Map<ColumnPath,List<IncrementallyUpdatedFilterPredicate.ValueInspector>> valueInspectorsByColumn, IncrementallyUpdatedFilterPredicate filterPredicate)
public static List<Integer> getIndexFieldPathList(PrimitiveColumnIO c)
public T getCurrentRecord()
getCurrentRecord in class RecordMaterializer<T>public void skipCurrentRecord()
RecordMaterializerRecordMaterializer.getCurrentRecord() isn't going to be called.skipCurrentRecord in class RecordMaterializer<T>public GroupConverter getRootConverter()
getRootConverter in class RecordMaterializer<T>Copyright © 2019 The Apache Software Foundation. All rights reserved.