You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by cp...@apache.org on 2016/04/14 00:47:57 UTC

samza git commit: SAMZA-933: Bug fix in JsonSerde to allow access to all ObjectMapper getter methods

Repository: samza
Updated Branches:
  refs/heads/master dc67d1560 -> c9cc0368f


SAMZA-933: Bug fix in JsonSerde to allow access to all ObjectMapper getter methods


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

Branch: refs/heads/master
Commit: c9cc0368fb1dc4d5150a45d847cfd43d76b015f9
Parents: dc67d15
Author: Yuanchi Ning <ni...@gmail.com>
Authored: Mon Apr 11 12:37:26 2016 -0700
Committer: Chinmay Soman <cs...@uber.com>
Committed: Mon Apr 11 12:37:26 2016 -0700

----------------------------------------------------------------------
 .../apache/samza/serializers/model/SamzaObjectMapper.java |  2 --
 .../org/apache/samza/serializers/TestJsonSerde.scala      | 10 +++++++++-
 2 files changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/samza/blob/c9cc0368/samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java
----------------------------------------------------------------------
diff --git a/samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java b/samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java
index 717b5dc..83e6b8c 100644
--- a/samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java
+++ b/samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java
@@ -44,7 +44,6 @@ import org.codehaus.jackson.map.KeyDeserializer;
 import org.codehaus.jackson.map.MapperConfig;
 import org.codehaus.jackson.map.ObjectMapper;
 import org.codehaus.jackson.map.PropertyNamingStrategy;
-import org.codehaus.jackson.map.SerializationConfig;
 import org.codehaus.jackson.map.SerializerProvider;
 import org.codehaus.jackson.map.introspect.AnnotatedField;
 import org.codehaus.jackson.map.introspect.AnnotatedMethod;
@@ -93,7 +92,6 @@ public class SamzaObjectMapper {
     mapper.getDeserializationConfig().addMixInAnnotations(ContainerModel.class, JsonContainerModelMixIn.class);
     mapper.getSerializationConfig().addMixInAnnotations(JobModel.class, JsonJobModelMixIn.class);
     mapper.getDeserializationConfig().addMixInAnnotations(JobModel.class, JsonJobModelMixIn.class);
-    mapper.configure(SerializationConfig.Feature.AUTO_DETECT_GETTERS, false);
 
     // Convert camel case to hyphenated field names, and register the module.
     mapper.setPropertyNamingStrategy(new CamelCaseToDashesStrategy());

http://git-wip-us.apache.org/repos/asf/samza/blob/c9cc0368/samza-core/src/test/scala/org/apache/samza/serializers/TestJsonSerde.scala
----------------------------------------------------------------------
diff --git a/samza-core/src/test/scala/org/apache/samza/serializers/TestJsonSerde.scala b/samza-core/src/test/scala/org/apache/samza/serializers/TestJsonSerde.scala
index 4f1c14c..50b2d0f 100644
--- a/samza-core/src/test/scala/org/apache/samza/serializers/TestJsonSerde.scala
+++ b/samza-core/src/test/scala/org/apache/samza/serializers/TestJsonSerde.scala
@@ -19,11 +19,11 @@
 
 package org.apache.samza.serializers
 
+
 import org.junit.Assert._
 import org.junit.Test
 
 import scala.collection.JavaConversions._
-import scala.collection.immutable.HashMap
 
 
 class TestJsonSerde {
@@ -33,5 +33,13 @@ class TestJsonSerde {
     val obj = new java.util.HashMap[String, Object](Map[String, Object]("hi" -> "bye", "why" -> new java.lang.Integer(2)))
     val bytes = serde.toBytes(obj)
     assertEquals(obj, serde.fromBytes(bytes))
+    val serdeHashMapEntry = new JsonSerde[java.util.Map.Entry[String, Object]]
+    obj.entrySet().foreach(entry => {
+      try {
+        val entryBytes = serdeHashMapEntry.toBytes(entry)
+      } catch {
+        case e: Exception => fail("HashMap Entry serialization failed!")
+      }
+    })
   }
 }