public interface ProjectionProducer<T>
Schema-aware PCollection.
 Typically this interface will be implemented by a reader PTransform or some component thereof that is capable of pushing
 down a projection to an external source.
| Modifier and Type | Method and Description | 
|---|---|
T | 
actuateProjectionPushdown(java.util.Map<TupleTag<?>,FieldAccessDescriptor> outputFields)
Actuate a projection pushdown. 
 | 
boolean | 
supportsProjectionPushdown()
Whether  
this supports projection pushdown. | 
boolean supportsProjectionPushdown()
this supports projection pushdown.T actuateProjectionPushdown(java.util.Map<TupleTag<?>,FieldAccessDescriptor> outputFields)
outputFields - Map keyed by the TupleTag for each output on which pushdown is
     requested. The value is the FieldAccessDescriptor containing the list of fields
     needed for that output; fields not present in the descriptor should be dropped.T that implements the projection pushdown. The return value is assumed to be a
     drop-in replacement for this; it must have all the same functionality. For this
     reason, T is usually the same class as this.