001package io.konik.sdk.json; 002 003import com.fasterxml.jackson.core.JsonParser; 004import com.fasterxml.jackson.core.JsonProcessingException; 005import com.fasterxml.jackson.databind.DeserializationContext; 006import com.fasterxml.jackson.databind.JsonDeserializer; 007 008import java.io.IOException; 009import java.text.DateFormat; 010import java.text.ParseException; 011import java.text.SimpleDateFormat; 012import java.util.Date; 013 014public class DateDeserializer extends JsonDeserializer<Date> { 015 016 private static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd"); 017 018 @Override 019 public Date deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException, JsonProcessingException { 020 String dateAsString = jsonParser.readValueAs(String.class); 021 Date date = null; 022 try { 023 date = DATE_FORMAT.parse(dateAsString); 024 } catch (ParseException e) { 025 throw new RuntimeException(e); 026 } 027 028 return date; 029 } 030}