class org.hsqldb.lib.FileUtil$DatabaseFilenameFilter implements java.io.FilenameFilter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hsqldb.lib.FileUtil$DatabaseFilenameFilter
  super_class: java.lang.Object
{
  java.lang.String[] suffixes;
    descriptor: [Ljava/lang/String;
    flags: (0x0000) 

  java.lang.String[] extraSuffixes;
    descriptor: [Ljava/lang/String;
    flags: (0x0000) 

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

  private java.io.File parent;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File canonicalFile;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

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

  void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
        start local 1 // java.lang.String dbNamePath
         0: .line 556
            aload 0 /* this */
            aload 1 /* dbNamePath */
            iconst_1
            invokespecial org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.<init>:(Ljava/lang/String;Z)V
         1: .line 557
            return
        end local 1 // java.lang.String dbNamePath
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            0    2     1  dbNamePath  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      dbNamePath  

  void <init>(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
        start local 1 // java.lang.String dbNamePath
        start local 2 // boolean extras
         0: .line 559
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 544
            aload 0 /* this */
            bipush 6
            anewarray java.lang.String
            dup
            iconst_0
         2: .line 545
            ldc ".backup"
            aastore
            dup
            iconst_1
            ldc ".properties"
            aastore
            dup
            iconst_2
            ldc ".script"
            aastore
            dup
            iconst_3
            ldc ".data"
            aastore
            dup
            iconst_4
            ldc ".log"
            aastore
            dup
            iconst_5
            ldc ".lobs"
            aastore
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
         3: .line 547
            aload 0 /* this */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
         4: .line 548
            ldc ".lck"
            aastore
            dup
            iconst_1
            ldc ".sql.log"
            aastore
            dup
            iconst_2
            ldc ".app.log"
            aastore
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraSuffixes:[Ljava/lang/String;
         5: .line 561
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* dbNamePath */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
         6: .line 564
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
            invokevirtual java.io.File.getCanonicalFile:()Ljava/io/File;
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
         7: .line 565
            goto 9
      StackMap locals: org.hsqldb.lib.FileUtil$DatabaseFilenameFilter java.lang.String int
      StackMap stack: java.lang.Exception
         8: pop
         9: .line 567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.dbName:Ljava/lang/String;
        10: .line 568
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.parent:Ljava/io/File;
        11: .line 569
            aload 0 /* this */
            iload 2 /* extras */
            putfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraFiles:Z
        12: .line 570
            return
        end local 2 // boolean extras
        end local 1 // java.lang.String dbNamePath
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            0   13     1  dbNamePath  Ljava/lang/String;
            0   13     2      extras  Z
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      dbNamePath  
      extras      

  public java.io.File[] getCompleteMainFileSetList();
    descriptor: ()[Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
         0: .line 574
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            arraylength
            anewarray java.io.File
            astore 1 /* fileList */
        start local 1 // java.io.File[] fileList
         1: .line 576
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 577
      StackMap locals: java.io.File[] int
      StackMap stack:
            aload 1 /* fileList */
            iload 2 /* i */
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            aastore
         4: .line 576
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            arraylength
            if_icmplt 3
        end local 2 // int i
         6: .line 580
            aload 1 /* fileList */
            areturn
        end local 1 // java.io.File[] fileList
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            1    7     1  fileList  [Ljava/io/File;
            2    6     2         i  I

  public java.io.File[] getExistingMainFileSetList();
    descriptor: ()[Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
         0: .line 585
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getCompleteMainFileSetList:()[Ljava/io/File;
            astore 1 /* fileList */
        start local 1 // java.io.File[] fileList
         1: .line 586
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            astore 2 /* list */
        start local 2 // org.hsqldb.lib.HsqlArrayList list
         2: .line 588
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 7
         4: .line 589
      StackMap locals: java.io.File[] org.hsqldb.lib.HsqlArrayList int
      StackMap stack:
            aload 1 /* fileList */
            iload 3 /* i */
            aaload
            invokevirtual java.io.File.exists:()Z
            ifeq 6
         5: .line 590
            aload 2 /* list */
            aload 1 /* fileList */
            iload 3 /* i */
            aaload
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
         6: .line 588
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 1 /* fileList */
            arraylength
            if_icmplt 4
        end local 3 // int i
         8: .line 594
            aload 2 /* list */
            invokevirtual org.hsqldb.lib.HsqlArrayList.size:()I
            anewarray java.io.File
            astore 1 /* fileList */
         9: .line 596
            aload 2 /* list */
            aload 1 /* fileList */
            invokevirtual org.hsqldb.lib.HsqlArrayList.toArray:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 598
            aload 1 /* fileList */
            areturn
        end local 2 // org.hsqldb.lib.HsqlArrayList list
        end local 1 // java.io.File[] fileList
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            1   11     1  fileList  [Ljava/io/File;
            2   11     2      list  Lorg/hsqldb/lib/HsqlArrayList;
            3    8     3         i  I

  public java.io.File[] getExistingFileListInDirectory();
    descriptor: ()[Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
         0: .line 603
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.parent:Ljava/io/File;
            aload 0 /* this */
            invokevirtual java.io.File.listFiles:(Ljava/io/FilenameFilter;)[Ljava/io/File;
            astore 1 /* list */
        start local 1 // java.io.File[] list
         1: .line 605
            aload 1 /* list */
            ifnonnull 2
            iconst_0
            anewarray java.io.File
            goto 3
         2: .line 606
      StackMap locals: java.io.File[]
      StackMap stack:
            aload 1 /* list */
         3: .line 605
      StackMap locals:
      StackMap stack: java.io.File[]
            areturn
        end local 1 // java.io.File[] list
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            1    4     1  list  [Ljava/io/File;

  public boolean accept(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
        start local 1 // java.io.File dir
        start local 2 // java.lang.String name
         0: .line 614
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.parent:Ljava/io/File;
            aload 1 /* dir */
            invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
            ifeq 30
            aload 2 /* name */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.dbName:Ljava/lang/String;
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            ifne 30
         1: .line 615
            aload 2 /* name */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.dbName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 3 /* suffix */
        start local 3 // java.lang.String suffix
         2: .line 617
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraFiles:Z
            ifeq 9
         3: .line 618
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 8
         5: .line 619
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 3 /* suffix */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraSuffixes:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 620
            iconst_1
            ireturn
         7: .line 618
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraSuffixes:[Ljava/lang/String;
            arraylength
            if_icmplt 5
        end local 4 // int i
         9: .line 625
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        10: goto 29
        11: .line 626
      StackMap locals: int
      StackMap stack:
            aload 3 /* suffix */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 627
            iconst_1
            ireturn
        13: .line 630
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.extraFiles:Z
            ifne 15
        14: .line 631
            goto 28
        15: .line 634
      StackMap locals:
      StackMap stack:
            aload 3 /* suffix */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 28
        16: .line 635
            aload 2 /* name */
            ldc ".new"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 19
        17: .line 636
            aload 3 /* suffix */
            invokevirtual java.lang.String.length:()I
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.String.length:()I
            iconst_4
            iadd
            if_icmpne 28
        18: .line 637
            iconst_1
            ireturn
        19: .line 639
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            ldc ".old"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 28
        20: .line 640
            aload 3 /* suffix */
            invokevirtual java.lang.String.length:()I
        21: .line 641
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.String.length:()I
        22: .line 642
            getstatic org.hsqldb.lib.FileUtil.discardSuffixLength:I
        23: .line 641
            iadd
        24: .line 642
            iconst_4
        25: .line 641
            iadd
        26: .line 640
            if_icmpne 28
        27: .line 643
            iconst_1
            ireturn
        28: .line 625
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 4 /* i */
            aload 0 /* this */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.suffixes:[Ljava/lang/String;
            arraylength
            if_icmplt 11
        end local 4 // int i
        end local 3 // java.lang.String suffix
        30: .line 650
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.String name
        end local 1 // java.io.File dir
        end local 0 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   31     0    this  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            0   31     1     dir  Ljava/io/File;
            0   31     2    name  Ljava/lang/String;
            2   30     3  suffix  Ljava/lang/String;
            4    9     4       i  I
           10   30     4       i  I
    MethodParameters:
      Name  Flags
      dir   
      name  
}
SourceFile: "FileUtil.java"
NestHost: org.hsqldb.lib.FileUtil
InnerClasses:
  DatabaseFilenameFilter = org.hsqldb.lib.FileUtil$DatabaseFilenameFilter of org.hsqldb.lib.FileUtil