in common/src/main/scala/com/gu/sfl/model/model.scala [87:98]
def this () = this(null)
@Override
@throws(classOf[IOException])
@throws(classOf[JsonProcessingException])
override def deserialize(p: JsonParser, ctxt: DeserializationContext): DirtySavedArticle = {
val node: JsonNode = p.readValueAsTree()
val id = Option(node.get("id")).filter(_.isTextual).map(_.asText())
val shortUrl = Option(node.get("shortUrl")).filter(_.isTextual).map(_.asText())
val read = Option(node.get("read")).filter(_.isBoolean).map(_.asBoolean())
val date = Option(node.get("date")).filter(_.isTextual).map(_.asText()).map(LocalDateTime.parse(_, SavedArticleDateSerializer.formatter))
DirtySavedArticle(id, shortUrl, date, read.getOrElse(false))
}