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

[1/2] incubator-beam git commit: Closes #1549

Repository: incubator-beam
Updated Branches:
  refs/heads/master 307be5ff9 -> 437393712


Closes #1549


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

Branch: refs/heads/master
Commit: 437393712ebcc28f69b45fedff7a93148d944c6e
Parents: 307be5f a47eac9
Author: Dan Halperin <dh...@google.com>
Authored: Mon Dec 12 11:08:42 2016 -0800
Committer: Dan Halperin <dh...@google.com>
Committed: Mon Dec 12 11:08:42 2016 -0800

----------------------------------------------------------------------
 .../org/apache/beam/sdk/transforms/display/DisplayData.java  | 8 +++++++-
 .../apache/beam/sdk/transforms/display/DisplayDataTest.java  | 2 ++
 2 files changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------



[2/2] incubator-beam git commit: Fix handling of null ValueProviders in DisplayData

Posted by dh...@apache.org.
Fix handling of null ValueProviders in DisplayData


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

Branch: refs/heads/master
Commit: a47eac91c70846d2aa3a945e327e2b148b16ca5f
Parents: 307be5f
Author: Sam McVeety <sg...@google.com>
Authored: Wed Dec 7 15:31:52 2016 -0800
Committer: Dan Halperin <dh...@google.com>
Committed: Mon Dec 12 11:08:42 2016 -0800

----------------------------------------------------------------------
 .../org/apache/beam/sdk/transforms/display/DisplayData.java  | 8 +++++++-
 .../apache/beam/sdk/transforms/display/DisplayDataTest.java  | 2 ++
 2 files changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/a47eac91/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/display/DisplayData.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/display/DisplayData.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/display/DisplayData.java
index f0040f7..d3bfe93 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/display/DisplayData.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/display/DisplayData.java
@@ -866,9 +866,15 @@ public class DisplayData implements Serializable {
   /**
    * Create a display item for the specified key and {@link ValueProvider}.
    */
-  public static ItemSpec<?> item(String key, ValueProvider<?> value) {
+  public static ItemSpec<?> item(String key, @Nullable ValueProvider<?> value) {
+    if (value == null) {
+      return item(key, Type.STRING, null);
+    }
     if (value.isAccessible()) {
       Object got = value.get();
+      if (got == null) {
+        return item(key, Type.STRING, null);
+      }
       Type type = inferType(got);
       if (type == null) {
         throw new RuntimeException(String.format("Unknown value type: %s", got));

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/a47eac91/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/display/DisplayDataTest.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/display/DisplayDataTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/display/DisplayDataTest.java
index f5c1e73..06b2bce 100644
--- a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/display/DisplayDataTest.java
+++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/display/DisplayDataTest.java
@@ -379,6 +379,8 @@ public class DisplayDataTest implements Serializable {
       public void populateDisplayData(Builder builder) {
         builder
             .addIfNotNull(DisplayData.item("nullString", (String) null))
+            .addIfNotNull(DisplayData.item("nullVPString", (ValueProvider<String>) null))
+            .addIfNotNull(DisplayData.item("nullierVPString", StaticValueProvider.of(null)))
             .addIfNotNull(DisplayData.item("notNullString", "foo"))
             .addIfNotNull(DisplayData.item("nullLong", (Long) null))
             .addIfNotNull(DisplayData.item("notNullLong", 1234L))