Port MinimalWordCount example from OldDoFn to DoFn
Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/4ceec0e8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/4ceec0e8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/4ceec0e8 Branch: refs/heads/python-sdk Commit: 4ceec0e86f1c4e885168957299dbe81c61fbc7e7 Parents: 64481d0 Author: Kenneth Knowles <[email protected]> Authored: Fri Jul 22 14:28:42 2016 -0700 Committer: Dan Halperin <[email protected]> Committed: Wed Aug 3 18:25:53 2016 -0700 ---------------------------------------------------------------------- .../java/org/apache/beam/examples/MinimalWordCount.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4ceec0e8/examples/java/src/main/java/org/apache/beam/examples/MinimalWordCount.java ---------------------------------------------------------------------- diff --git a/examples/java/src/main/java/org/apache/beam/examples/MinimalWordCount.java b/examples/java/src/main/java/org/apache/beam/examples/MinimalWordCount.java index ab0bb6d..df725e3 100644 --- a/examples/java/src/main/java/org/apache/beam/examples/MinimalWordCount.java +++ b/examples/java/src/main/java/org/apache/beam/examples/MinimalWordCount.java @@ -22,8 +22,8 @@ import org.apache.beam.sdk.io.TextIO; import org.apache.beam.sdk.options.PipelineOptions; import org.apache.beam.sdk.options.PipelineOptionsFactory; import org.apache.beam.sdk.transforms.Count; +import org.apache.beam.sdk.transforms.DoFn; import org.apache.beam.sdk.transforms.MapElements; -import org.apache.beam.sdk.transforms.OldDoFn; import org.apache.beam.sdk.transforms.ParDo; import org.apache.beam.sdk.transforms.SimpleFunction; import org.apache.beam.sdk.values.KV; @@ -89,12 +89,11 @@ public class MinimalWordCount { // the input text (a set of Shakespeare's texts). p.apply(TextIO.Read.from("gs://dataflow-samples/shakespeare/*")) // Concept #2: Apply a ParDo transform to our PCollection of text lines. This ParDo invokes a - // OldDoFn (defined in-line) on each element that tokenizes the text line into individua - // words. + // DoFn (defined in-line) on each element that tokenizes the text line into individual words. // The ParDo returns a PCollection<String>, where each element is an individual word in // Shakespeare's collected texts. - .apply("ExtractWords", ParDo.of(new OldDoFn<String, String>() { - @Override + .apply("ExtractWords", ParDo.of(new DoFn<String, String>() { + @ProcessElement public void processElement(ProcessContext c) { for (String word : c.element().split("[^a-zA-Z']+")) { if (!word.isEmpty()) {
