@Override public JodaDateDeserializerBase<?> withFormat(JacksonJodaDateFormat format) { return new InstantDeserializer(format); }
@Override public Instant deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { JsonToken t = p.getCurrentToken(); if (t == JsonToken.VALUE_NUMBER_INT) { return new Instant(p.getLongValue()); } if (t == JsonToken.VALUE_STRING) { String str = p.getText().trim(); if (str.length() == 0) { return null; } // 11-Sep-2018, tatu: `DateTimeDeserializer` allows timezone inclusion in brackets; // should that be checked here too? return Instant.parse(str, _format.createParser(ctxt)); } return _handleNotNumberOrString(p, ctxt); } }
addDeserializer(Instant.class, new InstantDeserializer()); addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer()); addDeserializer(LocalDate.class, new LocalDateDeserializer());