class org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable implements java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable
  super_class: java.lang.Object
{
  private final java.net.ServerSocket serverSocket;
    descriptor: Ljava/net/ServerSocket;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final org.eclipse.jetty.server.ShutdownMonitor this$0;
    descriptor: Lorg/eclipse/jetty/server/ShutdownMonitor;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private void <init>(org.eclipse.jetty.server.ShutdownMonitor, java.net.ServerSocket);
    descriptor: (Lorg/eclipse/jetty/server/ShutdownMonitor;Ljava/net/ServerSocket;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
        start local 2 // java.net.ServerSocket serverSocket
         0: .line 324
            aload 0 /* this */
            aload 1
            putfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
         1: .line 323
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 325
            aload 0 /* this */
            aload 2 /* serverSocket */
            putfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
         3: .line 326
            return
        end local 2 // java.net.ServerSocket serverSocket
        end local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable;
            0    4     2  serverSocket  Ljava/net/ServerSocket;
    MethodParameters:
              Name  Flags
      this$0        final
      serverSocket  

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=11, args_size=1
        start local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
         0: .line 331
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Started"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 334
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.getKey:()Ljava/lang/String;
            astore 1 /* key */
        start local 1 // java.lang.String key
         2: .line 337
      StackMap locals: java.lang.String
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
         3: aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
            invokevirtual java.net.ServerSocket.accept:()Ljava/net/Socket;
            astore 4 /* socket */
        start local 4 // java.net.Socket socket
         4: .line 339
            new java.io.LineNumberReader
            dup
            new java.io.InputStreamReader
            dup
            aload 4 /* socket */
            invokevirtual java.net.Socket.getInputStream:()Ljava/io/InputStream;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            invokespecial java.io.LineNumberReader.<init>:(Ljava/io/Reader;)V
            astore 5 /* reader */
        start local 5 // java.io.LineNumberReader reader
         5: .line 340
            aload 5 /* reader */
            invokevirtual java.io.LineNumberReader.readLine:()Ljava/lang/String;
            astore 6 /* receivedKey */
        start local 6 // java.lang.String receivedKey
         6: .line 341
            aload 1 /* key */
            aload 6 /* receivedKey */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
         7: .line 343
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Ignoring command with incorrect key: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* receivedKey */
            aastore
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 407
            aload 4 /* socket */
            ifnull 2
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
         9: .line 344
            goto 2
        10: .line 347
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.lang.String java.lang.Throwable java.lang.Throwable java.net.Socket java.io.LineNumberReader java.lang.String
      StackMap stack:
            aload 5 /* reader */
            invokevirtual java.io.LineNumberReader.readLine:()Ljava/lang/String;
            astore 7 /* cmd */
        start local 7 // java.lang.String cmd
        11: .line 348
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "command=%s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 7 /* cmd */
            aastore
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 349
            aload 4 /* socket */
            invokevirtual java.net.Socket.getOutputStream:()Ljava/io/OutputStream;
            astore 8 /* out */
        start local 8 // java.io.OutputStream out
        13: .line 350
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.isExitVm:()Z
            istore 9 /* exitVm */
        start local 9 // boolean exitVm
        14: .line 352
            ldc "stop"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 25
        15: .line 355
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Performing stop command"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        16: .line 356
            aload 0 /* this */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jetty/util/thread/ShutdownThread.isRegistered(Lorg/eclipse/jetty/util/component/LifeCycle;)Z (6)
                  (Lorg/eclipse/jetty/util/component/LifeCycle;)Z
            iload 9 /* exitVm */
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.stopLifeCycles:(Ljava/util/function/Predicate;Z)V
        17: .line 359
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Informing client that we are stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        18: .line 360
            aload 0 /* this */
            aload 8 /* out */
            ldc "Stopped\r\n"
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.informClient:(Ljava/io/OutputStream;Ljava/lang/String;)V
        19: .line 362
            iload 9 /* exitVm */
            ifne 22
        20: .line 407
            aload 4 /* socket */
            ifnull 69
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
        21: .line 363
            goto 69
        22: .line 366
      StackMap locals: java.lang.String java.io.OutputStream int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Killing JVM"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        23: .line 367
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        24: .line 368
            goto 50
        25: .line 369
      StackMap locals:
      StackMap stack:
            ldc "forcestop"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 36
        26: .line 371
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Performing forced stop command"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        27: .line 372
            aload 0 /* this */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable.lambda$1(Lorg/eclipse/jetty/util/component/LifeCycle;)Z (6)
                  (Lorg/eclipse/jetty/util/component/LifeCycle;)Z
            iload 9 /* exitVm */
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.stopLifeCycles:(Ljava/util/function/Predicate;Z)V
        28: .line 375
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Informing client that we are stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        29: .line 376
            aload 0 /* this */
            aload 8 /* out */
            ldc "Stopped\r\n"
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.informClient:(Ljava/io/OutputStream;Ljava/lang/String;)V
        30: .line 378
            iload 9 /* exitVm */
            ifne 33
        31: .line 407
            aload 4 /* socket */
            ifnull 69
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
        32: .line 379
            goto 69
        33: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Killing JVM"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        34: .line 383
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        35: .line 384
            goto 50
        36: .line 385
      StackMap locals:
      StackMap stack:
            ldc "stopexit"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 44
        37: .line 387
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Performing stop and exit commands"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        38: .line 388
            aload 0 /* this */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jetty/util/thread/ShutdownThread.isRegistered(Lorg/eclipse/jetty/util/component/LifeCycle;)Z (6)
                  (Lorg/eclipse/jetty/util/component/LifeCycle;)Z
            iconst_1
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.stopLifeCycles:(Ljava/util/function/Predicate;Z)V
        39: .line 391
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Informing client that we are stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        40: .line 392
            aload 0 /* this */
            aload 8 /* out */
            ldc "Stopped\r\n"
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.informClient:(Ljava/io/OutputStream;Ljava/lang/String;)V
        41: .line 394
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Killing JVM"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        42: .line 395
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        43: .line 396
            goto 50
        44: .line 397
      StackMap locals:
      StackMap stack:
            ldc "exit"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 48
        45: .line 399
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Killing JVM"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        46: .line 400
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        47: .line 401
            goto 50
        48: .line 402
      StackMap locals:
      StackMap stack:
            ldc "status"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 50
        49: .line 405
            aload 0 /* this */
            aload 8 /* out */
            ldc "OK\r\n"
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.informClient:(Ljava/io/OutputStream;Ljava/lang/String;)V
        end local 9 // boolean exitVm
        end local 8 // java.io.OutputStream out
        end local 7 // java.lang.String cmd
        end local 6 // java.lang.String receivedKey
        end local 5 // java.io.LineNumberReader reader
        50: .line 407
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.lang.String java.lang.Throwable java.lang.Throwable java.net.Socket
      StackMap stack:
            aload 4 /* socket */
            ifnull 2
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
            goto 2
      StackMap locals:
      StackMap stack: java.lang.Throwable
        51: astore 2
            aload 4 /* socket */
            ifnull 52
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
        end local 4 // java.net.Socket socket
      StackMap locals:
      StackMap stack:
        52: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        53: astore 3
            aload 2
            ifnonnull 54
            aload 3
            astore 2
            goto 55
      StackMap locals:
      StackMap stack:
        54: aload 2
            aload 3
            if_acmpeq 55
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        55: aload 2
            athrow
        56: .line 408
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.lang.String
      StackMap stack: java.lang.Throwable
            astore 2 /* x */
        start local 2 // java.lang.Throwable x
        57: .line 410
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            aload 2 /* x */
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/Throwable;)V
        end local 2 // java.lang.Throwable x
        58: .line 335
            goto 2
        end local 1 // java.lang.String key
        59: .line 414
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable
      StackMap stack: java.lang.Throwable
            astore 1 /* x */
        start local 1 // java.lang.Throwable x
        60: .line 416
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            aload 1 /* x */
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/Throwable;)V
        end local 1 // java.lang.Throwable x
        61: .line 420
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
            invokestatic org.eclipse.jetty.util.IO.close:(Ljava/io/Closeable;)V
        62: .line 421
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.stop:()V
        63: .line 422
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
            goto 72
        64: .line 419
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        65: .line 420
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
            invokestatic org.eclipse.jetty.util.IO.close:(Ljava/io/Closeable;)V
        66: .line 421
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.stop:()V
        67: .line 422
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        68: .line 423
            aload 10
            athrow
        69: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
            invokestatic org.eclipse.jetty.util.IO.close:(Ljava/io/Closeable;)V
        70: .line 421
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.stop:()V
        71: .line 422
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            ldc "Stopped"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        72: .line 424
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   73     0         this  Lorg/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable;
            2   59     1          key  Ljava/lang/String;
            4   52     4       socket  Ljava/net/Socket;
            5   50     5       reader  Ljava/io/LineNumberReader;
            6   50     6  receivedKey  Ljava/lang/String;
           11   50     7          cmd  Ljava/lang/String;
           13   50     8          out  Ljava/io/OutputStream;
           14   50     9       exitVm  Z
           57   58     2            x  Ljava/lang/Throwable;
           60   61     1            x  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           4     8      51  any
          10    20      51  any
          22    31      51  any
          33    50      51  any
           3     9      53  any
          10    21      53  any
          22    32      53  any
          33    53      53  any
           2     9      56  Class java.lang.Throwable
          10    21      56  Class java.lang.Throwable
          22    32      56  Class java.lang.Throwable
          33    56      56  Class java.lang.Throwable
           1    59      59  Class java.lang.Throwable
           1    61      64  any

  private void informClient(java.io.OutputStream, java.lang.String);
    descriptor: (Ljava/io/OutputStream;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
        start local 1 // java.io.OutputStream out
        start local 2 // java.lang.String message
         0: .line 428
            aload 1 /* out */
            aload 2 /* message */
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
            invokevirtual java.io.OutputStream.write:([B)V
         1: .line 429
            aload 1 /* out */
            invokevirtual java.io.OutputStream.flush:()V
         2: .line 430
            return
        end local 2 // java.lang.String message
        end local 1 // java.io.OutputStream out
        end local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable;
            0    3     1      out  Ljava/io/OutputStream;
            0    3     2  message  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      out      
      message  

  private void stopLifeCycles(java.util.function.Predicate<org.eclipse.jetty.util.component.LifeCycle>, );
    descriptor: (Ljava/util/function/Predicate;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
        start local 1 // java.util.function.Predicate predicate
        start local 2 // boolean destroy
         0: .line 435
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            getfield org.eclipse.jetty.server.ShutdownMonitor._lock:Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
            invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.lock:()Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
            astore 6 /* l */
        start local 6 // org.eclipse.jetty.util.thread.AutoLock l
         2: .line 437
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            getfield org.eclipse.jetty.server.ShutdownMonitor._lifeCycles:Ljava/util/Set;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 3 /* lifeCycles */
        start local 3 // java.util.List lifeCycles
         3: .line 438
            aload 6 /* l */
            ifnull 9
            aload 6 /* l */
            invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
            goto 9
        end local 3 // java.util.List lifeCycles
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int top java.lang.Throwable java.lang.Throwable org.eclipse.jetty.util.thread.AutoLock
      StackMap stack: java.lang.Throwable
         4: astore 4
            aload 6 /* l */
            ifnull 5
            aload 6 /* l */
            invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
        end local 6 // org.eclipse.jetty.util.thread.AutoLock l
      StackMap locals:
      StackMap stack:
         5: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 5
            aload 4
            ifnonnull 7
            aload 5
            astore 4
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 4
            aload 5
            if_acmpeq 8
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
         8: aload 4
            athrow
        start local 3 // java.util.List lifeCycles
         9: .line 440
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List
      StackMap stack:
            aload 3 /* lifeCycles */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 18
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List top java.util.Iterator
      StackMap stack:
        10: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jetty.util.component.LifeCycle
            astore 4 /* l */
        start local 4 // org.eclipse.jetty.util.component.LifeCycle l
        11: .line 444
            aload 4 /* l */
            invokeinterface org.eclipse.jetty.util.component.LifeCycle.isStarted:()Z
            ifeq 13
            aload 1 /* predicate */
            aload 4 /* l */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 445
            aload 4 /* l */
            invokeinterface org.eclipse.jetty.util.component.LifeCycle.stop:()V
        13: .line 447
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List org.eclipse.jetty.util.component.LifeCycle java.util.Iterator
      StackMap stack:
            aload 4 /* l */
            instanceof org.eclipse.jetty.util.component.Destroyable
            ifeq 18
            iload 2 /* destroy */
            ifeq 18
        14: .line 448
            aload 4 /* l */
            checkcast org.eclipse.jetty.util.component.Destroyable
            invokeinterface org.eclipse.jetty.util.component.Destroyable.destroy:()V
        15: .line 449
            goto 18
        16: .line 450
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6 /* x */
        start local 6 // java.lang.Throwable x
        17: .line 452
            aload 0 /* this */
            getfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
            aload 6 /* x */
            invokevirtual org.eclipse.jetty.server.ShutdownMonitor.debug:(Ljava/lang/Throwable;)V
        end local 6 // java.lang.Throwable x
        end local 4 // org.eclipse.jetty.util.component.LifeCycle l
        18: .line 440
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        19: .line 455
            return
        end local 3 // java.util.List lifeCycles
        end local 2 // boolean destroy
        end local 1 // java.util.function.Predicate predicate
        end local 0 // org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lorg/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable;
            0   20     1   predicate  Ljava/util/function/Predicate<Lorg/eclipse/jetty/util/component/LifeCycle;>;
            0   20     2     destroy  Z
            3    4     3  lifeCycles  Ljava/util/List<Lorg/eclipse/jetty/util/component/LifeCycle;>;
            9   20     3  lifeCycles  Ljava/util/List<Lorg/eclipse/jetty/util/component/LifeCycle;>;
            2    5     6           l  Lorg/eclipse/jetty/util/thread/AutoLock;
           11   18     4           l  Lorg/eclipse/jetty/util/component/LifeCycle;
           17   18     6           x  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2     3       4  any
           1     6       6  any
          11    15      16  Class java.lang.Throwable
    Signature: (Ljava/util/function/Predicate<Lorg/eclipse/jetty/util/component/LifeCycle;>;Z)V
    MethodParameters:
           Name  Flags
      predicate  
      destroy    

  private static boolean lambda$1(org.eclipse.jetty.util.component.LifeCycle);
    descriptor: (Lorg/eclipse/jetty/util/component/LifeCycle;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.component.LifeCycle l
         0: .line 372
            iconst_1
            ireturn
        end local 0 // org.eclipse.jetty.util.component.LifeCycle l
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     l  Lorg/eclipse/jetty/util/component/LifeCycle;
}
SourceFile: "ShutdownMonitor.java"
NestHost: org.eclipse.jetty.server.ShutdownMonitor
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private ShutdownMonitorRunnable = org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable of org.eclipse.jetty.server.ShutdownMonitor
  public WithCondition = org.eclipse.jetty.util.thread.AutoLock$WithCondition of org.eclipse.jetty.util.thread.AutoLock