Example usage for com.fasterxml.jackson.databind DeserializationContext mappingException

List of usage examples for com.fasterxml.jackson.databind DeserializationContext mappingException

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind DeserializationContext mappingException.

Prototype

public JsonMappingException mappingException(String paramString) 

Source Link

Usage

From source file:org.agorava.linkedin.jackson.DeserializationUtils.java

public static <T> T deserializeFromDataNode(JsonParser jp, DeserializationContext ctxt, String propertyName,
        TypeReference<T> typeReference) throws IOException, JsonProcessingException {
    if (jp.hasCurrentToken() && jp.getCurrentToken().equals(JsonToken.START_OBJECT)) {
        JsonNode dataNode = jp.readValueAs(JsonNode.class);
        if (dataNode.has(propertyName)) {
            return OBJECT_MAPPER.reader(typeReference).<T>readValue(dataNode.get(propertyName));
        }/* ww w . j av a 2 s.  c o  m*/
        return null;
    }
    throw ctxt.mappingException("Expected JSON object");
}

From source file:com.animedetour.api.sched.deserialization.PanelDateDeserializerTest.java

@Test(expected = JsonMappingException.class)
public void deserializationFailure() throws IOException {
    PanelDateDeserializer deserializer = new PanelDateDeserializer();
    JsonParser parser = Mockito.mock(JsonParser.class);
    Mockito.when(parser.getCurrentToken()).thenReturn(JsonToken.VALUE_FALSE);
    DeserializationContext context = Mockito.mock(DeserializationContext.class);
    Mockito.when(context.mappingException(Mockito.anyString()))
            .thenReturn(new JsonMappingException("Mapping failure"));

    deserializer.deserialize(parser, context);
}

From source file:javaslang.jackson.datatype.deserialize.PriorityQueueDeserializer.java

@SuppressWarnings("unchecked")
@Override/*from w  ww  .  ja va2  s.  c o m*/
PriorityQueue<?> create(List<Object> list, DeserializationContext ctxt) throws JsonMappingException {
    if (javaType.containedTypeCount() == 0) {
        throw ctxt.mappingException(javaType.getRawClass());
    }
    JavaType generic = javaType.containedType(0);
    if (generic.getRawClass() == Object.class || !Comparable.class.isAssignableFrom(generic.getRawClass())) {
        throw ctxt.mappingException(javaType.getRawClass());
    }
    return PriorityQueue.ofAll((o1, o2) -> ((Comparable) o1).compareTo(o2), list);
}

From source file:com.clicktravel.infrastructure.persistence.aws.cloudsearch.client.JodaDateTimeDeserializer.java

@Override
public DateTime deserialize(final JsonParser jp, final DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    if (jp.getCurrentToken() != JsonToken.VALUE_STRING) {
        throw ctxt.mappingException("Expected JSON string");
    }//w  w w. j a  v  a  2  s.  c om
    return formatter.parseDateTime(jp.getText());
}

From source file:com.animedetour.api.sched.deserialization.PanelDateDeserializer.java

@Override
public ReadableInstant deserialize(JsonParser parser, DeserializationContext context)
        throws IOException, JsonProcessingException {
    JsonToken token = parser.getCurrentToken();

    if (token != JsonToken.VALUE_STRING) {
        throw context.mappingException("Expected string value for date");
    }//from   w ww. j av a2  s  .c  o  m

    String value = parser.getText().trim();

    if (value.length() == 0) {
        return null;
    }

    DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
    return formatter.parseDateTime(value);
}

From source file:de.undercouch.bson4jackson.deserializers.BsonDateDeserializer.java

@Override
public Date deserialize(BsonParser bsonParser, DeserializationContext ctxt) throws IOException {
    if (bsonParser.getCurrentToken() != JsonToken.VALUE_EMBEDDED_OBJECT
            || bsonParser.getCurrentBsonType() != BsonConstants.TYPE_DATETIME) {
        ctxt.mappingException(Date.class);
    }//from  ww  w. ja  v a 2 s .  c om

    Object obj = bsonParser.getEmbeddedObject();
    if (obj == null) {
        return null;
    }

    return (Date) obj;
}

