public abstract class PipelineTranslator extends Pipeline.PipelineVisitor.Defaults
Pipeline.PipelineVisitor that translates the Beam operators to their Spark counterparts.
 It also does the pipeline preparation: mode detection, transforms replacement, classpath
 preparation. If we have a streaming job, it is instantiated as a PipelineTranslatorStreaming. If we have a batch job, it is instantiated as a PipelineTranslatorBatch.Pipeline.PipelineVisitor.CompositeBehavior, Pipeline.PipelineVisitor.Defaults| Modifier and Type | Field and Description | 
|---|---|
protected AbstractTranslationContext | 
translationContext  | 
| Constructor and Description | 
|---|
PipelineTranslator()  | 
| Modifier and Type | Method and Description | 
|---|---|
static void | 
detectTranslationMode(Pipeline pipeline,
                     StreamingOptions options)
Visit the pipeline to determine the translation mode (batch/streaming) and update options
 accordingly. 
 | 
Pipeline.PipelineVisitor.CompositeBehavior | 
enterCompositeTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Called for each composite transform after all topological predecessors have been visited but
 before any of its component transforms. 
 | 
protected abstract TransformTranslator<?> | 
getTransformTranslator(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Get a  
TransformTranslator for the given TransformHierarchy.Node. | 
AbstractTranslationContext | 
getTranslationContext()  | 
void | 
leaveCompositeTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Called for each composite transform after all of its component transforms and their outputs
 have been visited. 
 | 
static void | 
replaceTransforms(Pipeline pipeline,
                 StreamingOptions options)  | 
void | 
translate(Pipeline pipeline)
Translates the pipeline by passing this class as a visitor. 
 | 
void | 
visitPrimitiveTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Called for each primitive transform after all of its topological predecessors and inputs have
 been visited. 
 | 
enterPipeline, getPipeline, leavePipeline, visitValueprotected AbstractTranslationContext translationContext
public static void replaceTransforms(Pipeline pipeline, StreamingOptions options)
public static void detectTranslationMode(Pipeline pipeline, StreamingOptions options)
protected abstract TransformTranslator<?> getTransformTranslator(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
TransformTranslator for the given TransformHierarchy.Node.public void translate(Pipeline pipeline)
pipeline - The pipeline to be translatedpublic Pipeline.PipelineVisitor.CompositeBehavior enterCompositeTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Pipeline.PipelineVisitorThe return value controls whether or not child transforms are visited.
enterCompositeTransform in interface Pipeline.PipelineVisitorenterCompositeTransform in class Pipeline.PipelineVisitor.Defaultspublic void leaveCompositeTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Pipeline.PipelineVisitorleaveCompositeTransform in interface Pipeline.PipelineVisitorleaveCompositeTransform in class Pipeline.PipelineVisitor.Defaultspublic void visitPrimitiveTransform(org.apache.beam.sdk.runners.TransformHierarchy.Node node)
Pipeline.PipelineVisitorvisitPrimitiveTransform in interface Pipeline.PipelineVisitorvisitPrimitiveTransform in class Pipeline.PipelineVisitor.Defaultspublic AbstractTranslationContext getTranslationContext()