public class org.hsqldb.persist.LockFile
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.persist.LockFile
  super_class: java.lang.Object
{
  public static final long HEARTBEAT_INTERVAL;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10000

  public static final long HEARTBEAT_INTERVAL_PADDED;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10100

  protected static final byte[] MAGIC;
    descriptor: [B
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  public static final int USED_REGION;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final int POLL_RETRIES_DEFAULT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final java.lang.String POLL_RETRIES_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hsqldb.lockfile.poll.retries"

  public static final java.lang.String POLL_INTERVAL_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hsqldb.lockfile.poll.interval"

  public static final boolean USE_NIO_FILELOCK_DEFAULT;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final java.lang.String USE_NIO_FILELOCK_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hsqldb.lockfile.nio.filelock"

  public static final boolean NIO_FILELOCK_AVAILABLE;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.lang.Class<?> NIO_LOCKFILE_CLASS;
    descriptor: Ljava/lang/Class;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  protected static final org.hsqldb.lib.HsqlTimer timer;
    descriptor: Lorg/hsqldb/lib/HsqlTimer;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  protected java.io.File file;
    descriptor: Ljava/io/File;
    flags: (0x0004) ACC_PROTECTED

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

  protected volatile java.io.RandomAccessFile raf;
    descriptor: Ljava/io/RandomAccessFile;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile boolean locked;
    descriptor: Z
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  private volatile java.lang.Object timerTask;
    descriptor: Ljava/lang/Object;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=0
         0: .line 395
            bipush 8
            newarray 8
            dup
            iconst_0
         1: .line 396
            bipush 72
            bastore
            dup
            iconst_1
            bipush 83
            bastore
            dup
            iconst_2
            bipush 81
            bastore
            dup
            iconst_3
            bipush 76
            bastore
            dup
            iconst_4
            bipush 76
            bastore
            dup
            iconst_5
            bipush 79
            bastore
            dup
            bipush 6
            bipush 67
            bastore
            dup
            bipush 7
            bipush 75
            bastore
         2: .line 395
            putstatic org.hsqldb.persist.LockFile.MAGIC:[B
         3: .line 464
            invokestatic org.hsqldb.DatabaseManager.getTimer:()Lorg/hsqldb/lib/HsqlTimer;
            putstatic org.hsqldb.persist.LockFile.timer:Lorg/hsqldb/lib/HsqlTimer;
         4: .line 472
            ldc Lorg/hsqldb/persist/LockFile;
            dup
            astore 0
            monitorenter
         5: .line 473
            iconst_0
            istore 1 /* use */
        start local 1 // boolean use
         6: .line 476
            ldc "true"
         7: .line 477
            ldc "hsqldb.lockfile.nio.filelock"
            iload 1 /* use */
            ifeq 8
            ldc "true"
            goto 9
         8: .line 478
      StackMap locals: java.lang.Class int
      StackMap stack: java.lang.String java.lang.String
            ldc "false"
         9: .line 477
      StackMap locals: java.lang.Class int
      StackMap stack: java.lang.String java.lang.String java.lang.String
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
        10: .line 476
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            istore 1 /* use */
        11: .line 479
            goto 13
      StackMap locals:
      StackMap stack: java.lang.Exception
        12: pop
        13: .line 481
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* avail */
        start local 2 // boolean avail
        14: .line 482
            aconst_null
            astore 3 /* clazz */
        start local 3 // java.lang.Class clazz
        15: .line 484
            iload 1 /* use */
            ifeq 21
        16: .line 486
            ldc "java.nio.channels.FileLock"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            pop
        17: .line 488
            ldc "org.hsqldb.persist.NIOLockFile"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* clazz */
        18: .line 489
            iconst_1
            istore 2 /* avail */
        19: .line 490
            goto 21
      StackMap locals: java.lang.Class int int java.lang.Class
      StackMap stack: java.lang.Exception
        20: pop
        21: .line 493
      StackMap locals:
      StackMap stack:
            iload 2 /* avail */
            putstatic org.hsqldb.persist.LockFile.NIO_FILELOCK_AVAILABLE:Z
        22: .line 494
            aload 3 /* clazz */
            putstatic org.hsqldb.persist.LockFile.NIO_LOCKFILE_CLASS:Ljava/lang/Class;
        end local 3 // java.lang.Class clazz
        end local 2 // boolean avail
        end local 1 // boolean use
        23: .line 472
            aload 0
            monitorexit
        24: goto 27
      StackMap locals: java.lang.Class
      StackMap stack: java.lang.Throwable
        25: aload 0
            monitorexit
        26: athrow
        27: .line 496
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            6   23     1    use  Z
           14   23     2  avail  Z
           15   23     3  clazz  Ljava/lang/Class;
      Exception table:
        from    to  target  type
           6    11      12  Class java.lang.Exception
          16    19      20  Class java.lang.Exception
           5    24      25  any
          25    26      25  any

  private static org.hsqldb.persist.LockFile newNIOLockFile();
    descriptor: ()Lorg/hsqldb/persist/LockFile;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 544
            getstatic org.hsqldb.persist.LockFile.NIO_FILELOCK_AVAILABLE:Z
            ifeq 4
            getstatic org.hsqldb.persist.LockFile.NIO_LOCKFILE_CLASS:Ljava/lang/Class;
            ifnull 4
         1: .line 546
            getstatic org.hsqldb.persist.LockFile.NIO_LOCKFILE_CLASS:Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.persist.LockFile
         2: areturn
         3: .line 547
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         4: .line 553
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 559
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  public static org.hsqldb.persist.LockFile newLockFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hsqldb/persist/LockFile;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String path
         0: .line 599
            invokestatic org.hsqldb.persist.LockFile.newNIOLockFile:()Lorg/hsqldb/persist/LockFile;
            astore 1 /* lockFile */
        start local 1 // org.hsqldb.persist.LockFile lockFile
         1: .line 601
            aload 1 /* lockFile */
            ifnonnull 3
         2: .line 602
            new org.hsqldb.persist.LockFile
            dup
            invokespecial org.hsqldb.persist.LockFile.<init>:()V
            astore 1 /* lockFile */
         3: .line 605
      StackMap locals: org.hsqldb.persist.LockFile
      StackMap stack:
            aload 1 /* lockFile */
            aload 0 /* path */
            invokevirtual org.hsqldb.persist.LockFile.setPath:(Ljava/lang/String;)V
         4: .line 607
            aload 1 /* lockFile */
            areturn
        end local 1 // org.hsqldb.persist.LockFile lockFile
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      path  Ljava/lang/String;
            1    5     1  lockFile  Lorg/hsqldb/persist/LockFile;
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileCanonicalizationException, org.hsqldb.persist.LockFile$FileSecurityException
    MethodParameters:
      Name  Flags
      path  final

  public static org.hsqldb.persist.LockFile newLockFileLock(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hsqldb/persist/LockFile;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.String path
         0: .line 628
            aconst_null
            astore 1 /* lockFile */
        start local 1 // org.hsqldb.persist.LockFile lockFile
         1: .line 631
            new java.lang.StringBuilder
            dup
            aload 0 /* path */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".lck"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.hsqldb.persist.LockFile.newLockFile:(Ljava/lang/String;)Lorg/hsqldb/persist/LockFile;
            astore 1 /* lockFile */
         2: .line 632
            goto 7
      StackMap locals: java.lang.String org.hsqldb.persist.LockFile
      StackMap stack: org.hsqldb.persist.LockFile$BaseException
         3: astore 2 /* e */
        start local 2 // org.hsqldb.persist.LockFile$BaseException e
         4: .line 633
            sipush 451
         5: .line 634
            aload 2 /* e */
            invokevirtual org.hsqldb.persist.LockFile$BaseException.getMessage:()Ljava/lang/String;
         6: .line 633
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // org.hsqldb.persist.LockFile$BaseException e
         7: .line 637
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* locked */
        start local 2 // boolean locked
         8: .line 640
            aload 1 /* lockFile */
            invokevirtual org.hsqldb.persist.LockFile.tryLock:()Z
            istore 2 /* locked */
         9: .line 641
            goto 14
      StackMap locals: java.lang.String org.hsqldb.persist.LockFile int
      StackMap stack: org.hsqldb.persist.LockFile$BaseException
        10: astore 3 /* e */
        start local 3 // org.hsqldb.persist.LockFile$BaseException e
        11: .line 642
            sipush 451
        12: .line 643
            aload 3 /* e */
            invokevirtual org.hsqldb.persist.LockFile$BaseException.getMessage:()Ljava/lang/String;
        13: .line 642
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.persist.LockFile$BaseException e
        14: .line 650
      StackMap locals:
      StackMap stack:
            iload 2 /* locked */
            ifne 18
        15: .line 651
            sipush 451
        16: .line 652
            aload 1 /* lockFile */
            invokevirtual org.hsqldb.persist.LockFile.toString:()Ljava/lang/String;
        17: .line 651
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        18: .line 655
      StackMap locals:
      StackMap stack:
            aload 1 /* lockFile */
            areturn
        end local 2 // boolean locked
        end local 1 // org.hsqldb.persist.LockFile lockFile
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      path  Ljava/lang/String;
            1   19     1  lockFile  Lorg/hsqldb/persist/LockFile;
            4    7     2         e  Lorg/hsqldb/persist/LockFile$BaseException;
            8   19     2    locked  Z
           11   14     3         e  Lorg/hsqldb/persist/LockFile$BaseException;
      Exception table:
        from    to  target  type
           1     2       3  Class org.hsqldb.persist.LockFile$BaseException
           8     9      10  Class org.hsqldb.persist.LockFile$BaseException
    Exceptions:
      throws org.hsqldb.HsqlException
    MethodParameters:
      Name  Flags
      path  final

  private final void checkHeartbeat(boolean);
    descriptor: (Z)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=8, locals=9, args_size=2
        start local 0 // org.hsqldb.persist.LockFile this
        start local 1 // boolean withCreateNewFile
         0: .line 792
            lconst_0
            lstore 6 /* length */
        start local 6 // long length
         1: .line 795
            iload 1 /* withCreateNewFile */
            ifeq 5
         2: .line 797
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.createNewFile:()Z
            ifeq 5
         3: .line 798
            return
         4: .line 800
      StackMap locals: org.hsqldb.persist.LockFile int top top top top long
      StackMap stack: java.io.IOException
            pop
         5: .line 803
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifne 7
         6: .line 804
            return
         7: .line 807
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.length:()J
            lstore 6 /* length */
         8: .line 808
            goto 11
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         9: astore 8 /* se */
        start local 8 // java.lang.SecurityException se
        10: .line 809
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "checkHeartbeat"
            aload 8 /* se */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 8 // java.lang.SecurityException se
        11: .line 812
      StackMap locals:
      StackMap stack:
            lload 6 /* length */
            ldc 16
            lcmp
            ifeq 16
        12: .line 813
            lload 6 /* length */
            lconst_0
            lcmp
            ifne 15
        13: .line 814
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.delete:()Z
            pop
        14: .line 816
            return
        15: .line 819
      StackMap locals:
      StackMap stack:
            new org.hsqldb.persist.LockFile$WrongLengthException
            dup
            aload 0 /* this */
            ldc "checkHeartbeat"
            lload 6 /* length */
            invokespecial org.hsqldb.persist.LockFile$WrongLengthException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;J)V
            athrow
        16: .line 851
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 2 /* now */
        start local 2 // long now
        17: .line 852
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.readHeartbeat:()J
            lstore 4 /* lastHeartbeat */
        start local 4 // long lastHeartbeat
        18: .line 862
            lload 2 /* now */
            lload 4 /* lastHeartbeat */
            lsub
            invokestatic java.lang.Math.abs:(J)J
            ldc 10100
            lcmp
            ifgt 22
        19: .line 863
            new org.hsqldb.persist.LockFile$LockHeldExternallyException
            dup
            aload 0 /* this */
            ldc "checkHeartbeat"
            lload 2 /* now */
        20: .line 864
            lload 4 /* lastHeartbeat */
        21: .line 863
            invokespecial org.hsqldb.persist.LockFile$LockHeldExternallyException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;JJ)V
            athrow
        22: .line 866
      StackMap locals: org.hsqldb.persist.LockFile int long long long
      StackMap stack:
            return
        end local 6 // long length
        end local 4 // long lastHeartbeat
        end local 2 // long now
        end local 1 // boolean withCreateNewFile
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0               this  Lorg/hsqldb/persist/LockFile;
            0   23     1  withCreateNewFile  Z
           17   23     2                now  J
           18   23     4      lastHeartbeat  J
            1   23     6             length  J
           10   11     8                 se  Ljava/lang/SecurityException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.IOException
           1     3       9  Class java.lang.SecurityException
           4     6       9  Class java.lang.SecurityException
           7     8       9  Class java.lang.SecurityException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$LockHeldExternallyException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException, org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException, org.hsqldb.persist.LockFile$WrongLengthException, org.hsqldb.persist.LockFile$WrongMagicException
    MethodParameters:
                   Name  Flags
      withCreateNewFile  

  private final void closeRAF();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 878
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            ifnull 9
         1: .line 880
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            invokevirtual java.io.RandomAccessFile.close:()V
         2: .line 881
            goto 8
      StackMap locals:
      StackMap stack: java.io.IOException
         3: astore 1 /* ex */
        start local 1 // java.io.IOException ex
         4: .line 882
            new org.hsqldb.persist.LockFile$UnexpectedFileIOException
            dup
            aload 0 /* this */
            ldc "closeRAF"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileIOException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 1 // java.io.IOException ex
         5: .line 883
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         6: .line 884
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
         7: .line 885
            aload 2
            athrow
         8: .line 884
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
         9: .line 887
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/persist/LockFile;
            4    5     1    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.io.IOException
           1     5       5  any
    Exceptions:
      throws org.hsqldb.persist.LockFile$UnexpectedFileIOException

  protected boolean doOptionalLockActions();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 951
            iconst_0
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  protected boolean doOptionalReleaseActions();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 977
            iconst_0
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  private final void setPath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.hsqldb.persist.LockFile this
        start local 1 // java.lang.String path
         0: .line 1022
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 1 /* path */
            invokevirtual org.hsqldb.lib.FileUtil.canonicalOrAbsolutePath:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* path */
         1: .line 1023
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            putfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
         2: .line 1026
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual org.hsqldb.lib.FileUtil.makeParentDirectories:(Ljava/io/File;)V
         3: .line 1027
            goto 6
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         4: astore 2 /* ex */
        start local 2 // java.lang.SecurityException ex
         5: .line 1028
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "setPath"
            aload 2 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 2 // java.lang.SecurityException ex
         6: .line 1032
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 1 /* path */
            invokevirtual org.hsqldb.lib.FileUtil.canonicalFile:(Ljava/lang/String;)Ljava/io/File;
            putfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
         7: .line 1033
            goto 12
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         8: astore 2 /* ex */
        start local 2 // java.lang.SecurityException ex
         9: .line 1034
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "setPath"
            aload 2 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 2 // java.lang.SecurityException ex
        10: .line 1035
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* ex */
        start local 2 // java.io.IOException ex
        11: .line 1036
            new org.hsqldb.persist.LockFile$FileCanonicalizationException
            dup
            aload 0 /* this */
            ldc "setPath"
            aload 2 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileCanonicalizationException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 2 // java.io.IOException ex
        12: .line 1039
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            putfield org.hsqldb.persist.LockFile.cpath:Ljava/lang/String;
        13: .line 1040
            return
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/hsqldb/persist/LockFile;
            0   14     1  path  Ljava/lang/String;
            5    6     2    ex  Ljava/lang/SecurityException;
            9   10     2    ex  Ljava/lang/SecurityException;
           11   12     2    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.SecurityException
           6     7       8  Class java.lang.SecurityException
           6     7      10  Class java.io.IOException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileCanonicalizationException, org.hsqldb.persist.LockFile$FileSecurityException
    MethodParameters:
      Name  Flags
      path  

  private final void openRAF();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1060
            aload 0 /* this */
            new java.io.RandomAccessFile
            dup
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            ldc "rw"
            invokespecial java.io.RandomAccessFile.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
         1: .line 1061
            goto 6
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         2: astore 1 /* ex */
        start local 1 // java.lang.SecurityException ex
         3: .line 1062
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "openRAF"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 1 // java.lang.SecurityException ex
         4: .line 1063
      StackMap locals:
      StackMap stack: java.io.FileNotFoundException
            astore 1 /* ex */
        start local 1 // java.io.FileNotFoundException ex
         5: .line 1064
            new org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException
            dup
            aload 0 /* this */
            ldc "openRAF"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/FileNotFoundException;)V
            athrow
        end local 1 // java.io.FileNotFoundException ex
         6: .line 1066
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/hsqldb/persist/LockFile;
            3    4     1    ex  Ljava/lang/SecurityException;
            5    6     1    ex  Ljava/io/FileNotFoundException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.SecurityException
           0     1       4  Class java.io.FileNotFoundException
    Exceptions:
      throws org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException, org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedFileIOException

  private final void checkMagic(java.io.DataInputStream);
    descriptor: (Ljava/io/DataInputStream;)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.hsqldb.persist.LockFile this
        start local 1 // java.io.DataInputStream dis
         0: .line 1090
            iconst_1
            istore 2 /* success */
        start local 2 // boolean success
         1: .line 1091
            getstatic org.hsqldb.persist.LockFile.MAGIC:[B
            arraylength
            newarray 8
            astore 3 /* magic */
        start local 3 // byte[] magic
         2: .line 1094
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 1095
      StackMap locals: int byte[] int
      StackMap stack:
            aload 3 /* magic */
            iload 4 /* i */
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readByte:()B
            bastore
         5: .line 1097
            getstatic org.hsqldb.persist.LockFile.MAGIC:[B
            iload 4 /* i */
            baload
            aload 3 /* magic */
            iload 4 /* i */
            baload
            if_icmpeq 7
         6: .line 1098
            iconst_0
            istore 2 /* success */
         7: .line 1094
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            getstatic org.hsqldb.persist.LockFile.MAGIC:[B
            arraylength
            if_icmplt 4
        end local 4 // int i
         9: .line 1101
            goto 16
      StackMap locals: org.hsqldb.persist.LockFile java.io.DataInputStream int byte[]
      StackMap stack: java.lang.SecurityException
        10: astore 4 /* ex */
        start local 4 // java.lang.SecurityException ex
        11: .line 1102
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "checkMagic"
            aload 4 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 4 // java.lang.SecurityException ex
        12: .line 1103
      StackMap locals:
      StackMap stack: java.io.EOFException
            astore 4 /* ex */
        start local 4 // java.io.EOFException ex
        13: .line 1104
            new org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            dup
            aload 0 /* this */
            ldc "checkMagic"
            aload 4 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedEndOfFileException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/EOFException;)V
            athrow
        end local 4 // java.io.EOFException ex
        14: .line 1105
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 4 /* ex */
        start local 4 // java.io.IOException ex
        15: .line 1106
            new org.hsqldb.persist.LockFile$UnexpectedFileIOException
            dup
            aload 0 /* this */
            ldc "checkMagic"
            aload 4 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileIOException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 4 // java.io.IOException ex
        16: .line 1109
      StackMap locals:
      StackMap stack:
            iload 2 /* success */
            ifne 18
        17: .line 1110
            new org.hsqldb.persist.LockFile$WrongMagicException
            dup
            aload 0 /* this */
            ldc "checkMagic"
            aload 3 /* magic */
            invokespecial org.hsqldb.persist.LockFile$WrongMagicException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;[B)V
            athrow
        18: .line 1112
      StackMap locals:
      StackMap stack:
            return
        end local 3 // byte[] magic
        end local 2 // boolean success
        end local 1 // java.io.DataInputStream dis
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/hsqldb/persist/LockFile;
            0   19     1      dis  Ljava/io/DataInputStream;
            1   19     2  success  Z
            2   19     3    magic  [B
            3    9     4        i  I
           11   12     4       ex  Ljava/lang/SecurityException;
           13   14     4       ex  Ljava/io/EOFException;
           15   16     4       ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     9      10  Class java.lang.SecurityException
           2     9      12  Class java.io.EOFException
           2     9      14  Class java.io.IOException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException, org.hsqldb.persist.LockFile$WrongMagicException
    MethodParameters:
      Name  Flags
      dis   final

  private final long readHeartbeat();
    descriptor: ()J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1145
            aconst_null
            astore 1 /* fis */
        start local 1 // java.io.FileInputStream fis
         1: .line 1146
            aconst_null
            astore 2 /* dis */
        start local 2 // java.io.DataInputStream dis
         2: .line 1149
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifne 8
         3: .line 1169
            aload 1 /* fis */
            ifnull 7
         4: .line 1171
            aload 1 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         5: .line 1172
            goto 7
      StackMap locals: org.hsqldb.persist.LockFile java.io.FileInputStream java.io.DataInputStream
      StackMap stack: java.io.IOException
         6: pop
         7: .line 1150
      StackMap locals:
      StackMap stack:
            ldc -9223372036854775808
            lreturn
         8: .line 1153
      StackMap locals:
      StackMap stack:
            new java.io.FileInputStream
            dup
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 1 /* fis */
         9: .line 1154
            new java.io.DataInputStream
            dup
            aload 1 /* fis */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 2 /* dis */
        10: .line 1156
            aload 0 /* this */
            aload 2 /* dis */
            invokevirtual org.hsqldb.persist.LockFile.checkMagic:(Ljava/io/DataInputStream;)V
        11: .line 1158
            aload 2 /* dis */
            invokevirtual java.io.DataInputStream.readLong:()J
            lstore 5
        12: .line 1169
            aload 1 /* fis */
            ifnull 16
        13: .line 1171
            aload 1 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        14: .line 1172
            goto 16
      StackMap locals: org.hsqldb.persist.LockFile java.io.FileInputStream java.io.DataInputStream top top long
      StackMap stack: java.io.IOException
        15: pop
        16: .line 1158
      StackMap locals:
      StackMap stack:
            lload 5
            lreturn
        17: .line 1159
      StackMap locals: org.hsqldb.persist.LockFile java.io.FileInputStream java.io.DataInputStream
      StackMap stack: java.lang.SecurityException
            astore 3 /* ex */
        start local 3 // java.lang.SecurityException ex
        18: .line 1160
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "readHeartbeat"
            aload 3 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 3 // java.lang.SecurityException ex
        19: .line 1161
      StackMap locals:
      StackMap stack: java.io.FileNotFoundException
            astore 3 /* ex */
        start local 3 // java.io.FileNotFoundException ex
        20: .line 1162
            new org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException
            dup
            aload 0 /* this */
            ldc "readHeartbeat"
        21: .line 1163
            aload 3 /* ex */
        22: .line 1162
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/FileNotFoundException;)V
            athrow
        end local 3 // java.io.FileNotFoundException ex
        23: .line 1164
      StackMap locals:
      StackMap stack: java.io.EOFException
            astore 3 /* ex */
        start local 3 // java.io.EOFException ex
        24: .line 1165
            new org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            dup
            aload 0 /* this */
            ldc "readHeartbeat"
            aload 3 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedEndOfFileException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/EOFException;)V
            athrow
        end local 3 // java.io.EOFException ex
        25: .line 1166
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* ex */
        start local 3 // java.io.IOException ex
        26: .line 1167
            new org.hsqldb.persist.LockFile$UnexpectedFileIOException
            dup
            aload 0 /* this */
            ldc "readHeartbeat"
            aload 3 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileIOException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 3 // java.io.IOException ex
        27: .line 1168
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        28: .line 1169
            aload 1 /* fis */
            ifnull 32
        29: .line 1171
            aload 1 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        30: .line 1172
            goto 32
      StackMap locals: org.hsqldb.persist.LockFile java.io.FileInputStream java.io.DataInputStream top java.lang.Throwable
      StackMap stack: java.io.IOException
        31: pop
        32: .line 1177
      StackMap locals:
      StackMap stack:
            aload 4
            athrow
        end local 2 // java.io.DataInputStream dis
        end local 1 // java.io.FileInputStream fis
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   33     0  this  Lorg/hsqldb/persist/LockFile;
            1   33     1   fis  Ljava/io/FileInputStream;
            2   33     2   dis  Ljava/io/DataInputStream;
           18   19     3    ex  Ljava/lang/SecurityException;
           20   23     3    ex  Ljava/io/FileNotFoundException;
           24   25     3    ex  Ljava/io/EOFException;
           26   27     3    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.io.IOException
          13    14      15  Class java.io.IOException
           2     3      17  Class java.lang.SecurityException
           8    12      17  Class java.lang.SecurityException
           2     3      19  Class java.io.FileNotFoundException
           8    12      19  Class java.io.FileNotFoundException
           2     3      23  Class java.io.EOFException
           8    12      23  Class java.io.EOFException
           2     3      25  Class java.io.IOException
           8    12      25  Class java.io.IOException
           2     3      27  any
           8    12      27  any
          17    27      27  any
          29    30      31  Class java.io.IOException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException, org.hsqldb.persist.LockFile$WrongMagicException

  private final void startHeartbeat();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=8, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1185
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
            ifnull 1
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
            invokestatic org.hsqldb.lib.HsqlTimer.isCancelled:(Ljava/lang/Object;)Z
            ifeq 5
         1: .line 1186
      StackMap locals:
      StackMap stack:
            new org.hsqldb.persist.LockFile$HeartbeatRunner
            dup
            aload 0 /* this */
            invokespecial org.hsqldb.persist.LockFile$HeartbeatRunner.<init>:(Lorg/hsqldb/persist/LockFile;)V
            astore 1 /* runner */
        start local 1 // java.lang.Runnable runner
         2: .line 1188
            aload 0 /* this */
            getstatic org.hsqldb.persist.LockFile.timer:Lorg/hsqldb/lib/HsqlTimer;
            lconst_0
            ldc 10000
         3: .line 1189
            aload 1 /* runner */
            iconst_1
         4: .line 1188
            invokevirtual org.hsqldb.lib.HsqlTimer.schedulePeriodicallyAfter:(JJLjava/lang/Runnable;Z)Ljava/lang/Object;
            putfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
        end local 1 // java.lang.Runnable runner
         5: .line 1191
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/hsqldb/persist/LockFile;
            2    5     1  runner  Ljava/lang/Runnable;

  private final void stopHeartbeat();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1198
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
            ifnull 3
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
            invokestatic org.hsqldb.lib.HsqlTimer.isCancelled:(Ljava/lang/Object;)Z
            ifne 3
         1: .line 1199
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
            invokestatic org.hsqldb.lib.HsqlTimer.cancel:(Ljava/lang/Object;)V
         2: .line 1201
            aload 0 /* this */
            aconst_null
            putfield org.hsqldb.persist.LockFile.timerTask:Ljava/lang/Object;
         3: .line 1203
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/persist/LockFile;

  private final void writeMagic();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1233
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            lconst_0
            invokevirtual java.io.RandomAccessFile.seek:(J)V
         1: .line 1234
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            getstatic org.hsqldb.persist.LockFile.MAGIC:[B
            invokevirtual java.io.RandomAccessFile.write:([B)V
         2: .line 1235
            goto 9
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         3: astore 1 /* ex */
        start local 1 // java.lang.SecurityException ex
         4: .line 1236
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "writeMagic"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 1 // java.lang.SecurityException ex
         5: .line 1237
      StackMap locals:
      StackMap stack: java.io.EOFException
            astore 1 /* ex */
        start local 1 // java.io.EOFException ex
         6: .line 1238
            new org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            dup
            aload 0 /* this */
            ldc "writeMagic"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedEndOfFileException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/EOFException;)V
            athrow
        end local 1 // java.io.EOFException ex
         7: .line 1239
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* ex */
        start local 1 // java.io.IOException ex
         8: .line 1240
            new org.hsqldb.persist.LockFile$UnexpectedFileIOException
            dup
            aload 0 /* this */
            ldc "writeMagic"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileIOException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 1 // java.io.IOException ex
         9: .line 1242
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/persist/LockFile;
            4    5     1    ex  Ljava/lang/SecurityException;
            6    7     1    ex  Ljava/io/EOFException;
            8    9     1    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.SecurityException
           0     2       5  Class java.io.EOFException
           0     2       7  Class java.io.IOException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException

  private final void writeHeartbeat();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1271
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            getstatic org.hsqldb.persist.LockFile.MAGIC:[B
            arraylength
            i2l
            invokevirtual java.io.RandomAccessFile.seek:(J)V
         1: .line 1272
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            invokestatic java.lang.System.currentTimeMillis:()J
            invokevirtual java.io.RandomAccessFile.writeLong:(J)V
         2: .line 1273
            goto 9
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         3: astore 1 /* ex */
        start local 1 // java.lang.SecurityException ex
         4: .line 1274
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "writeHeartbeat"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            athrow
        end local 1 // java.lang.SecurityException ex
         5: .line 1275
      StackMap locals:
      StackMap stack: java.io.EOFException
            astore 1 /* ex */
        start local 1 // java.io.EOFException ex
         6: .line 1276
            new org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            dup
            aload 0 /* this */
            ldc "writeHeartbeat"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedEndOfFileException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/EOFException;)V
            athrow
        end local 1 // java.io.EOFException ex
         7: .line 1277
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* ex */
        start local 1 // java.io.IOException ex
         8: .line 1278
            new org.hsqldb.persist.LockFile$UnexpectedFileIOException
            dup
            aload 0 /* this */
            ldc "writeHeartbeat"
            aload 1 /* ex */
            invokespecial org.hsqldb.persist.LockFile$UnexpectedFileIOException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/io/IOException;)V
            athrow
        end local 1 // java.io.IOException ex
         9: .line 1280
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/hsqldb/persist/LockFile;
            4    5     1    ex  Ljava/lang/SecurityException;
            6    7     1    ex  Ljava/io/EOFException;
            8    9     1    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.SecurityException
           0     2       5  Class java.io.EOFException
           0     2       7  Class java.io.IOException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException

  public final boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.persist.LockFile this
        start local 1 // java.lang.Object obj
         0: .line 1308
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 1309
            iconst_1
            ireturn
         2: .line 1310
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.hsqldb.persist.LockFile
            ifeq 8
         3: .line 1311
            aload 1 /* obj */
            checkcast org.hsqldb.persist.LockFile
            astore 2 /* other */
        start local 2 // org.hsqldb.persist.LockFile other
         4: .line 1313
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            ifnonnull 6
            aload 2 /* other */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            ifnonnull 5
            iconst_1
            goto 7
      StackMap locals: org.hsqldb.persist.LockFile
      StackMap stack:
         5: iconst_0
            goto 7
         6: .line 1314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            aload 2 /* other */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
         7: .line 1313
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 2 // org.hsqldb.persist.LockFile other
         8: .line 1317
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/hsqldb/persist/LockFile;
            0    9     1    obj  Ljava/lang/Object;
            4    8     2  other  Lorg/hsqldb/persist/LockFile;
    MethodParameters:
      Name  Flags
      obj   final

  public final java.lang.String getCanonicalPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1327
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.cpath:Ljava/lang/String;
            areturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  public final int hashCode();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1345
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            ifnonnull 1
            iconst_0
            goto 2
         1: .line 1346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.hashCode:()I
         2: .line 1345
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/persist/LockFile;

  public final boolean isLocked();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1377
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  public static boolean isLocked(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String path
         0: .line 1392
            iconst_1
            istore 1 /* locked */
        start local 1 // boolean locked
         1: .line 1395
            aload 0 /* path */
            invokestatic org.hsqldb.persist.LockFile.newLockFile:(Ljava/lang/String;)Lorg/hsqldb/persist/LockFile;
            astore 2 /* lockFile */
        start local 2 // org.hsqldb.persist.LockFile lockFile
         2: .line 1397
            aload 2 /* lockFile */
            iconst_0
            invokevirtual org.hsqldb.persist.LockFile.checkHeartbeat:(Z)V
         3: .line 1399
            iconst_0
            istore 1 /* locked */
        end local 2 // org.hsqldb.persist.LockFile lockFile
         4: .line 1400
            goto 6
      StackMap locals: java.lang.String int
      StackMap stack: java.lang.Exception
         5: pop
         6: .line 1402
      StackMap locals:
      StackMap stack:
            iload 1 /* locked */
            ireturn
        end local 1 // boolean locked
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      path  Ljava/lang/String;
            1    7     1    locked  Z
            2    4     2  lockFile  Lorg/hsqldb/persist/LockFile;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      path  final

  public boolean isValid();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1422
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.isLocked:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            ifnull 1
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.raf:Ljava/io/RandomAccessFile;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/persist/LockFile;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1450
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokespecial java.lang.Object.toString:()Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[file ="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 1451
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.cpath:Ljava/lang/String;
         2: .line 1450
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 1451
            ldc ", exists="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         4: .line 1452
            ldc ", locked="
         5: .line 1451
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 1452
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.isLocked:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc ", valid="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1453
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.isValid:()Z
         8: .line 1452
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         9: .line 1453
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.toStringImpl:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 1454
            ldc "]"
        11: .line 1453
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 1454
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 1450
            areturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/hsqldb/persist/LockFile;

  protected java.lang.String toStringImpl();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1468
            ldc ""
            areturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/persist/LockFile;

  public int getPollHeartbeatRetries();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1492
            bipush 10
            istore 1 /* retries */
        start local 1 // int retries
         1: .line 1496
            ldc "hsqldb.lockfile_poll_retries"
         2: .line 1497
            iload 1 /* retries */
         3: .line 1495
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
         4: .line 1497
            invokevirtual java.lang.Integer.intValue:()I
         5: .line 1495
            istore 1 /* retries */
         6: .line 1498
            goto 8
      StackMap locals: org.hsqldb.persist.LockFile int
      StackMap stack: java.lang.Exception
         7: pop
         8: .line 1500
      StackMap locals:
      StackMap stack:
            iload 1 /* retries */
            iconst_1
            if_icmpge 10
         9: .line 1501
            iconst_1
            istore 1 /* retries */
        10: .line 1504
      StackMap locals:
      StackMap stack:
            iload 1 /* retries */
            ireturn
        end local 1 // int retries
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/hsqldb/persist/LockFile;
            1   11     1  retries  I
      Exception table:
        from    to  target  type
           1     6       7  Class java.lang.Exception

  public long getPollHeartbeatInterval();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1530
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.getPollHeartbeatRetries:()I
            istore 1 /* retries */
        start local 1 // int retries
         1: .line 1531
            ldc 10
            ldc 10100
            iload 1 /* retries */
            i2l
            ldiv
            ladd
            lstore 2 /* interval */
        start local 2 // long interval
         2: .line 1534
            ldc "hsqldb.lockfile.poll.interval"
         3: .line 1535
            lload 2 /* interval */
         4: .line 1534
            invokestatic java.lang.Long.getLong:(Ljava/lang/String;J)Ljava/lang/Long;
         5: .line 1535
            invokevirtual java.lang.Long.longValue:()J
         6: .line 1534
            lstore 2 /* interval */
         7: .line 1536
            goto 9
      StackMap locals: org.hsqldb.persist.LockFile int long
      StackMap stack: java.lang.Exception
         8: pop
         9: .line 1538
      StackMap locals:
      StackMap stack:
            lload 2 /* interval */
            lconst_0
            lcmp
            ifgt 11
        10: .line 1539
            ldc 10
            ldc 10100
            iload 1 /* retries */
            i2l
            ldiv
            ladd
            lstore 2 /* interval */
        11: .line 1542
      StackMap locals:
      StackMap stack:
            lload 2 /* interval */
            lreturn
        end local 2 // long interval
        end local 1 // int retries
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lorg/hsqldb/persist/LockFile;
            1   12     1   retries  I
            2   12     2  interval  J
      Exception table:
        from    to  target  type
           2     7       8  Class java.lang.Exception

  private final void pollHeartbeat();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1584
            iconst_0
            istore 1 /* success */
        start local 1 // boolean success
         1: .line 1585
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.getPollHeartbeatRetries:()I
            istore 2 /* retries */
        start local 2 // int retries
         2: .line 1586
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.getPollHeartbeatInterval:()J
            lstore 3 /* interval */
        start local 3 // long interval
         3: .line 1587
            aconst_null
            astore 5 /* reason */
        start local 5 // org.hsqldb.persist.LockFile$BaseException reason
         4: .line 1589
            iload 2 /* retries */
            istore 6 /* i */
        start local 6 // int i
         5: goto 16
         6: .line 1591
      StackMap locals: org.hsqldb.persist.LockFile int int long org.hsqldb.persist.LockFile$BaseException int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.hsqldb.persist.LockFile.checkHeartbeat:(Z)V
         7: .line 1593
            iconst_1
            istore 1 /* success */
         8: .line 1595
            goto 17
         9: .line 1596
      StackMap locals:
      StackMap stack: org.hsqldb.persist.LockFile$BaseException
            astore 7 /* ex */
        start local 7 // org.hsqldb.persist.LockFile$BaseException ex
        10: .line 1597
            aload 7 /* ex */
            astore 5 /* reason */
        end local 7 // org.hsqldb.persist.LockFile$BaseException ex
        11: .line 1603
            lload 3 /* interval */
            invokestatic java.lang.Thread.sleep:(J)V
        12: .line 1604
            goto 15
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        13: pop
        14: .line 1605
            goto 17
        15: .line 1589
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ -1
      StackMap locals:
      StackMap stack:
        16: iload 6 /* i */
            ifgt 6
        end local 6 // int i
        17: .line 1614
      StackMap locals:
      StackMap stack:
            iload 1 /* success */
            ifne 32
        18: .line 1615
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$FileSecurityException
            ifeq 20
        19: .line 1616
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$FileSecurityException
            athrow
        20: .line 1617
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$LockHeldExternallyException
            ifeq 22
        21: .line 1618
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$LockHeldExternallyException
            athrow
        22: .line 1619
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException
            ifeq 24
        23: .line 1620
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException
            athrow
        24: .line 1621
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            ifeq 26
        25: .line 1622
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$UnexpectedEndOfFileException
            athrow
        26: .line 1623
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$UnexpectedFileIOException
            ifeq 28
        27: .line 1624
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$UnexpectedFileIOException
            athrow
        28: .line 1625
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$WrongLengthException
            ifeq 30
        29: .line 1626
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$WrongLengthException
            athrow
        30: .line 1627
      StackMap locals:
      StackMap stack:
            aload 5 /* reason */
            instanceof org.hsqldb.persist.LockFile$WrongMagicException
            ifeq 32
        31: .line 1628
            aload 5 /* reason */
            checkcast org.hsqldb.persist.LockFile$WrongMagicException
            athrow
        32: .line 1631
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.hsqldb.persist.LockFile$BaseException reason
        end local 3 // long interval
        end local 2 // int retries
        end local 1 // boolean success
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   33     0      this  Lorg/hsqldb/persist/LockFile;
            1   33     1   success  Z
            2   33     2   retries  I
            3   33     3  interval  J
            4   33     5    reason  Lorg/hsqldb/persist/LockFile$BaseException;
            5   17     6         i  I
           10   11     7        ex  Lorg/hsqldb/persist/LockFile$BaseException;
      Exception table:
        from    to  target  type
           6     8       9  Class org.hsqldb.persist.LockFile$BaseException
          11    12      13  Class java.lang.InterruptedException
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$LockHeldExternallyException, org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException, org.hsqldb.persist.LockFile$WrongLengthException, org.hsqldb.persist.LockFile$WrongMagicException

  public final boolean tryLock();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1672
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ifeq 2
         1: .line 1673
            iconst_1
            ireturn
         2: .line 1677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.pollHeartbeat:()V
         3: .line 1678
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.openRAF:()V
         4: .line 1693
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.doOptionalLockActions:()Z
            pop
         5: .line 1747
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.writeMagic:()V
         6: .line 1748
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.writeHeartbeat:()V
         7: .line 1749
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual org.hsqldb.lib.FileUtil.deleteOnExit:(Ljava/io/File;)V
         8: .line 1751
            aload 0 /* this */
            iconst_1
            putfield org.hsqldb.persist.LockFile.locked:Z
         9: .line 1753
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.startHeartbeat:()V
        10: .line 1754
            goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 1
        12: .line 1755
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ifne 17
        13: .line 1779
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.doOptionalReleaseActions:()Z
            pop
        14: .line 1782
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.closeRAF:()V
        15: .line 1783
            goto 17
      StackMap locals: org.hsqldb.persist.LockFile java.lang.Throwable
      StackMap stack: java.lang.Exception
        16: pop
        17: .line 1793
      StackMap locals:
      StackMap stack:
            aload 1
            athrow
        18: .line 1755
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ifne 23
        19: .line 1779
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.doOptionalReleaseActions:()Z
            pop
        20: .line 1782
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.closeRAF:()V
        21: .line 1783
            goto 23
      StackMap locals:
      StackMap stack: java.lang.Exception
        22: pop
        23: .line 1795
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ireturn
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Lorg/hsqldb/persist/LockFile;
      Exception table:
        from    to  target  type
           2    11      11  any
          14    15      16  Class java.lang.Exception
          20    21      22  Class java.lang.Exception
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$LockHeldExternallyException, org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException, org.hsqldb.persist.LockFile$UnexpectedEndOfFileException, org.hsqldb.persist.LockFile$UnexpectedFileIOException, org.hsqldb.persist.LockFile$WrongLengthException, org.hsqldb.persist.LockFile$WrongMagicException

  public final boolean tryRelease();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.hsqldb.persist.LockFile this
         0: .line 1814
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.locked:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* released */
        start local 1 // boolean released
         3: .line 1816
            iload 1 /* released */
            ifeq 5
         4: .line 1817
            iconst_1
            ireturn
         5: .line 1820
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.stopHeartbeat:()V
         6: .line 1821
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.doOptionalReleaseActions:()Z
            pop
         7: .line 1823
            aconst_null
            astore 2 /* closeRAFReason */
        start local 2 // org.hsqldb.persist.LockFile$UnexpectedFileIOException closeRAFReason
         8: .line 1824
            aconst_null
            astore 3 /* securityReason */
        start local 3 // org.hsqldb.persist.LockFile$FileSecurityException securityReason
         9: .line 1828
            aload 0 /* this */
            invokevirtual org.hsqldb.persist.LockFile.closeRAF:()V
        10: .line 1829
            goto 13
      StackMap locals: org.hsqldb.persist.LockFile int org.hsqldb.persist.LockFile$UnexpectedFileIOException org.hsqldb.persist.LockFile$FileSecurityException
      StackMap stack: org.hsqldb.persist.LockFile$UnexpectedFileIOException
        11: astore 4 /* ex */
        start local 4 // org.hsqldb.persist.LockFile$UnexpectedFileIOException ex
        12: .line 1830
            aload 4 /* ex */
            astore 2 /* closeRAFReason */
        end local 4 // org.hsqldb.persist.LockFile$UnexpectedFileIOException ex
        13: .line 1848
      StackMap locals:
      StackMap stack:
            ldc 100
            invokestatic java.lang.Thread.sleep:(J)V
        14: .line 1849
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        15: pop
        16: .line 1855
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.persist.LockFile.file:Ljava/io/File;
            invokevirtual java.io.File.delete:()Z
            istore 1 /* released */
        17: .line 1862
            goto 26
      StackMap locals:
      StackMap stack: java.lang.SecurityException
        18: astore 4 /* ex */
        start local 4 // java.lang.SecurityException ex
        19: .line 1863
            new org.hsqldb.persist.LockFile$FileSecurityException
            dup
            aload 0 /* this */
            ldc "tryRelease"
        20: .line 1864
            aload 4 /* ex */
        21: .line 1863
            invokespecial org.hsqldb.persist.LockFile$FileSecurityException.<init>:(Lorg/hsqldb/persist/LockFile;Ljava/lang/String;Ljava/lang/SecurityException;)V
            astore 3 /* securityReason */
        end local 4 // java.lang.SecurityException ex
        22: .line 1866
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 5
        24: .line 1875
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.persist.LockFile.locked:Z
        25: .line 1876
            aload 5
            athrow
        26: .line 1875
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.persist.LockFile.locked:Z
        27: .line 1878
            aload 2 /* closeRAFReason */
            ifnull 29
        28: .line 1879
            aload 2 /* closeRAFReason */
            athrow
        29: .line 1880
      StackMap locals:
      StackMap stack:
            aload 3 /* securityReason */
            ifnull 31
        30: .line 1881
            aload 3 /* securityReason */
            athrow
        31: .line 1884
      StackMap locals:
      StackMap stack:
            iload 1 /* released */
            ireturn
        end local 3 // org.hsqldb.persist.LockFile$FileSecurityException securityReason
        end local 2 // org.hsqldb.persist.LockFile$UnexpectedFileIOException closeRAFReason
        end local 1 // boolean released
        end local 0 // org.hsqldb.persist.LockFile this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   32     0            this  Lorg/hsqldb/persist/LockFile;
            3   32     1        released  Z
            8   32     2  closeRAFReason  Lorg/hsqldb/persist/LockFile$UnexpectedFileIOException;
            9   32     3  securityReason  Lorg/hsqldb/persist/LockFile$FileSecurityException;
           12   13     4              ex  Lorg/hsqldb/persist/LockFile$UnexpectedFileIOException;
           19   22     4              ex  Ljava/lang/SecurityException;
      Exception table:
        from    to  target  type
           9    10      11  Class org.hsqldb.persist.LockFile$UnexpectedFileIOException
          13    14      15  Class java.lang.Exception
          16    17      18  Class java.lang.SecurityException
           9    23      23  any
    Exceptions:
      throws org.hsqldb.persist.LockFile$FileSecurityException, org.hsqldb.persist.LockFile$UnexpectedFileIOException
}
SourceFile: "LockFile.java"
NestMembers:
  org.hsqldb.persist.LockFile$BaseException  org.hsqldb.persist.LockFile$FileCanonicalizationException  org.hsqldb.persist.LockFile$FileSecurityException  org.hsqldb.persist.LockFile$HeartbeatRunner  org.hsqldb.persist.LockFile$LockHeldExternallyException  org.hsqldb.persist.LockFile$UnexpectedEndOfFileException  org.hsqldb.persist.LockFile$UnexpectedFileIOException  org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException  org.hsqldb.persist.LockFile$WrongLengthException  org.hsqldb.persist.LockFile$WrongMagicException
InnerClasses:
  public abstract BaseException = org.hsqldb.persist.LockFile$BaseException of org.hsqldb.persist.LockFile
  public final FileCanonicalizationException = org.hsqldb.persist.LockFile$FileCanonicalizationException of org.hsqldb.persist.LockFile
  public final FileSecurityException = org.hsqldb.persist.LockFile$FileSecurityException of org.hsqldb.persist.LockFile
  private final HeartbeatRunner = org.hsqldb.persist.LockFile$HeartbeatRunner of org.hsqldb.persist.LockFile
  public final LockHeldExternallyException = org.hsqldb.persist.LockFile$LockHeldExternallyException of org.hsqldb.persist.LockFile
  public final UnexpectedEndOfFileException = org.hsqldb.persist.LockFile$UnexpectedEndOfFileException of org.hsqldb.persist.LockFile
  public final UnexpectedFileIOException = org.hsqldb.persist.LockFile$UnexpectedFileIOException of org.hsqldb.persist.LockFile
  public final UnexpectedFileNotFoundException = org.hsqldb.persist.LockFile$UnexpectedFileNotFoundException of org.hsqldb.persist.LockFile
  public final WrongLengthException = org.hsqldb.persist.LockFile$WrongLengthException of org.hsqldb.persist.LockFile
  public final WrongMagicException = org.hsqldb.persist.LockFile$WrongMagicException of org.hsqldb.persist.LockFile