abstract class io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base<T> extends io.ebeaninternal.server.type.ScalarTypeBase<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base
  super_class: io.ebeaninternal.server.type.ScalarTypeBase
{
  private final com.fasterxml.jackson.databind.ObjectWriter objectWriter;
    descriptor: Lcom/fasterxml/jackson/databind/ObjectWriter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.fasterxml.jackson.databind.ObjectMapper objectReader;
    descriptor: Lcom/fasterxml/jackson/databind/ObjectMapper;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.fasterxml.jackson.databind.JavaType deserType;
    descriptor: Lcom/fasterxml/jackson/databind/JavaType;
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.String pgType;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.ebean.core.type.DocPropertyType docType;
    descriptor: Lio/ebean/core/type/DocPropertyType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(java.lang.Class<T>, com.fasterxml.jackson.databind.ObjectMapper, com.fasterxml.jackson.databind.introspect.AnnotatedField, int, java.lang.String, io.ebean.core.type.DocPropertyType);
    descriptor: (Ljava/lang/Class;Lcom/fasterxml/jackson/databind/ObjectMapper;Lcom/fasterxml/jackson/databind/introspect/AnnotatedField;ILjava/lang/String;Lio/ebean/core/type/DocPropertyType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=7
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.Class cls
        start local 2 // com.fasterxml.jackson.databind.ObjectMapper objectMapper
        start local 3 // com.fasterxml.jackson.databind.introspect.AnnotatedField field
        start local 4 // int dbType
        start local 5 // java.lang.String pgType
        start local 6 // io.ebean.core.type.DocPropertyType docType
         0: .line 155
            aload 0 /* this */
            aload 1 /* cls */
            iconst_0
            iload 4 /* dbType */
            invokespecial io.ebeaninternal.server.type.ScalarTypeBase.<init>:(Ljava/lang/Class;ZI)V
         1: .line 156
            aload 0 /* this */
            aload 5 /* pgType */
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.pgType:Ljava/lang/String;
         2: .line 157
            aload 0 /* this */
            aload 6 /* docType */
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.docType:Lio/ebean/core/type/DocPropertyType;
         3: .line 158
            aload 0 /* this */
            aload 2 /* objectMapper */
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectReader:Lcom/fasterxml/jackson/databind/ObjectMapper;
         4: .line 160
            aload 3 /* field */
            invokevirtual com.fasterxml.jackson.databind.introspect.AnnotatedField.getType:()Lcom/fasterxml/jackson/databind/JavaType;
            astore 7 /* javaType */
        start local 7 // com.fasterxml.jackson.databind.JavaType javaType
         5: .line 161
            aload 2 /* objectMapper */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.getDeserializationConfig:()Lcom/fasterxml/jackson/databind/DeserializationConfig;
            astore 8 /* deserConfig */
        start local 8 // com.fasterxml.jackson.databind.DeserializationConfig deserConfig
         6: .line 162
            aload 8 /* deserConfig */
            invokevirtual com.fasterxml.jackson.databind.DeserializationConfig.getAnnotationIntrospector:()Lcom/fasterxml/jackson/databind/AnnotationIntrospector;
            astore 9 /* ai */
        start local 9 // com.fasterxml.jackson.databind.AnnotationIntrospector ai
         7: .line 164
            aload 9 /* ai */
            ifnull 12
            aload 7 /* javaType */
            ifnull 12
            aload 7 /* javaType */
            ldc Ljava/lang/Object;
            invokevirtual com.fasterxml.jackson.databind.JavaType.hasRawClass:(Ljava/lang/Class;)Z
            ifne 12
         8: .line 166
            aload 0 /* this */
            aload 9 /* ai */
            aload 8 /* deserConfig */
            aload 3 /* field */
            aload 7 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.AnnotationIntrospector.refineDeserializationType:(Lcom/fasterxml/jackson/databind/cfg/MapperConfig;Lcom/fasterxml/jackson/databind/introspect/Annotated;Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/JavaType;
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
         9: .line 167
            goto 13
      StackMap locals: io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base java.lang.Class com.fasterxml.jackson.databind.ObjectMapper com.fasterxml.jackson.databind.introspect.AnnotatedField int java.lang.String io.ebean.core.type.DocPropertyType com.fasterxml.jackson.databind.JavaType com.fasterxml.jackson.databind.DeserializationConfig com.fasterxml.jackson.databind.AnnotationIntrospector
      StackMap stack: com.fasterxml.jackson.databind.JsonMappingException
        10: astore 10 /* e */
        start local 10 // com.fasterxml.jackson.databind.JsonMappingException e
        11: .line 168
            new java.lang.RuntimeException
            dup
            aload 10 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 10 // com.fasterxml.jackson.databind.JsonMappingException e
        12: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* javaType */
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
        13: .line 174
      StackMap locals:
      StackMap stack:
            aload 2 /* objectMapper */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.getSerializationConfig:()Lcom/fasterxml/jackson/databind/SerializationConfig;
            astore 10 /* serConfig */
        start local 10 // com.fasterxml.jackson.databind.SerializationConfig serConfig
        14: .line 175
            aload 8 /* deserConfig */
            invokevirtual com.fasterxml.jackson.databind.DeserializationConfig.getAnnotationIntrospector:()Lcom/fasterxml/jackson/databind/AnnotationIntrospector;
            astore 9 /* ai */
        15: .line 177
            aload 9 /* ai */
            ifnull 21
            aload 7 /* javaType */
            ifnull 21
            aload 7 /* javaType */
            ldc Ljava/lang/Object;
            invokevirtual com.fasterxml.jackson.databind.JavaType.hasRawClass:(Ljava/lang/Class;)Z
            ifne 21
        16: .line 179
            aload 9 /* ai */
            aload 10 /* serConfig */
            aload 3 /* field */
            aload 7 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.AnnotationIntrospector.refineSerializationType:(Lcom/fasterxml/jackson/databind/cfg/MapperConfig;Lcom/fasterxml/jackson/databind/introspect/Annotated;Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/JavaType;
            astore 11 /* serType */
        start local 11 // com.fasterxml.jackson.databind.JavaType serType
        17: .line 180
            aload 0 /* this */
            aload 2 /* objectMapper */
            aload 11 /* serType */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.writerFor:(Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/ObjectWriter;
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectWriter:Lcom/fasterxml/jackson/databind/ObjectWriter;
        end local 11 // com.fasterxml.jackson.databind.JavaType serType
        18: .line 181
            goto 22
      StackMap locals: io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base java.lang.Class com.fasterxml.jackson.databind.ObjectMapper com.fasterxml.jackson.databind.introspect.AnnotatedField int java.lang.String io.ebean.core.type.DocPropertyType com.fasterxml.jackson.databind.JavaType com.fasterxml.jackson.databind.DeserializationConfig com.fasterxml.jackson.databind.AnnotationIntrospector com.fasterxml.jackson.databind.SerializationConfig
      StackMap stack: com.fasterxml.jackson.databind.JsonMappingException
        19: astore 11 /* e */
        start local 11 // com.fasterxml.jackson.databind.JsonMappingException e
        20: .line 182
            new java.lang.RuntimeException
            dup
            aload 11 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 11 // com.fasterxml.jackson.databind.JsonMappingException e
        21: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* objectMapper */
            aload 7 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.writerFor:(Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/ObjectWriter;
            putfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectWriter:Lcom/fasterxml/jackson/databind/ObjectWriter;
        22: .line 187
      StackMap locals:
      StackMap stack:
            return
        end local 10 // com.fasterxml.jackson.databind.SerializationConfig serConfig
        end local 9 // com.fasterxml.jackson.databind.AnnotationIntrospector ai
        end local 8 // com.fasterxml.jackson.databind.DeserializationConfig deserConfig
        end local 7 // com.fasterxml.jackson.databind.JavaType javaType
        end local 6 // io.ebean.core.type.DocPropertyType docType
        end local 5 // java.lang.String pgType
        end local 4 // int dbType
        end local 3 // com.fasterxml.jackson.databind.introspect.AnnotatedField field
        end local 2 // com.fasterxml.jackson.databind.ObjectMapper objectMapper
        end local 1 // java.lang.Class cls
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0   23     1           cls  Ljava/lang/Class<TT;>;
            0   23     2  objectMapper  Lcom/fasterxml/jackson/databind/ObjectMapper;
            0   23     3         field  Lcom/fasterxml/jackson/databind/introspect/AnnotatedField;
            0   23     4        dbType  I
            0   23     5        pgType  Ljava/lang/String;
            0   23     6       docType  Lio/ebean/core/type/DocPropertyType;
            5   23     7      javaType  Lcom/fasterxml/jackson/databind/JavaType;
            6   23     8   deserConfig  Lcom/fasterxml/jackson/databind/DeserializationConfig;
            7   23     9            ai  Lcom/fasterxml/jackson/databind/AnnotationIntrospector;
           11   12    10             e  Lcom/fasterxml/jackson/databind/JsonMappingException;
           14   23    10     serConfig  Lcom/fasterxml/jackson/databind/SerializationConfig;
           17   18    11       serType  Lcom/fasterxml/jackson/databind/JavaType;
           20   21    11             e  Lcom/fasterxml/jackson/databind/JsonMappingException;
      Exception table:
        from    to  target  type
           8     9      10  Class com.fasterxml.jackson.databind.JsonMappingException
          16    18      19  Class com.fasterxml.jackson.databind.JsonMappingException
    Signature: (Ljava/lang/Class<TT;>;Lcom/fasterxml/jackson/databind/ObjectMapper;Lcom/fasterxml/jackson/databind/introspect/AnnotatedField;ILjava/lang/String;Lio/ebean/core/type/DocPropertyType;)V
    MethodParameters:
              Name  Flags
      cls           
      objectMapper  
      field         
      dbType        
      pgType        
      docType       

  public boolean isMutable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
         0: .line 194
            iconst_1
            ireturn
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;

  public boolean isDirty(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.Object value
         0: .line 202
            aload 1 /* value */
            invokestatic io.ebeaninternal.server.type.CheckMarkedDirty.isDirty:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object value
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    1     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  public T read(io.ebean.core.type.DataReader);
    descriptor: (Lio/ebean/core/type/DataReader;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // io.ebean.core.type.DataReader reader
         0: .line 207
            aload 1 /* reader */
            invokeinterface io.ebean.core.type.DataReader.getString:()Ljava/lang/String;
            astore 2 /* json */
        start local 2 // java.lang.String json
         1: .line 208
            aload 2 /* json */
            ifnull 2
            aload 2 /* json */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
         2: .line 209
      StackMap locals: java.lang.String
      StackMap stack:
            aconst_null
            areturn
         3: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectReader:Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 2 /* json */
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readValue:(Ljava/lang/String;Lcom/fasterxml/jackson/databind/JavaType;)Ljava/lang/Object;
         4: areturn
         5: .line 213
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
         6: .line 214
            new io.ebean.text.TextException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to parse JSON [{}] as "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* json */
            aload 3 /* e */
            invokespecial io.ebean.text.TextException.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.io.IOException e
        end local 2 // java.lang.String json
        end local 1 // io.ebean.core.type.DataReader reader
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    7     1  reader  Lio/ebean/core/type/DataReader;
            1    7     2    json  Ljava/lang/String;
            6    7     3       e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException
    Exceptions:
      throws java.sql.SQLException
    Signature: (Lio/ebean/core/type/DataReader;)TT;
    MethodParameters:
        Name  Flags
      reader  

  public void bind(io.ebean.core.type.DataBinder, );
    descriptor: (Lio/ebean/core/type/DataBinder;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // io.ebean.core.type.DataBinder binder
        start local 2 // java.lang.Object value
         0: .line 220
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.pgType:Ljava/lang/String;
            ifnull 6
         1: .line 221
            aload 2 /* value */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            aload 2 /* value */
            invokevirtual io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.formatValue:(Ljava/lang/Object;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: astore 3 /* rawJson */
        start local 3 // java.lang.String rawJson
         4: .line 222
            aload 1 /* binder */
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.pgType:Ljava/lang/String;
            aload 3 /* rawJson */
            invokestatic io.ebeaninternal.server.type.PostgresHelper.asObject:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            invokeinterface io.ebean.core.type.DataBinder.setObject:(Ljava/lang/Object;)V
        end local 3 // java.lang.String rawJson
         5: .line 223
            goto 14
         6: .line 224
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            ifnonnull 9
         7: .line 225
            aload 1 /* binder */
            bipush 12
            invokeinterface io.ebean.core.type.DataBinder.setNull:(I)V
         8: .line 226
            goto 14
         9: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectWriter:Lcom/fasterxml/jackson/databind/ObjectWriter;
            aload 2 /* value */
            invokevirtual com.fasterxml.jackson.databind.ObjectWriter.writeValueAsString:(Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* json */
        start local 3 // java.lang.String json
        10: .line 229
            aload 1 /* binder */
            aload 3 /* json */
            invokeinterface io.ebean.core.type.DataBinder.setString:(Ljava/lang/String;)V
        end local 3 // java.lang.String json
        11: .line 230
            goto 14
      StackMap locals:
      StackMap stack: com.fasterxml.jackson.core.JsonProcessingException
        12: astore 3 /* e */
        start local 3 // com.fasterxml.jackson.core.JsonProcessingException e
        13: .line 231
            new java.sql.SQLException
            dup
            ldc "Unable to create JSON"
            aload 3 /* e */
            invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // com.fasterxml.jackson.core.JsonProcessingException e
        14: .line 235
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object value
        end local 1 // io.ebean.core.type.DataBinder binder
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0   15     1   binder  Lio/ebean/core/type/DataBinder;
            0   15     2    value  TT;
            4    5     3  rawJson  Ljava/lang/String;
           10   11     3     json  Ljava/lang/String;
           13   14     3        e  Lcom/fasterxml/jackson/core/JsonProcessingException;
      Exception table:
        from    to  target  type
           9    11      12  Class com.fasterxml.jackson.core.JsonProcessingException
    Exceptions:
      throws java.sql.SQLException
    Signature: (Lio/ebean/core/type/DataBinder;TT;)V
    MethodParameters:
        Name  Flags
      binder  
      value   

  public java.lang.Object toJdbcType(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.Object value
         0: .line 240
            aload 1 /* value */
            areturn
        end local 1 // java.lang.Object value
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    1     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  public T toBeanType();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.Object value
         0: .line 247
            aload 1 /* value */
            areturn
        end local 1 // java.lang.Object value
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    1     1  value  Ljava/lang/Object;
    Signature: (Ljava/lang/Object;)TT;
    MethodParameters:
       Name  Flags
      value  

  public java.lang.String formatValue(T);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.Object value
         0: .line 253
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectWriter:Lcom/fasterxml/jackson/databind/ObjectWriter;
            aload 1 /* value */
            invokevirtual com.fasterxml.jackson.databind.ObjectWriter.writeValueAsString:(Ljava/lang/Object;)Ljava/lang/String;
         1: areturn
         2: .line 254
      StackMap locals:
      StackMap stack: com.fasterxml.jackson.core.JsonProcessingException
            astore 2 /* e */
        start local 2 // com.fasterxml.jackson.core.JsonProcessingException e
         3: .line 255
            new javax.persistence.PersistenceException
            dup
            ldc "Unable to create JSON"
            aload 2 /* e */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // com.fasterxml.jackson.core.JsonProcessingException e
        end local 1 // java.lang.Object value
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    4     1  value  TT;
            3    4     2      e  Lcom/fasterxml/jackson/core/JsonProcessingException;
      Exception table:
        from    to  target  type
           0     1       2  Class com.fasterxml.jackson.core.JsonProcessingException
    Signature: (TT;)Ljava/lang/String;
    MethodParameters:
       Name  Flags
      value  

  public T parse(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.lang.String value
         0: .line 262
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectReader:Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 1 /* value */
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readValue:(Ljava/lang/String;Lcom/fasterxml/jackson/databind/JavaType;)Ljava/lang/Object;
         1: areturn
         2: .line 263
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
         3: .line 264
            new io.ebean.text.TextException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to parse JSON [{}] as "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* value */
            aload 2 /* e */
            invokespecial io.ebean.text.TextException.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 2 // java.io.IOException e
        end local 1 // java.lang.String value
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    4     1  value  Ljava/lang/String;
            3    4     2      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    Signature: (Ljava/lang/String;)TT;
    MethodParameters:
       Name  Flags
      value  

  public io.ebean.core.type.DocPropertyType getDocType();
    descriptor: ()Lio/ebean/core/type/DocPropertyType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
         0: .line 270
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.docType:Lio/ebean/core/type/DocPropertyType;
            areturn
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;

  public boolean isDateTimeCapable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
         0: .line 275
            iconst_0
            ireturn
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;

  public T convertFromMillis();
    descriptor: (J)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // long dateTime
         0: .line 280
            new java.lang.IllegalStateException
            dup
            ldc "Not supported"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // long dateTime
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    1     1  dateTime  J
    Signature: (J)TT;
    MethodParameters:
          Name  Flags
      dateTime  

  public T jsonRead(com.fasterxml.jackson.core.JsonParser);
    descriptor: (Lcom/fasterxml/jackson/core/JsonParser;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // com.fasterxml.jackson.core.JsonParser parser
         0: .line 285
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectReader:Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 1 /* parser */
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.deserType:Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readValue:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/JavaType;)Ljava/lang/Object;
            areturn
        end local 1 // com.fasterxml.jackson.core.JsonParser parser
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    1     1  parser  Lcom/fasterxml/jackson/core/JsonParser;
    Exceptions:
      throws java.io.IOException
    Signature: (Lcom/fasterxml/jackson/core/JsonParser;)TT;
    MethodParameters:
        Name  Flags
      parser  

  public void jsonWrite(com.fasterxml.jackson.core.JsonGenerator, );
    descriptor: (Lcom/fasterxml/jackson/core/JsonGenerator;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // com.fasterxml.jackson.core.JsonGenerator writer
        start local 2 // java.lang.Object value
         0: .line 290
            aload 0 /* this */
            getfield io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.objectWriter:Lcom/fasterxml/jackson/databind/ObjectWriter;
            aload 1 /* writer */
            aload 2 /* value */
            invokevirtual com.fasterxml.jackson.databind.ObjectWriter.writeValue:(Lcom/fasterxml/jackson/core/JsonGenerator;Ljava/lang/Object;)V
         1: .line 291
            return
        end local 2 // java.lang.Object value
        end local 1 // com.fasterxml.jackson.core.JsonGenerator writer
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    2     1  writer  Lcom/fasterxml/jackson/core/JsonGenerator;
            0    2     2   value  TT;
    Exceptions:
      throws java.io.IOException
    Signature: (Lcom/fasterxml/jackson/core/JsonGenerator;TT;)V
    MethodParameters:
        Name  Flags
      writer  
      value   

  public T readData(java.io.DataInput);
    descriptor: (Ljava/io/DataInput;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.io.DataInput dataInput
         0: .line 295
            aload 1 /* dataInput */
            invokeinterface java.io.DataInput.readBoolean:()Z
            ifne 2
         1: .line 296
            aconst_null
            areturn
         2: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* dataInput */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            invokevirtual io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.parse:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 1 // java.io.DataInput dataInput
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    3     1  dataInput  Ljava/io/DataInput;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/DataInput;)TT;
    MethodParameters:
           Name  Flags
      dataInput  

  public void writeData(java.io.DataOutput, );
    descriptor: (Ljava/io/DataOutput;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
        start local 1 // java.io.DataOutput dataOutput
        start local 2 // java.lang.Object value
         0: .line 304
            aload 2 /* value */
            ifnonnull 3
         1: .line 305
            aload 1 /* dataOutput */
            iconst_0
            invokeinterface java.io.DataOutput.writeBoolean:(Z)V
         2: .line 306
            goto 4
         3: .line 307
      StackMap locals:
      StackMap stack:
            aload 1 /* dataOutput */
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base.format:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic io.ebeaninternal.server.type.ScalarHelp.writeUTF:(Ljava/io/DataOutput;Ljava/lang/String;)V
         4: .line 309
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object value
        end local 1 // java.io.DataOutput dataOutput
        end local 0 // io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lio/ebeaninternal/server/type/ScalarTypeJsonObjectMapper$Base<TT;>;
            0    5     1  dataOutput  Ljava/io/DataOutput;
            0    5     2       value  TT;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/DataOutput;TT;)V
    MethodParameters:
            Name  Flags
      dataOutput  
      value       
}
Signature: <T:Ljava/lang/Object;>Lio/ebeaninternal/server/type/ScalarTypeBase<TT;>;
SourceFile: "ScalarTypeJsonObjectMapper.java"
NestHost: io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper
InnerClasses:
  private abstract Base = io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper$Base of io.ebeaninternal.server.type.ScalarTypeJsonObjectMapper