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 322
            aload 0 /* this */
            aload 1
            putfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.this$0:Lorg/eclipse/jetty/server/ShutdownMonitor;
         1: .line 321
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 323
            aload 0 /* this */
            aload 2 /* serverSocket */
            putfield org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable.serverSocket:Ljava/net/ServerSocket;
         3: .line 324
            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 329
            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 332
            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 335
      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 337
            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 338
            aload 5 /* reader */
            invokevirtual java.io.LineNumberReader.readLine:()Ljava/lang/String;
            astore 6 /* receivedKey */
        start local 6 // java.lang.String receivedKey
         6: .line 339
            aload 1 /* key */
            aload 6 /* receivedKey */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
         7: .line 341
            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 405
            aload 4 /* socket */
            ifnull 2
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
         9: .line 342
            goto 2
        10: .line 345
      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 346
            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 347
            aload 4 /* socket */
            invokevirtual java.net.Socket.getOutputStream:()Ljava/io/OutputStream;
            astore 8 /* out */
        start local 8 // java.io.OutputStream out
        13: .line 348
            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 350
            ldc "stop"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 25
        15: .line 353
            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 354
            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 357
            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 358
            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 360
            iload 9 /* exitVm */
            ifne 22
        20: .line 405
            aload 4 /* socket */
            ifnull 69
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
        21: .line 361
            goto 69
        22: .line 364
      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 365
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        24: .line 366
            goto 50
        25: .line 367
      StackMap locals:
      StackMap stack:
            ldc "forcestop"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 36
        26: .line 369
            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 370
            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 373
            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 374
            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 376
            iload 9 /* exitVm */
            ifne 33
        31: .line 405
            aload 4 /* socket */
            ifnull 69
            aload 4 /* socket */
            invokevirtual java.net.Socket.close:()V
        32: .line 377
            goto 69
        33: .line 380
      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 381
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        35: .line 382
            goto 50
        36: .line 383
      StackMap locals:
      StackMap stack:
            ldc "stopexit"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 44
        37: .line 385
            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 386
            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 389
            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 390
            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 392
            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 393
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        43: .line 394
            goto 50
        44: .line 395
      StackMap locals:
      StackMap stack:
            ldc "exit"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 48
        45: .line 397
            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 398
            iconst_0
            invokestatic java.lang.System.exit:(I)V
        47: .line 399
            goto 50
        48: .line 400
      StackMap locals:
      StackMap stack:
            ldc "status"
            aload 7 /* cmd */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 50
        49: .line 403
            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 405
      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 406
      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 408
            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 333
            goto 2
        end local 1 // java.lang.String key
        59: .line 412
      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 414
            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 418
            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 419
            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 420
            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 417
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        65: .line 418
            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 419
            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 420
            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 421
            aload 10
            athrow
        69: .line 418
      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 419
            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 420
            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 422
      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 426
            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 427
            aload 1 /* out */
            invokevirtual java.io.OutputStream.flush:()V
         2: .line 428
            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=2, 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 432
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* lifeCycles */
        start local 3 // java.util.List lifeCycles
         1: .line 433
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         2: .line 435
            aload 3 /* lifeCycles */
            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;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 433
            aload 4
            monitorexit
         4: goto 7
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable
      StackMap stack: java.lang.Throwable
         5: aload 4
            monitorexit
         6: athrow
         7: .line 438
      StackMap locals:
      StackMap stack:
            aload 3 /* lifeCycles */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 16
      StackMap locals: org.eclipse.jetty.server.ShutdownMonitor$ShutdownMonitorRunnable java.util.function.Predicate int java.util.List top java.util.Iterator
      StackMap stack:
         8: 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
         9: .line 442
            aload 4 /* l */
            invokeinterface org.eclipse.jetty.util.component.LifeCycle.isStarted:()Z
            ifeq 11
            aload 1 /* predicate */
            aload 4 /* l */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 443
            aload 4 /* l */
            invokeinterface org.eclipse.jetty.util.component.LifeCycle.stop:()V
        11: .line 445
      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 16
            iload 2 /* destroy */
            ifeq 16
        12: .line 446
            aload 4 /* l */
            checkcast org.eclipse.jetty.util.component.Destroyable
            invokeinterface org.eclipse.jetty.util.component.Destroyable.destroy:()V
        13: .line 447
            goto 16
        14: .line 448
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6 /* x */
        start local 6 // java.lang.Throwable x
        15: .line 450
            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
        16: .line 438
      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 8
        17: .line 453
            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   18     0        this  Lorg/eclipse/jetty/server/ShutdownMonitor$ShutdownMonitorRunnable;
            0   18     1   predicate  Ljava/util/function/Predicate<Lorg/eclipse/jetty/util/component/LifeCycle;>;
            0   18     2     destroy  Z
            1   18     3  lifeCycles  Ljava/util/List<Lorg/eclipse/jetty/util/component/LifeCycle;>;
            9   16     4           l  Lorg/eclipse/jetty/util/component/LifeCycle;
           15   16     6           x  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
           9    13      14  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 370
            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