package com.airlock.iam.common.infrastructure.jackson;

import com.airlock.iam.base.misc.date.Dates;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import java.io.IOException;
import java.time.LocalDate;

public class LocalDateDeserializer extends JsonDeserializer<LocalDate> {
   public Class<LocalDate> handledType() {
      return LocalDate.class;
   }

   public LocalDate deserialize(JsonParser parser, DeserializationContext ctxt) throws IOException, JsonProcessingException {
      return Dates.toLocalDate(parser.getText());
   }
}
