@Experimental 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.lang.String outputId,
FieldAccessDescriptor fields)
Actuate a projection pushdown.
|
boolean |
supportsProjectionPushdown()
Whether
this supports projection pushdown. |
boolean supportsProjectionPushdown()
this
supports projection pushdown.T actuateProjectionPushdown(java.lang.String outputId, FieldAccessDescriptor fields)
outputId
- The TupleTag
id of the target PCollection
for the pushdown.fields
- The fields that must be output. Other fields can 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
.