From source file:de.undercouch.bson4jackson.deserializers.BsonCalendarDeserializer.java

@Override
public Calendar deserialize(BsonParser bsonParser, DeserializationContext ctxt) throws IOException {
    if (bsonParser.getCurrentToken() != JsonToken.VALUE_EMBEDDED_OBJECT
            || bsonParser.getCurrentBsonType() != BsonConstants.TYPE_DATETIME) {
        ctxt.mappingException(Date.class);
    }/*from ww  w  .  ja v  a 2s  . c o m*/

    Object obj = bsonParser.getEmbeddedObject();
    if (obj == null) {
        return null;
    }

    Calendar cal = Calendar.getInstance();
    cal.setTime((Date) obj);
    return cal;
}

From source file:javaslang.jackson.datatype.deserialize.SetDeserializer.java

@SuppressWarnings("unchecked")
@Override//from w  w  w .j  av a2s  . c o m
Set<?> create(List<Object> result, DeserializationContext ctx) throws JsonMappingException {
    if (javaslang.collection.SortedSet.class.isAssignableFrom(javaType.getRawClass())) {
        if (javaType.containedTypeCount() == 0) {
            throw ctx.mappingException(javaType.getRawClass());
        }
        JavaType generic = javaType.containedType(0);
        if (generic.getRawClass() == Object.class
                || !Comparable.class.isAssignableFrom(generic.getRawClass())) {
            throw ctx.mappingException(javaType.getRawClass());
        }
        return javaslang.collection.TreeSet.ofAll((o1, o2) -> ((Comparable) o1).compareTo(o2), result);
    }
    if (javaslang.collection.LinkedHashSet.class.isAssignableFrom(javaType.getRawClass())) {
        return javaslang.collection.LinkedHashSet.ofAll(result);
    }
    // default deserialization [...] -> Set
    return HashSet.ofAll(result);
}

From source file:javaslang.jackson.datatype.deserialize.ArrayDeserializer.java

@Override
public T deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
    JsonDeserializer<?> deserializer = deserializer(0);
    List<Object> list = new ArrayList<>();
    if (!p.isExpectedStartArrayToken()) {
        throw ctxt.mappingException(valueType.getRawClass());
    }/*from   ww  w  .jav a2 s .c  o m*/
    for (JsonToken jsonToken = p.nextToken(); jsonToken != END_ARRAY; jsonToken = p.nextToken()) {
        Object value = (jsonToken != VALUE_NULL) ? deserializer.deserialize(p, ctxt)
                : deserializer.getNullValue(ctxt);
        list.add(value);
    }
    return create(list, ctxt);
}

From source file:net.nullschool.grains.jackson.datatype.AbstractBasicConstCollectionDeserializer.java

@Override
public T deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException {
    JsonToken token = jp.getCurrentToken();
    if (token != JsonToken.START_ARRAY) {
        throw ctxt.mappingException(collectionType.getRawClass());
    }//  w  w  w .ja  va2 s  .  c  om

    if ((token = jp.nextToken()) == JsonToken.END_ARRAY) {
        return emptyResult();
    }

    JsonDeserializer<?> ed = elementDeserializer;
    TypeDeserializer etd = elementTypeDeserializer;

    List<Object> elements = null;
    Object element;
    do {
        element = token != JsonToken.VALUE_NULL
                ? etd == null ? ed.deserialize(jp, ctxt) : ed.deserializeWithType(jp, ctxt, etd)
                : null;

        token = jp.nextToken();
        if (elements == null) {
            if (token == JsonToken.END_ARRAY) {
                return resultOf(element);
            }
            elements = new ArrayList<>();
        }
        elements.add(element);
    } while (token != JsonToken.END_ARRAY);

    return asResult(elements);
}