@Override
    public JsonObject value() {
        if (byteValue == null) {
            return null;
        } else if (value == null) {
            try {
                value = OBJECT_MAPPER.readValue(byteValue, JsonObject.class);
                return value;
            } catch (IOException e) {
                throw new TranscodingException("Error deserializing row value from bytes to JsonObject \""
                  + new String(byteValue, CharsetUtil.UTF_8) + "\"", e);
            }
        } else {
            return value;
        }
    }
@ Override public JsonObject value ( ) { if ( byteValue == null ) { return null ; } else if ( value == null ) { try { value = OBJECT_MAPPER . readValue ( byteValue , JsonObject . class ) ; return value ; } catch ( IOException e ) { throw new TranscodingException ( "Error deserializing row value from bytes to JsonObject \"" + new String ( byteValue , CharsetUtil . UTF_8 ) + "\"" , e ) ; } } else { return value ; } }
Return the {@link JsonObject} representation of the JSON corresponding to this row.
The {@link JsonObject} is lazily created from {@link #byteValue()} the first time it is requested.

@return the JsonObject representation of the value.
@throws TranscodingException if the lazy deserialization couldn't be performed due to a Jackson error.