From c094769978bc5fed372f0f540613cfb66d3397d6 Mon Sep 17 00:00:00 2001 From: Cowtowncoder Date: Thu, 18 Jun 2015 11:07:59 -0700 Subject: test cleanup --- attic/MappingIteratorDeserializer.java | 53 ++++++++++++++++++++++++++++++++++ attic/MappingIteratorReadTest.java | 25 ++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 attic/MappingIteratorDeserializer.java create mode 100644 attic/MappingIteratorReadTest.java (limited to 'attic') diff --git a/attic/MappingIteratorDeserializer.java b/attic/MappingIteratorDeserializer.java new file mode 100644 index 000000000..92646eabe --- /dev/null +++ b/attic/MappingIteratorDeserializer.java @@ -0,0 +1,53 @@ +package com.fasterxml.jackson.databind.deser.std; + +import java.io.IOException; + +import com.fasterxml.jackson.core.*; +import com.fasterxml.jackson.databind.*; +import com.fasterxml.jackson.databind.deser.ContextualDeserializer; + +public class MappingIteratorDeserializer + extends StdDeserializer> + implements ContextualDeserializer +{ + private static final long serialVersionUID = 1L; + + protected final JavaType _valueType; + + protected final JsonDeserializer _valueDeserializer; + + public MappingIteratorDeserializer(JavaType valueType) { + this(valueType, null); + } + + protected MappingIteratorDeserializer(JavaType valueType, JsonDeserializer vdeser) { + super(MappingIterator.class); + _valueType = valueType; + _valueDeserializer = vdeser; + } + + @Override + public JsonDeserializer createContextual(DeserializationContext ctxt, + BeanProperty prop) throws JsonMappingException + { + JsonDeserializer deser = ctxt.findContextualValueDeserializer(_valueType, prop); + return (deser == _valueDeserializer) ? this + : new MappingIteratorDeserializer(_valueType, deser); + } + + @Override + public MappingIterator deserialize(JsonParser p, + DeserializationContext ctxt) throws IOException, + JsonProcessingException + { +System.err.println("DEBUG: token/0 == "+p.getCurrentToken()); + + MappingIterator mit = new MappingIterator(_valueType, p, ctxt, + _valueDeserializer, false, null); + +System.err.println("DEBUG: token/1 == "+p.getCurrentToken()); + + return mit; + } + +} diff --git a/attic/MappingIteratorReadTest.java b/attic/MappingIteratorReadTest.java new file mode 100644 index 000000000..25aa64c42 --- /dev/null +++ b/attic/MappingIteratorReadTest.java @@ -0,0 +1,25 @@ +package com.fasterxml.jackson.databind.seq; + +import java.util.List; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.*; + +/** + * Test(s) for [databind#823], adding support for reading root-level + * sequences. + */ +public class MappingIteratorReadTest extends BaseMapTest +{ + public void testSimple() throws Exception + { + final ObjectMapper MAPPER = new ObjectMapper(); + final String JSON = aposToQuotes("{'str':'a'}{'str':'b'}\n {'str':'c'}"); + MappingIterator it = MAPPER + .readValue(JSON, new TypeReference>() { }); + List all = it.readAll(); + assertEquals(3, all.size()); + assertEquals("c", all.get(2).str); + it.close(); + } +} -- cgit v1.2.3