How to write a custom Jackson deserializer for a parameterized type?

Viewed 25

So I have this definition


interface ParsedResult<out R>{
data class Success<out R>(val value: R): ParsedResult<R>
data class Failure(val original: String, error: Throwable): ParsedResult<Nothing>
}

I want to write a deserializer so that I can deserializer using that type like this:

mapper.readValue<ParsedResult<Int>>(""" "abc" """ ) // returns ParsedResult.Failure (doesn't fail)

//And

mapper.readValue<ParsedResult<Int>>("123") // returns ParsedResult.Success(123)
0 Answers
Related