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 <[email protected]>
Authored: Mon Apr 11 12:37:26 2016 -0700
Committer: Chinmay Soman <[email protected]>
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!")
+      }
+    })
   }
 }

Reply via email to