Package: LocalDateDeserializer
LocalDateDeserializer
name | instruction | branch | complexity | line | method | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
LocalDateDeserializer() |
|
|
|
|
|
||||||||||||||||||||
deserialize(Map, DeserializationContext) |
|
|
|
|
|
Coverage
1: package cz.cvut.kbss.jsonld.deserialization.datetime;
2:
3: import cz.cvut.kbss.jopa.datatype.xsd.XsdDateMapper;
4: import cz.cvut.kbss.jsonld.deserialization.DeserializationContext;
5: import cz.cvut.kbss.jsonld.deserialization.ValueDeserializer;
6: import cz.cvut.kbss.jsonld.exception.JsonLdDeserializationException;
7:
8: import java.time.LocalDate;
9: import java.util.Map;
10:
11: import static cz.cvut.kbss.jsonld.deserialization.datetime.OffsetDateTimeDeserializer.getLiteralValue;
12:
13: /**
14: * Deserializes values to {@link LocalDate}.
15: * <p>
16: * The values are expected to be String in the ISO date format.
17: */
18: public class LocalDateDeserializer implements ValueDeserializer<LocalDate> {
19:
20: @Override
21: public LocalDate deserialize(Map<?, ?> jsonNode, DeserializationContext<LocalDate> ctx) {
22: final Object value = getLiteralValue(jsonNode);
23: try {
24: return XsdDateMapper.map(value.toString());
25: } catch (RuntimeException e) {
26: throw new JsonLdDeserializationException("Unable to deserialize date value.", e);
27: }
28: }
29: }