class org.apache.http.impl.bootstrap.WorkerPoolExecutor extends java.util.concurrent.ThreadPoolExecutor
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.http.impl.bootstrap.WorkerPoolExecutor
  super_class: java.util.concurrent.ThreadPoolExecutor
{
  private final java.util.Map<org.apache.http.impl.bootstrap.Worker, java.lang.Boolean> workerSet;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/apache/http/impl/bootstrap/Worker;Ljava/lang/Boolean;>;

  public void <init>(int, int, long, java.util.concurrent.TimeUnit, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.util.concurrent.ThreadFactory);
    descriptor: (IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=7
        start local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
        start local 1 // int corePoolSize
        start local 2 // int maximumPoolSize
        start local 3 // long keepAliveTime
        start local 5 // java.util.concurrent.TimeUnit unit
        start local 6 // java.util.concurrent.BlockingQueue workQueue
        start local 7 // java.util.concurrent.ThreadFactory threadFactory
         0: .line 52
            aload 0 /* this */
            iload 1 /* corePoolSize */
            iload 2 /* maximumPoolSize */
            lload 3 /* keepAliveTime */
            aload 5 /* unit */
            aload 6 /* workQueue */
            aload 7 /* threadFactory */
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
         1: .line 53
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.http.impl.bootstrap.WorkerPoolExecutor.workerSet:Ljava/util/Map;
         2: .line 54
            return
        end local 7 // java.util.concurrent.ThreadFactory threadFactory
        end local 6 // java.util.concurrent.BlockingQueue workQueue
        end local 5 // java.util.concurrent.TimeUnit unit
        end local 3 // long keepAliveTime
        end local 2 // int maximumPoolSize
        end local 1 // int corePoolSize
        end local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/apache/http/impl/bootstrap/WorkerPoolExecutor;
            0    3     1     corePoolSize  I
            0    3     2  maximumPoolSize  I
            0    3     3    keepAliveTime  J
            0    3     5             unit  Ljava/util/concurrent/TimeUnit;
            0    3     6        workQueue  Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
            0    3     7    threadFactory  Ljava/util/concurrent/ThreadFactory;
    Signature: (IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;Ljava/util/concurrent/ThreadFactory;)V
    MethodParameters:
                 Name  Flags
      corePoolSize     final
      maximumPoolSize  final
      keepAliveTime    final
      unit             final
      workQueue        final
      threadFactory    final

  protected void beforeExecute(java.lang.Thread, java.lang.Runnable);
    descriptor: (Ljava/lang/Thread;Ljava/lang/Runnable;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
        start local 1 // java.lang.Thread t
        start local 2 // java.lang.Runnable r
         0: .line 58
            aload 2 /* r */
            instanceof org.apache.http.impl.bootstrap.Worker
            ifeq 2
         1: .line 59
            aload 0 /* this */
            getfield org.apache.http.impl.bootstrap.WorkerPoolExecutor.workerSet:Ljava/util/Map;
            aload 2 /* r */
            checkcast org.apache.http.impl.bootstrap.Worker
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 61
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Runnable r
        end local 1 // java.lang.Thread t
        end local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/http/impl/bootstrap/WorkerPoolExecutor;
            0    3     1     t  Ljava/lang/Thread;
            0    3     2     r  Ljava/lang/Runnable;
    MethodParameters:
      Name  Flags
      t     final
      r     final

  protected void afterExecute(java.lang.Runnable, java.lang.Throwable);
    descriptor: (Ljava/lang/Runnable;Ljava/lang/Throwable;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
        start local 1 // java.lang.Runnable r
        start local 2 // java.lang.Throwable t
         0: .line 65
            aload 1 /* r */
            instanceof org.apache.http.impl.bootstrap.Worker
            ifeq 2
         1: .line 66
            aload 0 /* this */
            getfield org.apache.http.impl.bootstrap.WorkerPoolExecutor.workerSet:Ljava/util/Map;
            aload 1 /* r */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 68
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Throwable t
        end local 1 // java.lang.Runnable r
        end local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/http/impl/bootstrap/WorkerPoolExecutor;
            0    3     1     r  Ljava/lang/Runnable;
            0    3     2     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      r     final
      t     final

  public java.util.Set<org.apache.http.impl.bootstrap.Worker> getWorkers();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
         0: .line 71
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield org.apache.http.impl.bootstrap.WorkerPoolExecutor.workerSet:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            areturn
        end local 0 // org.apache.http.impl.bootstrap.WorkerPoolExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/bootstrap/WorkerPoolExecutor;
    Signature: ()Ljava/util/Set<Lorg/apache/http/impl/bootstrap/Worker;>;
}
SourceFile: "WorkerPoolExecutor.java"