This is an automated email from the ASF dual-hosted git repository.

suvasude pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-gobblin.git


The following commit(s) were added to refs/heads/master by this push:
     new 2415173  [GOBBLIN-923]GOBBLIN-923] Fix Array and Map JsonElement 
converters to handle nullable elements
2415173 is described below

commit 2415173b1e428848c5b1c47788a2ad0aaa8ba3bd
Author: Ahmed Abdul Hamid <[email protected]>
AuthorDate: Wed Oct 23 13:04:11 2019 -0700

    [GOBBLIN-923]GOBBLIN-923] Fix Array and Map JsonElement converters to 
handle nullable elements
    
    This change fixes the converters below to check if
    the JsonElement
    they are invoked with is a JsonNull and handle it
    accordingly.
    
      - JsonElementConversionWithAvroSchemaFactory::Arra
    yConverter
      - JsonElementConversionWithAvroSchemaFactory::MapC
    onverter
      - JsonElementConversionFactory::ArrayConverter
      - JsonElementConversionFactory::MapConverter
    
    Closes #2779 from ahmedahamid/master
---
 .../apache/gobblin/converter/avro/JsonElementConversionFactory.java   | 4 ++--
 .../converter/avro/JsonElementConversionWithAvroSchemaFactory.java    | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionFactory.java
 
b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionFactory.java
index c6d9f23..0d6707d 100644
--- 
a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionFactory.java
+++ 
b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionFactory.java
@@ -530,7 +530,7 @@ public class JsonElementConversionFactory {
       List<Object> list = new ArrayList<>();
 
       for (JsonElement elem : (JsonArray) value) {
-        list.add(getElementConverter().convertField(elem));
+        list.add(getElementConverter().convert(elem));
       }
 
       return new GenericData.Array<>(arraySchema(), list);
@@ -566,7 +566,7 @@ public class JsonElementConversionFactory {
       Map<String, Object> map = new HashMap<>();
 
       for (Map.Entry<String, JsonElement> entry : ((JsonObject) 
value).entrySet()) {
-        map.put(entry.getKey(), 
getElementConverter().convertField(entry.getValue()));
+        map.put(entry.getKey(), 
getElementConverter().convert(entry.getValue()));
       }
 
       return map;
diff --git 
a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
 
b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
index f7a8e80..f9627a5 100644
--- 
a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
+++ 
b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
@@ -90,7 +90,7 @@ public class JsonElementConversionWithAvroSchemaFactory 
extends JsonElementConve
       List<Object> list = new ArrayList<>();
 
       for (JsonElement elem : (JsonArray) value) {
-        list.add(getElementConverter().convertField(elem));
+        list.add(getElementConverter().convert(elem));
       }
 
       return new GenericData.Array<>(schema(), list);
@@ -124,7 +124,7 @@ public class JsonElementConversionWithAvroSchemaFactory 
extends JsonElementConve
       Map<String, Object> map = new HashMap<>();
 
       for (Map.Entry<String, JsonElement> entry : ((JsonObject) 
value).entrySet()) {
-        map.put(entry.getKey(), 
getElementConverter().convertField(entry.getValue()));
+        map.put(entry.getKey(), 
getElementConverter().convert(entry.getValue()));
       }
 
       return map;

Reply via email to