diff options
author | Adrian Stabiszewski <github@grundid.de> | 2016-11-29 11:35:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-29 11:35:48 +0100 |
commit | 28efcccfb08c236be90ff0cbadf974a68aefa2f3 (patch) | |
tree | 3f54523db9d1ae615e09f96d218e645d526fb834 | |
parent | 1cf7c7969207d62ae9a42ae844863b7dbd58ffea (diff) | |
parent | 342c523f5385644e85b78885bfa8e572961b91d9 (diff) | |
download | geojson-jackson-28efcccfb08c236be90ff0cbadf974a68aefa2f3.tar.gz |
Merge pull request #32 from Babbleshack/mongo-deserializer-for-LngLatAlt
Add fix to LngLatAlt deserilizer for mongo
-rw-r--r-- | src/main/java/org/geojson/jackson/LngLatAltDeserializer.java | 4 | ||||
-rw-r--r-- | src/test/java/org/geojson/jackson/LngLatAltDeserializerTest.java | 21 |
2 files changed, 24 insertions, 1 deletions
diff --git a/src/main/java/org/geojson/jackson/LngLatAltDeserializer.java b/src/main/java/org/geojson/jackson/LngLatAltDeserializer.java index 596a9c9..02d6a6c 100644 --- a/src/main/java/org/geojson/jackson/LngLatAltDeserializer.java +++ b/src/main/java/org/geojson/jackson/LngLatAltDeserializer.java @@ -68,9 +68,11 @@ public class LngLatAltDeserializer extends JsonDeserializer<LngLatAlt> { return jp.getDoubleValue(); case VALUE_NUMBER_INT: return jp.getLongValue(); + case VALUE_STRING: + return jp.getValueAsDouble(); default: throw ctxt.mappingException("Unexpected token (" + token.name() - + ") when binding data into LngLatAlt "); + + ") when binding data into LngLatAlt"); } } } diff --git a/src/test/java/org/geojson/jackson/LngLatAltDeserializerTest.java b/src/test/java/org/geojson/jackson/LngLatAltDeserializerTest.java new file mode 100644 index 0000000..5d204b8 --- /dev/null +++ b/src/test/java/org/geojson/jackson/LngLatAltDeserializerTest.java @@ -0,0 +1,21 @@ +package org.geojson.jackson; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.geojson.LngLatAlt; +import org.junit.Assert; +import org.junit.Test; + +/** + * Created by babbleshack on 27/11/16. + */ +public class LngLatAltDeserializerTest { + @Test + public void deserializeMongoLngLatAlt() throws Exception { + LngLatAlt lngLatAlt = new LngLatAlt(10D, 15D, 5); + String lngLatAltJson = new ObjectMapper().writeValueAsString(lngLatAlt); + lngLatAltJson.replace("10.0", "\"10.0\""); + lngLatAltJson.replace("15.0", "\"15.0\""); + LngLatAlt lngLatAlt1 = new ObjectMapper().readValue(lngLatAltJson, LngLatAlt.class); + Assert.assertTrue(lngLatAlt.equals(lngLatAlt)); + } +} |