List of usage examples for com.fasterxml.jackson.databind DeserializationContext findRootValueDeserializer
public final JsonDeserializer<Object> findRootValueDeserializer(JavaType paramJavaType)
From source file:javaslang.jackson.datatype.deserialize.SerializableDeserializer.java
@Override public T deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { JsonDeserializer<Object> deserializer = ctxt.findRootValueDeserializer(ctxt.constructType(byte[].class)); byte[] bytes = (byte[]) deserializer.deserialize(p, ctxt); return deserialize(bytes); }
From source file:javaslang.jackson.datatype.deserialize.ValueDeserializer.java
@Override public void resolve(DeserializationContext ctxt) throws JsonMappingException { for (int i = 0; i < typeCount; i++) { if (i < javaType.containedTypeCount()) { deserializers.add(ctxt.findRootValueDeserializer(javaType.containedType(i))); } else {/*from w ww . j a v a 2s. co m*/ deserializers.add(ctxt.findContextualValueDeserializer(TypeFactory.unknownType(), null)); } } }
From source file:org.ebayopensource.common.util.ParametersDeserializer.java
@SuppressWarnings("unchecked") protected JsonDeserializer<Map> _findCustomDeser(DeserializationContext ctxt, JavaType type) throws JsonMappingException { // NOTE: since we don't yet have the referring property, this should be fine: JsonDeserializer<?> deser = ctxt.findRootValueDeserializer(type); return (JsonDeserializer<Map>) deser; }
From source file:com.wealdtech.jackson.modules.TriValDeserializer.java
@Override public TriVal<?> deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { if (jp.getCurrentToken() == JsonToken.VALUE_STRING && jp.getText().length() == 0) { return TriVal.clear(); }//from ww w.j a va2 s. c om Object reference = ctxt.findRootValueDeserializer(_referenceType).deserialize(jp, ctxt); return TriVal.of(reference); }
From source file:com.basistech.rosette.dm.jackson.MorphoAnalysisListDeserializer.java
private MorphoAnalysisListDeserializer(DeserializationContext ctxt) throws JsonMappingException { JavaType type = ctxt.constructType(MorphoAnalysis.class); maDeserializer = ctxt.findRootValueDeserializer(type); type = ctxt.constructType(HanMorphoAnalysis.class); hanMaDeserializer = ctxt.findRootValueDeserializer(type); type = ctxt.constructType(ArabicMorphoAnalysis.class); arMaDeserializer = ctxt.findRootValueDeserializer(type); ctxt.setAttribute(MorphoAnalysisListDeserializer.class, maDeserializer); type = ctxt.constructType(KoreanMorphoAnalysis.class); korMaDeserializer = ctxt.findRootValueDeserializer(type); ctxt.setAttribute(KoreanMorphoAnalysis.class, korMaDeserializer); cached = true;/*from www . j a v a 2 s. c o m*/ }
From source file:javaslang.jackson.datatype.deserialize.MaplikeDeserializer.java
@SuppressWarnings("unchecked") @Override//from ww w . j a va 2 s. c o m public void resolve(DeserializationContext ctxt) throws JsonMappingException { mapLikeType = mapLike(javaType, ctxt); JavaType keyType = mapLikeType.getKeyType(); if (keyType.getRawClass().isAssignableFrom(Comparable.class)) { keyComparator = (o1, o2) -> ((Comparable) o1).compareTo(o2); } else { keyComparator = (o1, o2) -> o1.toString().compareTo(o2.toString()); } keyDeserializer = ctxt.findKeyDeserializer(keyType, null); valueDeserializer = ctxt.findRootValueDeserializer(mapLikeType.getContentType()); }
From source file:org.emfjson.jackson.databind.deser.ResourceDeserializer.java
@Override public Resource deserialize(JsonParser jp, DeserializationContext ctxt, Resource intoValue) throws IOException { final Resource resource = getResource(ctxt, intoValue); if (resource == null) { throw new IllegalArgumentException("Invalid resource"); }//from w ww .ja v a 2 s. com final ReferenceEntries entries = new ReferenceEntries(); final EcoreTypeFactory ecoreType = new EcoreTypeFactory(); final ResourceSet resourceSet = resource.getResourceSet(); ctxt.setAttribute(RESOURCE, resource); ctxt.setAttribute(REFERENCE_ENTRIES, entries); ctxt.setAttribute(CACHE, new Cache()); ctxt.setAttribute(TYPE_FACTORY, ecoreType); ctxt.setAttribute(RESOURCE_SET, resourceSet); if (!jp.hasCurrentToken()) { jp.nextToken(); } final TypeFactory factory = TypeFactory.defaultInstance(); final JsonDeserializer<Object> deserializer = ctxt .findRootValueDeserializer(factory.constructType(EObject.class)); if (jp.getCurrentToken() == JsonToken.START_ARRAY) { while (jp.nextToken() != JsonToken.END_ARRAY) { EObject value = (EObject) deserializer.deserialize(jp, ctxt); if (value != null) { resource.getContents().add(value); } } } else if (jp.getCurrentToken() == JsonToken.START_OBJECT) { EObject value = (EObject) deserializer.deserialize(jp, ctxt); if (value != null) { resource.getContents().add(value); } } entries.resolve(resourceSet, uriHandler); return resource; }