public class io.ebeaninternal.server.text.csv.TCsvReader<T> implements io.ebean.text.csv.CsvReader<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.ebeaninternal.server.text.csv.TCsvReader
  super_class: java.lang.Object
{
  private static final io.ebean.text.TimeStringParser TIME_PARSER;
    descriptor: Lio/ebean/text/TimeStringParser;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final io.ebean.Database server;
    descriptor: Lio/ebean/Database;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.ebeaninternal.server.deploy.BeanDescriptor<T> descriptor;
    descriptor: Lio/ebeaninternal/server/deploy/BeanDescriptor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lio/ebeaninternal/server/deploy/BeanDescriptor<TT;>;

  private final java.util.List<io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn> columnList;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;>;

  private final io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn ignoreColumn;
    descriptor: Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean hasHeader;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int logInfoFrequency;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String defaultTimeFormat;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String defaultDateFormat;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String defaultTimestampFormat;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Locale defaultLocale;
    descriptor: Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE

  protected int persistBatchSize;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  private boolean addPropertiesFromHeader;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 32
            new io.ebean.text.TimeStringParser
            dup
            invokespecial io.ebean.text.TimeStringParser.<init>:()V
            putstatic io.ebeaninternal.server.text.csv.TCsvReader.TIME_PARSER:Lio/ebean/text/TimeStringParser;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(io.ebean.Database, io.ebeaninternal.server.deploy.BeanDescriptor<T>);
    descriptor: (Lio/ebean/Database;Lio/ebeaninternal/server/deploy/BeanDescriptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // io.ebean.Database server
        start local 2 // io.ebeaninternal.server.deploy.BeanDescriptor descriptor
         0: .line 58
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 38
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
         2: .line 40
            aload 0 /* this */
            new io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn
            dup
            invokespecial io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn.<init>:()V
            putfield io.ebeaninternal.server.text.csv.TCsvReader.ignoreColumn:Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
         3: .line 44
            aload 0 /* this */
            sipush 1000
            putfield io.ebeaninternal.server.text.csv.TCsvReader.logInfoFrequency:I
         4: .line 46
            aload 0 /* this */
            ldc "HH:mm:ss"
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimeFormat:Ljava/lang/String;
         5: .line 47
            aload 0 /* this */
            ldc "yyyy-MM-dd"
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultDateFormat:Ljava/lang/String;
         6: .line 48
            aload 0 /* this */
            ldc "yyyy-MM-dd hh:mm:ss.fffffffff"
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimestampFormat:Ljava/lang/String;
         7: .line 49
            aload 0 /* this */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultLocale:Ljava/util/Locale;
         8: .line 54
            aload 0 /* this */
            bipush 30
            putfield io.ebeaninternal.server.text.csv.TCsvReader.persistBatchSize:I
         9: .line 59
            aload 0 /* this */
            aload 1 /* server */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.server:Lio/ebean/Database;
        10: .line 60
            aload 0 /* this */
            aload 2 /* descriptor */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.descriptor:Lio/ebeaninternal/server/deploy/BeanDescriptor;
        11: .line 61
            return
        end local 2 // io.ebeaninternal.server.deploy.BeanDescriptor descriptor
        end local 1 // io.ebean.Database server
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0   12     1      server  Lio/ebean/Database;
            0   12     2  descriptor  Lio/ebeaninternal/server/deploy/BeanDescriptor<TT;>;
    Signature: (Lio/ebean/Database;Lio/ebeaninternal/server/deploy/BeanDescriptor<TT;>;)V
    MethodParameters:
            Name  Flags
      server      
      descriptor  

  public void setDefaultLocale(java.util.Locale);
    descriptor: (Ljava/util/Locale;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.util.Locale defaultLocale
         0: .line 65
            aload 0 /* this */
            aload 1 /* defaultLocale */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultLocale:Ljava/util/Locale;
         1: .line 66
            return
        end local 1 // java.util.Locale defaultLocale
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  defaultLocale  Ljava/util/Locale;
    MethodParameters:
               Name  Flags
      defaultLocale  

  public void setDefaultTimeFormat(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String defaultTimeFormat
         0: .line 70
            aload 0 /* this */
            aload 1 /* defaultTimeFormat */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimeFormat:Ljava/lang/String;
         1: .line 71
            return
        end local 1 // java.lang.String defaultTimeFormat
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  defaultTimeFormat  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      defaultTimeFormat  

  public void setDefaultDateFormat(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String defaultDateFormat
         0: .line 75
            aload 0 /* this */
            aload 1 /* defaultDateFormat */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultDateFormat:Ljava/lang/String;
         1: .line 76
            return
        end local 1 // java.lang.String defaultDateFormat
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  defaultDateFormat  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      defaultDateFormat  

  public void setDefaultTimestampFormat(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String defaultTimestampFormat
         0: .line 80
            aload 0 /* this */
            aload 1 /* defaultTimestampFormat */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimestampFormat:Ljava/lang/String;
         1: .line 81
            return
        end local 1 // java.lang.String defaultTimestampFormat
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  defaultTimestampFormat  Ljava/lang/String;
    MethodParameters:
                        Name  Flags
      defaultTimestampFormat  

  public void setPersistBatchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int persistBatchSize
         0: .line 85
            aload 0 /* this */
            iload 1 /* persistBatchSize */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.persistBatchSize:I
         1: .line 86
            return
        end local 1 // int persistBatchSize
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  persistBatchSize  I
    MethodParameters:
                  Name  Flags
      persistBatchSize  

  public void setIgnoreHeader();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
         0: .line 90
            aload 0 /* this */
            iconst_1
            iconst_0
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.setHasHeader:(ZZ)V
         1: .line 91
            return
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;

  public void setAddPropertiesFromHeader();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
         0: .line 95
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.setHasHeader:(ZZ)V
         1: .line 96
            return
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;

  public void setHasHeader(boolean, boolean);
    descriptor: (ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // boolean hasHeader
        start local 2 // boolean addPropertiesFromHeader
         0: .line 100
            aload 0 /* this */
            iload 1 /* hasHeader */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.hasHeader:Z
         1: .line 101
            aload 0 /* this */
            iload 2 /* addPropertiesFromHeader */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.addPropertiesFromHeader:Z
         2: .line 102
            return
        end local 2 // boolean addPropertiesFromHeader
        end local 1 // boolean hasHeader
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    3     0                     this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    3     1                hasHeader  Z
            0    3     2  addPropertiesFromHeader  Z
    MethodParameters:
                         Name  Flags
      hasHeader                
      addPropertiesFromHeader  

  public void setLogInfoFrequency(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int logInfoFrequency
         0: .line 106
            aload 0 /* this */
            iload 1 /* logInfoFrequency */
            putfield io.ebeaninternal.server.text.csv.TCsvReader.logInfoFrequency:I
         1: .line 107
            return
        end local 1 // int logInfoFrequency
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  logInfoFrequency  I
    MethodParameters:
                  Name  Flags
      logInfoFrequency  

  public void addIgnore();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
         0: .line 111
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.ignoreColumn:Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 112
            return
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;

  public void addProperty(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String propertyName
         0: .line 116
            aload 0 /* this */
            aload 1 /* propertyName */
            aconst_null
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addProperty:(Ljava/lang/String;Lio/ebean/text/StringParser;)V
         1: .line 117
            return
        end local 1 // java.lang.String propertyName
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1  propertyName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      propertyName  

  public void addDateTime(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String propertyName
        start local 2 // java.lang.String dateTimeFormat
         0: .line 121
            aload 0 /* this */
            aload 1 /* propertyName */
            aload 2 /* dateTimeFormat */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addDateTime:(Ljava/lang/String;Ljava/lang/String;Ljava/util/Locale;)V
         1: .line 122
            return
        end local 2 // java.lang.String dateTimeFormat
        end local 1 // java.lang.String propertyName
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1    propertyName  Ljava/lang/String;
            0    2     2  dateTimeFormat  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      propertyName    
      dateTimeFormat  

  public void addDateTime(java.lang.String, java.lang.String, java.util.Locale);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Locale;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String propertyName
        start local 2 // java.lang.String dateTimeFormat
        start local 3 // java.util.Locale locale
         0: .line 127
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.descriptor:Lio/ebeaninternal/server/deploy/BeanDescriptor;
            aload 1 /* propertyName */
            invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getExpressionPath:(Ljava/lang/String;)Lio/ebean/plugin/ExpressionPath;
            astore 4 /* elProp */
        start local 4 // io.ebean.plugin.ExpressionPath elProp
         1: .line 128
            aload 4 /* elProp */
            invokeinterface io.ebean.plugin.ExpressionPath.isDateTimeCapable:()Z
            ifne 3
         2: .line 129
            new io.ebean.text.TextException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Property "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* propertyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is not DateTime capable"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial io.ebean.text.TextException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 131
      StackMap locals: io.ebean.plugin.ExpressionPath
      StackMap stack:
            aload 2 /* dateTimeFormat */
            ifnonnull 5
         4: .line 132
            aload 0 /* this */
            aload 4 /* elProp */
            invokeinterface io.ebean.plugin.ExpressionPath.getJdbcType:()I
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.getDefaultDateTimeFormat:(I)Ljava/lang/String;
            astore 2 /* dateTimeFormat */
         5: .line 135
      StackMap locals:
      StackMap stack:
            aload 3 /* locale */
            ifnonnull 7
         6: .line 136
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.defaultLocale:Ljava/util/Locale;
            astore 3 /* locale */
         7: .line 139
      StackMap locals:
      StackMap stack:
            new java.text.SimpleDateFormat
            dup
            aload 2 /* dateTimeFormat */
            aload 3 /* locale */
            invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            astore 5 /* sdf */
        start local 5 // java.text.SimpleDateFormat sdf
         8: .line 140
            new io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser
            dup
            aload 5 /* sdf */
            aload 2 /* dateTimeFormat */
            aload 4 /* elProp */
            invokespecial io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser.<init>:(Ljava/text/DateFormat;Ljava/lang/String;Lio/ebean/plugin/ExpressionPath;)V
            astore 6 /* parser */
        start local 6 // io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser parser
         9: .line 142
            new io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn
            dup
            aload 4 /* elProp */
            aload 6 /* parser */
            invokespecial io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn.<init>:(Lio/ebean/plugin/ExpressionPath;Lio/ebean/text/StringParser;)V
            astore 7 /* column */
        start local 7 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn column
        10: .line 143
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            aload 7 /* column */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 144
            return
        end local 7 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn column
        end local 6 // io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser parser
        end local 5 // java.text.SimpleDateFormat sdf
        end local 4 // io.ebean.plugin.ExpressionPath elProp
        end local 3 // java.util.Locale locale
        end local 2 // java.lang.String dateTimeFormat
        end local 1 // java.lang.String propertyName
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0   12     1    propertyName  Ljava/lang/String;
            0   12     2  dateTimeFormat  Ljava/lang/String;
            0   12     3          locale  Ljava/util/Locale;
            1   12     4          elProp  Lio/ebean/plugin/ExpressionPath;
            8   12     5             sdf  Ljava/text/SimpleDateFormat;
            9   12     6          parser  Lio/ebeaninternal/server/text/csv/TCsvReader$DateTimeParser;
           10   12     7          column  Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
    MethodParameters:
                Name  Flags
      propertyName    
      dateTimeFormat  
      locale          

  private java.lang.String getDefaultDateTimeFormat(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int jdbcType
         0: .line 147
            iload 1 /* jdbcType */
            tableswitch { // 91 - 93
                   91: 2
                   92: 1
                   93: 3
              default: 4
          }
         1: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimeFormat:Ljava/lang/String;
            areturn
         2: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.defaultDateFormat:Ljava/lang/String;
            areturn
         3: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.defaultTimestampFormat:Ljava/lang/String;
            areturn
         4: .line 156
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Expected java.sql.Types TIME,DATE or TIMESTAMP but got ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* jdbcType */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // int jdbcType
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    5     1  jdbcType  I
    MethodParameters:
          Name  Flags
      jdbcType  

  public void addProperty(java.lang.String, io.ebean.text.StringParser);
    descriptor: (Ljava/lang/String;Lio/ebean/text/StringParser;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String propertyName
        start local 2 // io.ebean.text.StringParser parser
         0: .line 163
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.descriptor:Lio/ebeaninternal/server/deploy/BeanDescriptor;
            aload 1 /* propertyName */
            invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getExpressionPath:(Ljava/lang/String;)Lio/ebean/plugin/ExpressionPath;
            astore 3 /* elProp */
        start local 3 // io.ebean.plugin.ExpressionPath elProp
         1: .line 164
            aload 2 /* parser */
            ifnonnull 3
         2: .line 165
            aload 3 /* elProp */
            invokeinterface io.ebean.plugin.ExpressionPath.getStringParser:()Lio/ebean/text/StringParser;
            astore 2 /* parser */
         3: .line 167
      StackMap locals: io.ebean.plugin.ExpressionPath
      StackMap stack:
            new io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn
            dup
            aload 3 /* elProp */
            aload 2 /* parser */
            invokespecial io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn.<init>:(Lio/ebean/plugin/ExpressionPath;Lio/ebean/text/StringParser;)V
            astore 4 /* column */
        start local 4 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn column
         4: .line 168
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            aload 4 /* column */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 169
            return
        end local 4 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn column
        end local 3 // io.ebean.plugin.ExpressionPath elProp
        end local 2 // io.ebean.text.StringParser parser
        end local 1 // java.lang.String propertyName
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    6     1  propertyName  Ljava/lang/String;
            0    6     2        parser  Lio/ebean/text/StringParser;
            1    6     3        elProp  Lio/ebean/plugin/ExpressionPath;
            4    6     4        column  Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
    MethodParameters:
              Name  Flags
      propertyName  
      parser        

  public void process(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.io.Reader reader
         0: .line 173
            new io.ebean.text.csv.DefaultCsvCallback
            dup
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.persistBatchSize:I
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.logInfoFrequency:I
            invokespecial io.ebean.text.csv.DefaultCsvCallback.<init>:(II)V
            astore 2 /* callback */
        start local 2 // io.ebean.text.csv.DefaultCsvCallback callback
         1: .line 174
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* callback */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.process:(Ljava/io/Reader;Lio/ebean/text/csv/CsvCallback;)V
         2: .line 175
            return
        end local 2 // io.ebean.text.csv.DefaultCsvCallback callback
        end local 1 // java.io.Reader reader
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    3     1    reader  Ljava/io/Reader;
            1    3     2  callback  Lio/ebean/text/csv/DefaultCsvCallback<TT;>;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      reader  

  public void process(java.io.Reader, io.ebean.text.csv.CsvCallback<T>);
    descriptor: (Ljava/io/Reader;Lio/ebean/text/csv/CsvCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.io.Reader reader
        start local 2 // io.ebean.text.csv.CsvCallback callback
         0: .line 180
            aload 1 /* reader */
            ifnonnull 2
         1: .line 181
            new java.lang.NullPointerException
            dup
            ldc "reader is null?"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 183
      StackMap locals:
      StackMap stack:
            aload 2 /* callback */
            ifnonnull 4
         3: .line 184
            new java.lang.NullPointerException
            dup
            ldc "callback is null?"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 187
      StackMap locals:
      StackMap stack:
            new io.ebeaninternal.server.text.csv.CsvUtilReader
            dup
            aload 1 /* reader */
            invokespecial io.ebeaninternal.server.text.csv.CsvUtilReader.<init>:(Ljava/io/Reader;)V
            astore 3 /* utilReader */
        start local 3 // io.ebeaninternal.server.text.csv.CsvUtilReader utilReader
         5: .line 189
            aload 2 /* callback */
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.server:Lio/ebean/Database;
            invokeinterface io.ebean.text.csv.CsvCallback.begin:(Lio/ebean/Database;)V
         6: .line 191
            iconst_0
            istore 4 /* row */
        start local 4 // int row
         7: .line 193
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.hasHeader:Z
            ifeq 12
         8: .line 194
            aload 3 /* utilReader */
            invokevirtual io.ebeaninternal.server.text.csv.CsvUtilReader.readNext:()[Ljava/lang/String;
            astore 5 /* line */
        start local 5 // java.lang.String[] line
         9: .line 195
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.addPropertiesFromHeader:Z
            ifeq 11
        10: .line 196
            aload 0 /* this */
            aload 5 /* line */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addPropertiesFromHeader:([Ljava/lang/String;)V
        11: .line 198
      StackMap locals: io.ebeaninternal.server.text.csv.CsvUtilReader int java.lang.String[]
      StackMap stack:
            aload 2 /* callback */
            aload 5 /* line */
            invokeinterface io.ebean.text.csv.CsvCallback.readHeader:([Ljava/lang/String;)V
        end local 5 // java.lang.String[] line
        12: .line 203
      StackMap locals:
      StackMap stack:
            iinc 4 /* row */ 1
        13: .line 204
            aload 3 /* utilReader */
            invokevirtual io.ebeaninternal.server.text.csv.CsvUtilReader.readNext:()[Ljava/lang/String;
            astore 5 /* line */
        start local 5 // java.lang.String[] line
        14: .line 205
            aload 5 /* line */
            ifnonnull 17
        15: .line 206
            iinc 4 /* row */ -1
        16: .line 207
            goto 26
        17: .line 210
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 2 /* callback */
            iload 4 /* row */
            aload 5 /* line */
            invokeinterface io.ebean.text.csv.CsvCallback.processLine:(I[Ljava/lang/String;)Z
            ifeq 12
        18: .line 212
            aload 5 /* line */
            arraylength
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpeq 23
        19: .line 214
            new java.lang.StringBuilder
            dup
            ldc "Error at line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* row */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ". Expected ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "] columns "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 215
            ldc "but instead we have ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* line */
            arraylength
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "].  Line["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* line */
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        21: .line 214
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* msg */
        start local 6 // java.lang.String msg
        22: .line 216
            new io.ebean.text.TextException
            dup
            aload 6 /* msg */
            invokespecial io.ebean.text.TextException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String msg
        23: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* row */
            aload 5 /* line */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.buildBeanFromLineContent:(I[Ljava/lang/String;)Ljava/lang/Object;
            astore 6 /* bean */
        start local 6 // java.lang.Object bean
        24: .line 221
            aload 2 /* callback */
            iload 4 /* row */
            aload 5 /* line */
            aload 6 /* bean */
            invokeinterface io.ebean.text.csv.CsvCallback.processBean:(I[Ljava/lang/String;Ljava/lang/Object;)V
        end local 6 // java.lang.Object bean
        end local 5 // java.lang.String[] line
        25: .line 224
            goto 12
        26: .line 226
      StackMap locals:
      StackMap stack:
            aload 2 /* callback */
            iload 4 /* row */
            invokeinterface io.ebean.text.csv.CsvCallback.end:(I)V
        27: .line 228
            goto 31
      StackMap locals:
      StackMap stack: java.lang.Exception
        28: astore 5 /* e */
        start local 5 // java.lang.Exception e
        29: .line 231
            aload 2 /* callback */
            iload 4 /* row */
            aload 5 /* e */
            invokeinterface io.ebean.text.csv.CsvCallback.endWithError:(ILjava/lang/Exception;)V
        30: .line 232
            aload 5 /* e */
            athrow
        end local 5 // java.lang.Exception e
        31: .line 234
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int row
        end local 3 // io.ebeaninternal.server.text.csv.CsvUtilReader utilReader
        end local 2 // io.ebean.text.csv.CsvCallback callback
        end local 1 // java.io.Reader reader
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   32     0        this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0   32     1      reader  Ljava/io/Reader;
            0   32     2    callback  Lio/ebean/text/csv/CsvCallback<TT;>;
            5   32     3  utilReader  Lio/ebeaninternal/server/text/csv/CsvUtilReader;
            7   32     4         row  I
            9   12     5        line  [Ljava/lang/String;
           14   25     5        line  [Ljava/lang/String;
           22   23     6         msg  Ljava/lang/String;
           24   25     6        bean  TT;
           29   31     5           e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          12    27      28  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception
    Signature: (Ljava/io/Reader;Lio/ebean/text/csv/CsvCallback<TT;>;)V
    MethodParameters:
          Name  Flags
      reader    
      callback  

  private void addPropertiesFromHeader(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // java.lang.String[] line
         0: .line 237
            aload 1 /* line */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 18
      StackMap locals: io.ebeaninternal.server.text.csv.TCsvReader java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* aLine */
        start local 2 // java.lang.String aLine
         2: .line 238
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.descriptor:Lio/ebeaninternal/server/deploy/BeanDescriptor;
            aload 2 /* aLine */
            invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getElGetValue:(Ljava/lang/String;)Lio/ebeaninternal/server/el/ElPropertyValue;
            astore 6 /* elProp */
        start local 6 // io.ebeaninternal.server.el.ElPropertyValue elProp
         3: .line 239
            aload 6 /* elProp */
            ifnonnull 5
         4: .line 240
            new io.ebean.text.TextException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Property ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* aLine */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] not found"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial io.ebean.text.TextException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 243
      StackMap locals: io.ebeaninternal.server.text.csv.TCsvReader java.lang.String[] java.lang.String int int java.lang.String[] io.ebeaninternal.server.el.ElPropertyValue
      StackMap stack:
            bipush 92
            aload 6 /* elProp */
            invokeinterface io.ebeaninternal.server.el.ElPropertyValue.getJdbcType:()I
            if_icmpne 8
         6: .line 244
            aload 0 /* this */
            aload 2 /* aLine */
            getstatic io.ebeaninternal.server.text.csv.TCsvReader.TIME_PARSER:Lio/ebean/text/TimeStringParser;
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addProperty:(Ljava/lang/String;Lio/ebean/text/StringParser;)V
         7: .line 246
            goto 17
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            aload 6 /* elProp */
            invokeinterface io.ebeaninternal.server.el.ElPropertyValue.getJdbcType:()I
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.isDateTimeType:(I)Z
            ifeq 11
         9: .line 247
            aload 0 /* this */
            aload 2 /* aLine */
            aconst_null
            aconst_null
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addDateTime:(Ljava/lang/String;Ljava/lang/String;Ljava/util/Locale;)V
        10: .line 249
            goto 17
      StackMap locals:
      StackMap stack:
        11: aload 6 /* elProp */
            invokeinterface io.ebeaninternal.server.el.ElPropertyValue.isAssocProperty:()Z
            ifeq 16
        12: .line 250
            aload 6 /* elProp */
            invokeinterface io.ebeaninternal.server.el.ElPropertyValue.getBeanProperty:()Lio/ebeaninternal/server/deploy/BeanProperty;
            checkcast io.ebeaninternal.server.deploy.BeanPropertyAssocOne
            astore 7 /* assocOne */
        start local 7 // io.ebeaninternal.server.deploy.BeanPropertyAssocOne assocOne
        13: .line 251
            aload 7 /* assocOne */
            invokevirtual io.ebeaninternal.server.deploy.BeanPropertyAssocOne.getBeanDescriptor:()Lio/ebeaninternal/server/deploy/BeanDescriptor;
            invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.getIdBinder:()Lio/ebeaninternal/server/deploy/id/IdBinder;
            invokeinterface io.ebeaninternal.server.deploy.id.IdBinder.getIdProperty:()Ljava/lang/String;
            astore 8 /* idProp */
        start local 8 // java.lang.String idProp
        14: .line 252
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 2 /* aLine */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* idProp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addProperty:(Ljava/lang/String;)V
        end local 8 // java.lang.String idProp
        end local 7 // io.ebeaninternal.server.deploy.BeanPropertyAssocOne assocOne
        15: .line 253
            goto 17
        16: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* aLine */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.addProperty:(Ljava/lang/String;)V
        end local 6 // io.ebeaninternal.server.el.ElPropertyValue elProp
        end local 2 // java.lang.String aLine
        17: .line 237
      StackMap locals: io.ebeaninternal.server.text.csv.TCsvReader java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        18: iload 3
            iload 4
            if_icmplt 1
        19: .line 257
            return
        end local 1 // java.lang.String[] line
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0   20     1      line  [Ljava/lang/String;
            2   17     2     aLine  Ljava/lang/String;
            3   17     6    elProp  Lio/ebeaninternal/server/el/ElPropertyValue;
           13   15     7  assocOne  Lio/ebeaninternal/server/deploy/BeanPropertyAssocOne<*>;
           14   15     8    idProp  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      line  

  private boolean isDateTimeType(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int t
         0: .line 260
            iload 1 /* t */
            bipush 93
            if_icmpeq 1
            iload 1 /* t */
            bipush 91
            if_icmpeq 1
            iload 1 /* t */
            bipush 92
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 1 // int t
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    2     1     t  I
    MethodParameters:
      Name  Flags
      t     

  protected T buildBeanFromLineContent(int, java.lang.String[]);
    descriptor: (I[Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int row
        start local 2 // java.lang.String[] line
         0: .line 267
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.descriptor:Lio/ebeaninternal/server/deploy/BeanDescriptor;
            invokevirtual io.ebeaninternal.server.deploy.BeanDescriptor.createEntityBean:()Lio/ebean/bean/EntityBean;
            astore 3 /* entityBean */
        start local 3 // io.ebean.bean.EntityBean entityBean
         1: .line 268
            aload 3 /* entityBean */
            astore 4 /* bean */
        start local 4 // java.lang.Object bean
         2: .line 270
            iconst_0
            istore 5 /* columnPos */
        start local 5 // int columnPos
         3: goto 6
         4: .line 271
      StackMap locals: io.ebean.bean.EntityBean java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            iload 5 /* columnPos */
            aload 2 /* line */
            iload 5 /* columnPos */
            aaload
            aload 3 /* entityBean */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader.convertAndSetColumn:(ILjava/lang/String;Lio/ebean/bean/EntityBean;)V
         5: .line 270
            iinc 5 /* columnPos */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* columnPos */
            aload 2 /* line */
            arraylength
            if_icmplt 4
        end local 5 // int columnPos
         7: .line 274
            aload 4 /* bean */
         8: areturn
        end local 4 // java.lang.Object bean
        end local 3 // io.ebean.bean.EntityBean entityBean
         9: .line 276
      StackMap locals: io.ebeaninternal.server.text.csv.TCsvReader int java.lang.String[]
      StackMap stack: java.lang.RuntimeException
            astore 3 /* e */
        start local 3 // java.lang.RuntimeException e
        10: .line 277
            new java.lang.StringBuilder
            dup
            ldc "Error at line: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* row */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " line["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* line */
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
        11: .line 278
            new java.lang.RuntimeException
            dup
            aload 4 /* msg */
            aload 3 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.String msg
        end local 3 // java.lang.RuntimeException e
        end local 2 // java.lang.String[] line
        end local 1 // int row
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0   12     1         row  I
            0   12     2        line  [Ljava/lang/String;
            1    9     3  entityBean  Lio/ebean/bean/EntityBean;
            2    9     4        bean  TT;
            3    7     5   columnPos  I
           10   12     3           e  Ljava/lang/RuntimeException;
           11   12     4         msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     8       9  Class java.lang.RuntimeException
    Signature: (I[Ljava/lang/String;)TT;
    MethodParameters:
      Name  Flags
      row   
      line  

  protected void convertAndSetColumn(int, java.lang.String, io.ebean.bean.EntityBean);
    descriptor: (ILjava/lang/String;Lio/ebean/bean/EntityBean;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
        start local 1 // int columnPos
        start local 2 // java.lang.String strValue
        start local 3 // io.ebean.bean.EntityBean bean
         0: .line 284
            aload 2 /* strValue */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 2 /* strValue */
         1: .line 286
            aload 2 /* strValue */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
         2: .line 287
            return
         3: .line 290
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.ebeaninternal.server.text.csv.TCsvReader.columnList:Ljava/util/List;
            iload 1 /* columnPos */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn
            astore 4 /* c */
        start local 4 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn c
         4: .line 291
            aload 4 /* c */
            aload 2 /* strValue */
            aload 3 /* bean */
            invokevirtual io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn.convertAndSet:(Ljava/lang/String;Lio/ebean/bean/EntityBean;)V
         5: .line 292
            return
        end local 4 // io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn c
        end local 3 // io.ebean.bean.EntityBean bean
        end local 2 // java.lang.String strValue
        end local 1 // int columnPos
        end local 0 // io.ebeaninternal.server.text.csv.TCsvReader this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lio/ebeaninternal/server/text/csv/TCsvReader<TT;>;
            0    6     1  columnPos  I
            0    6     2   strValue  Ljava/lang/String;
            0    6     3       bean  Lio/ebean/bean/EntityBean;
            4    6     4          c  Lio/ebeaninternal/server/text/csv/TCsvReader$CsvColumn;
    MethodParameters:
           Name  Flags
      columnPos  
      strValue   
      bean       
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lio/ebean/text/csv/CsvReader<TT;>;
SourceFile: "TCsvReader.java"
NestMembers:
  io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn  io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser
InnerClasses:
  public CsvColumn = io.ebeaninternal.server.text.csv.TCsvReader$CsvColumn of io.ebeaninternal.server.text.csv.TCsvReader
  private DateTimeParser = io.ebeaninternal.server.text.csv.TCsvReader$DateTimeParser of io.ebeaninternal.server.text.csv.TCsvReader