You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ke...@apache.org on 2016/08/08 20:39:48 UTC

[1/2] incubator-beam git commit: Add display data to SimpleFunction

Repository: incubator-beam
Updated Branches:
  refs/heads/master 7629f972c -> bb00810ad


Add display data to SimpleFunction


Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/4753f447
Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/4753f447
Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/4753f447

Branch: refs/heads/master
Commit: 4753f447f04e359716107ecf11e2e5286c42ac69
Parents: 2b5c6bc
Author: Kenneth Knowles <kl...@google.com>
Authored: Fri Jul 29 10:23:28 2016 -0700
Committer: Kenneth Knowles <kl...@google.com>
Committed: Fri Aug 5 10:19:21 2016 -0700

----------------------------------------------------------------------
 .../beam/sdk/transforms/FlatMapElements.java     |  2 +-
 .../apache/beam/sdk/transforms/MapElements.java  |  2 +-
 .../beam/sdk/transforms/SimpleFunction.java      | 14 +++++++++++++-
 .../beam/sdk/transforms/FlatMapElementsTest.java | 19 +++++++++++++++++++
 .../beam/sdk/transforms/MapElementsTest.java     |  8 ++++++++
 5 files changed, 42 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4753f447/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/FlatMapElements.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/FlatMapElements.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/FlatMapElements.java
index 04d993c..6f9e3d8 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/FlatMapElements.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/FlatMapElements.java
@@ -167,7 +167,7 @@ extends PTransform<PCollection<InputT>, PCollection<OutputT>> {
   @Override
   public void populateDisplayData(DisplayData.Builder builder) {
     super.populateDisplayData(builder);
-    builder.add(fnClassDisplayData);
+    builder.include(fn).add(fnClassDisplayData);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4753f447/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/MapElements.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/MapElements.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/MapElements.java
index 429d3fc..17ad6e7 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/MapElements.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/MapElements.java
@@ -133,6 +133,6 @@ extends PTransform<PCollection<InputT>, PCollection<OutputT>> {
   @Override
   public void populateDisplayData(DisplayData.Builder builder) {
     super.populateDisplayData(builder);
-    builder.add(fnClassDisplayData);
+    builder.include(fn).add(fnClassDisplayData);
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4753f447/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SimpleFunction.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SimpleFunction.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SimpleFunction.java
index 6c540cc..bf075f8 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SimpleFunction.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SimpleFunction.java
@@ -17,6 +17,8 @@
  */
 package org.apache.beam.sdk.transforms;
 
+import org.apache.beam.sdk.transforms.display.DisplayData;
+import org.apache.beam.sdk.transforms.display.HasDisplayData;
 import org.apache.beam.sdk.values.TypeDescriptor;
 
 /**
@@ -25,7 +27,7 @@ import org.apache.beam.sdk.values.TypeDescriptor;
  * {@link org.apache.beam.sdk.coders.Coder Coder} inference.
  */
 public abstract class SimpleFunction<InputT, OutputT>
-    implements SerializableFunction<InputT, OutputT> {
+    implements SerializableFunction<InputT, OutputT>, HasDisplayData {
 
   public static <InputT, OutputT>
       SimpleFunction<InputT, OutputT> fromSerializableFunctionWithOutputType(
@@ -60,6 +62,15 @@ public abstract class SimpleFunction<InputT, OutputT>
   }
 
   /**
+    * {@inheritDoc}
+    *
+    * <p>By default, does not register any display data. Implementors may override this method
+    * to provide their own display data.
+    */
+  @Override
+  public void populateDisplayData(DisplayData.Builder builder) {}
+
+  /**
    * A {@link SimpleFunction} built from a {@link SerializableFunction}, having
    * a known output type that is explicitly set.
    */
@@ -76,6 +87,7 @@ public abstract class SimpleFunction<InputT, OutputT>
       this.outputType = outputType;
     }
 
+
     @Override
     public OutputT apply(InputT input) {
       return fn.apply(input);

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4753f447/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlatMapElementsTest.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlatMapElementsTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlatMapElementsTest.java
index 781e143..cb7892c 100644
--- a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlatMapElementsTest.java
+++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/FlatMapElementsTest.java
@@ -151,6 +151,25 @@ public class FlatMapElementsTest implements Serializable {
   }
 
   @Test
+  public void testSimpleFunctionDisplayData() {
+    SimpleFunction<Integer, List<Integer>> simpleFn = new SimpleFunction<Integer, List<Integer>>() {
+      @Override
+      public List<Integer> apply(Integer input) {
+        return Collections.emptyList();
+      }
+
+      @Override
+      public void populateDisplayData(DisplayData.Builder builder) {
+        builder.add(DisplayData.item("foo", "baz"));
+      }
+    };
+
+    FlatMapElements<?, ?> simpleFlatMap = FlatMapElements.via(simpleFn);
+    assertThat(DisplayData.from(simpleFlatMap), hasDisplayItem("flatMapFn", simpleFn.getClass()));
+    assertThat(DisplayData.from(simpleFlatMap), hasDisplayItem("foo", "baz"));
+  }
+
+  @Test
   @Category(NeedsRunner.class)
   public void testVoidValues() throws Exception {
     Pipeline pipeline = TestPipeline.create();

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/4753f447/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/MapElementsTest.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/MapElementsTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/MapElementsTest.java
index dbf8844..e86a128 100644
--- a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/MapElementsTest.java
+++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/MapElementsTest.java
@@ -238,10 +238,18 @@ public class MapElementsTest implements Serializable {
       public Integer apply(Integer input) {
         return input;
       }
+
+      @Override
+      public void populateDisplayData(DisplayData.Builder builder) {
+        builder.add(DisplayData.item("foo", "baz"));
+      }
     };
 
+
+
     MapElements<?, ?> simpleMap = MapElements.via(simpleFn);
     assertThat(DisplayData.from(simpleMap), hasDisplayItem("mapFn", simpleFn.getClass()));
+    assertThat(DisplayData.from(simpleMap), hasDisplayItem("foo", "baz"));
   }
 
   @Test


[2/2] incubator-beam git commit: This closes #759

Posted by ke...@apache.org.
This closes #759


Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/bb00810a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/bb00810a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/bb00810a

Branch: refs/heads/master
Commit: bb00810adeee27506a43487c6842bb0c9dcf58a9
Parents: 7629f97 4753f44
Author: Kenneth Knowles <kl...@google.com>
Authored: Mon Aug 8 13:37:03 2016 -0700
Committer: Kenneth Knowles <kl...@google.com>
Committed: Mon Aug 8 13:37:03 2016 -0700

----------------------------------------------------------------------
 .../beam/sdk/transforms/FlatMapElements.java     |  2 +-
 .../apache/beam/sdk/transforms/MapElements.java  |  2 +-
 .../beam/sdk/transforms/SimpleFunction.java      | 14 +++++++++++++-
 .../beam/sdk/transforms/FlatMapElementsTest.java | 19 +++++++++++++++++++
 .../beam/sdk/transforms/MapElementsTest.java     |  8 ++++++++
 5 files changed, 42 insertions(+), 3 deletions(-)
----------------------------------------------------------------------