public EmptyRecordReader(RecordMaterializer<T> recordMaterializer) { this.recordMaterializer = recordMaterializer; this.recordConsumer = recordMaterializer.getRootConverter(); // TODO: validator(wrap(recordMaterializer), validating, root.getType()); }
public EmptyRecordReader(RecordMaterializer<T> recordMaterializer) { this.recordMaterializer = recordMaterializer; this.recordConsumer = recordMaterializer.getRootConverter(); // TODO: validator(wrap(recordMaterializer), validating, root.getType()); }
@Override public RecordReader<T> visit(NoOpFilter noOpFilter) { return new RecordReaderImplementation<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy)); } });
public FilteringRecordMaterializer( RecordMaterializer<T> delegate, List<PrimitiveColumnIO> columnIOs, Map<ColumnPath, List<ValueInspector>> valueInspectorsByColumn, IncrementallyUpdatedFilterPredicate filterPredicate) { checkNotNull(columnIOs, "columnIOs"); checkNotNull(valueInspectorsByColumn, "valueInspectorsByColumn"); this.filterPredicate = checkNotNull(filterPredicate, "filterPredicate"); this.delegate = checkNotNull(delegate, "delegate"); // keep track of which path of indices leads to which primitive column Map<List<Integer>, PrimitiveColumnIO> columnIOsByIndexFieldPath = new HashMap<List<Integer>, PrimitiveColumnIO>(); for (PrimitiveColumnIO c : columnIOs) { columnIOsByIndexFieldPath.put(getIndexFieldPathList(c), c); } // create a proxy for the delegate's root converter this.rootConverter = new FilteringGroupConverter( delegate.getRootConverter(), Collections.<Integer>emptyList(), valueInspectorsByColumn, columnIOsByIndexFieldPath); }
public FilteringRecordMaterializer( RecordMaterializer<T> delegate, List<PrimitiveColumnIO> columnIOs, Map<ColumnPath, List<ValueInspector>> valueInspectorsByColumn, IncrementallyUpdatedFilterPredicate filterPredicate) { checkNotNull(columnIOs, "columnIOs"); checkNotNull(valueInspectorsByColumn, "valueInspectorsByColumn"); this.filterPredicate = checkNotNull(filterPredicate, "filterPredicate"); this.delegate = checkNotNull(delegate, "delegate"); // keep track of which path of indices leads to which primitive column Map<List<Integer>, PrimitiveColumnIO> columnIOsByIndexFieldPath = new HashMap<List<Integer>, PrimitiveColumnIO>(); for (PrimitiveColumnIO c : columnIOs) { columnIOsByIndexFieldPath.put(getIndexFieldPathList(c), c); } // create a proxy for the delegate's root converter this.rootConverter = new FilteringGroupConverter( delegate.getRootConverter(), Collections.<Integer>emptyList(), valueInspectorsByColumn, columnIOsByIndexFieldPath); }
@Override public RecordReader<T> visit(NoOpFilter noOpFilter) { return new RecordReaderImplementation<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy)); } });
@Override public RecordReader<T> visit(UnboundRecordFilterCompat unboundRecordFilterCompat) { return new FilteredRecordReader<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy), unboundRecordFilterCompat.getUnboundRecordFilter(), columns.getRowCount() ); }
@Override public RecordReader<T> visit(UnboundRecordFilterCompat unboundRecordFilterCompat) { return new FilteredRecordReader<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy), unboundRecordFilterCompat.getUnboundRecordFilter(), columns.getRowCount() ); }
this.recordRootConverter = recordMaterializer.getRootConverter(); // TODO: validator(wrap(recordMaterializer), validating, root.getType()); PrimitiveColumnIO[] leaves = root.getLeaves().toArray(new PrimitiveColumnIO[root.getLeaves().size()]); columnReaders = new ColumnReader[leaves.length];
this.recordRootConverter = recordMaterializer.getRootConverter(); // TODO: validator(wrap(recordMaterializer), validating, root.getType()); PrimitiveColumnIO[] leaves = root.getLeaves().toArray(new PrimitiveColumnIO[root.getLeaves().size()]); columnReaders = new ColumnReader[leaves.length];
@Override public RecordReader<T> visit(FilterPredicateCompat filterPredicateCompat) { FilterPredicate predicate = filterPredicateCompat.getFilterPredicate(); IncrementallyUpdatedFilterPredicateBuilder builder = new IncrementallyUpdatedFilterPredicateBuilder(leaves); IncrementallyUpdatedFilterPredicate streamingPredicate = builder.build(predicate); RecordMaterializer<T> filteringRecordMaterializer = new FilteringRecordMaterializer<T>( recordMaterializer, leaves, builder.getValueInspectorsByColumn(), streamingPredicate); return new RecordReaderImplementation<T>( MessageColumnIO.this, filteringRecordMaterializer, validating, new ColumnReadStoreImpl(columns, filteringRecordMaterializer.getRootConverter(), getType(), createdBy)); }
@Override public RecordReader<T> visit(FilterPredicateCompat filterPredicateCompat) { FilterPredicate predicate = filterPredicateCompat.getFilterPredicate(); IncrementallyUpdatedFilterPredicateBuilder builder = new IncrementallyUpdatedFilterPredicateBuilder(leaves); IncrementallyUpdatedFilterPredicate streamingPredicate = builder.build(predicate); RecordMaterializer<T> filteringRecordMaterializer = new FilteringRecordMaterializer<T>( recordMaterializer, leaves, builder.getValueInspectorsByColumn(), streamingPredicate); return new RecordReaderImplementation<T>( MessageColumnIO.this, filteringRecordMaterializer, validating, new ColumnReadStoreImpl(columns, filteringRecordMaterializer.getRootConverter(), getType(), createdBy)); }