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!") + } + }) } }
