@SuppressWarnings("unchecked")
public T deserialize(final JsonParser jsonParser,
final DeserializationContext ctxt) throws IOException,
JsonProcessingException {
final ObjectMapper mapper = (ObjectMapper) jsonParser.getCodec();
final ObjectNode recordNode = mapper.reader()
.without(DeserializationFeature.UNWRAP_ROOT_VALUE)
.readTree(jsonParser);
if (recordNode.hasNonNull(RDATA_FIELD_NAME)) { //If "rdata" field is detected
//Delegate to DNSJava to parse "rdata" field
return (T) Record.fromString(getRecordName(recordNode),