Skip to contentMethod: serialize(TemporalAmount, SerializationContext)
1: package cz.cvut.kbss.jsonld.serialization.serializer.context.datetime;
2:
3: import cz.cvut.kbss.jopa.vocabulary.XSD;
4: import cz.cvut.kbss.jsonld.serialization.JsonNodeFactory;
5: import cz.cvut.kbss.jsonld.serialization.model.JsonNode;
6: import cz.cvut.kbss.jsonld.serialization.serializer.SerializerUtils;
7: import cz.cvut.kbss.jsonld.serialization.serializer.ValueSerializer;
8: import cz.cvut.kbss.jsonld.serialization.traversal.SerializationContext;
9:
10: import java.time.temporal.TemporalAmount;
11:
12: public class ContextBuildingTemporalAmountSerializer implements ValueSerializer<TemporalAmount> {
13:
14: @Override
15: public JsonNode serialize(TemporalAmount value, SerializationContext<TemporalAmount> ctx) {
16:• if (ctx.getTerm() != null) {
17: final JsonNode termDef = SerializerUtils.createTypedTermDefinition(ctx.getFieldName(), ctx.getTerm(),
18: XSD.DURATION);
19: ctx.registerTermMapping(ctx.getFieldName(), termDef);
20: }
21: return JsonNodeFactory.createLiteralNode(ctx.getTerm(), value.toString());
22: }
23: }