public class io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder
  super_class: java.lang.Object
{
  private static final java.util.concurrent.atomic.AtomicLong COUNT;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final io.dropwizard.lifecycle.setup.LifecycleEnvironment environment;
    descriptor: Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String nameFormat;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int poolSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.util.concurrent.ThreadFactory threadFactory;
    descriptor: Ljava/util/concurrent/ThreadFactory;
    flags: (0x0002) ACC_PRIVATE

  private io.dropwizard.util.Duration shutdownTime;
    descriptor: Lio/dropwizard/util/Duration;
    flags: (0x0002) ACC_PRIVATE

  private java.util.concurrent.RejectedExecutionHandler handler;
    descriptor: Ljava/util/concurrent/RejectedExecutionHandler;
    flags: (0x0002) ACC_PRIVATE

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 18
            new java.util.concurrent.atomic.AtomicLong
            dup
            lconst_0
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
            putstatic io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.COUNT:Ljava/util/concurrent/atomic/AtomicLong;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(io.dropwizard.lifecycle.setup.LifecycleEnvironment, java.lang.String, java.util.concurrent.ThreadFactory);
    descriptor: (Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;Ljava/lang/String;Ljava/util/concurrent/ThreadFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // io.dropwizard.lifecycle.setup.LifecycleEnvironment environment
        start local 2 // java.lang.String nameFormat
        start local 3 // java.util.concurrent.ThreadFactory factory
         0: .line 27
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 28
            aload 0 /* this */
            aload 1 /* environment */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.environment:Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
         2: .line 29
            aload 0 /* this */
            aload 2 /* nameFormat */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.nameFormat:Ljava/lang/String;
         3: .line 30
            aload 0 /* this */
            iconst_1
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.poolSize:I
         4: .line 31
            aload 0 /* this */
            aload 3 /* factory */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.threadFactory:Ljava/util/concurrent/ThreadFactory;
         5: .line 32
            aload 0 /* this */
            ldc 5
            invokestatic io.dropwizard.util.Duration.seconds:(J)Lio/dropwizard/util/Duration;
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.shutdownTime:Lio/dropwizard/util/Duration;
         6: .line 33
            aload 0 /* this */
            new java.util.concurrent.ThreadPoolExecutor$AbortPolicy
            dup
            invokespecial java.util.concurrent.ThreadPoolExecutor$AbortPolicy.<init>:()V
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.handler:Ljava/util/concurrent/RejectedExecutionHandler;
         7: .line 34
            aload 0 /* this */
            iconst_0
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.removeOnCancel:Z
         8: .line 35
            return
        end local 3 // java.util.concurrent.ThreadFactory factory
        end local 2 // java.lang.String nameFormat
        end local 1 // io.dropwizard.lifecycle.setup.LifecycleEnvironment environment
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    9     1  environment  Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
            0    9     2   nameFormat  Ljava/lang/String;
            0    9     3      factory  Ljava/util/concurrent/ThreadFactory;
    MethodParameters:
             Name  Flags
      environment  
      nameFormat   
      factory      

  public void <init>(io.dropwizard.lifecycle.setup.LifecycleEnvironment, java.lang.String, boolean);
    descriptor: (Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // io.dropwizard.lifecycle.setup.LifecycleEnvironment environment
        start local 2 // java.lang.String nameFormat
        start local 3 // boolean useDaemonThreads
         0: .line 38
            aload 0 /* this */
            aload 1 /* environment */
            aload 2 /* nameFormat */
            aload 2 /* nameFormat */
            iload 3 /* useDaemonThreads */
            invokestatic io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.buildThreadFactory:(Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;
            invokespecial io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.<init>:(Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;Ljava/lang/String;Ljava/util/concurrent/ThreadFactory;)V
         1: .line 39
            return
        end local 3 // boolean useDaemonThreads
        end local 2 // java.lang.String nameFormat
        end local 1 // io.dropwizard.lifecycle.setup.LifecycleEnvironment environment
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1       environment  Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
            0    2     2        nameFormat  Ljava/lang/String;
            0    2     3  useDaemonThreads  Z
    MethodParameters:
                  Name  Flags
      environment       
      nameFormat        
      useDaemonThreads  

  private static java.util.concurrent.ThreadFactory buildThreadFactory(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.String nameFormat
        start local 1 // boolean daemon
         0: .line 42
            invokestatic java.util.concurrent.Executors.defaultThreadFactory:()Ljava/util/concurrent/ThreadFactory;
            astore 2 /* defaultThreadFactory */
        start local 2 // java.util.concurrent.ThreadFactory defaultThreadFactory
         1: .line 43
            aload 2 /* defaultThreadFactory */
            aload 0 /* nameFormat */
            iload 1 /* daemon */
            invokedynamic newThread(Ljava/util/concurrent/ThreadFactory;Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;
              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/Runnable;)Ljava/lang/Thread;
                  io/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder.lambda$0(Ljava/util/concurrent/ThreadFactory;Ljava/lang/String;ZLjava/lang/Runnable;)Ljava/lang/Thread; (6)
                  (Ljava/lang/Runnable;)Ljava/lang/Thread;
            areturn
        end local 2 // java.util.concurrent.ThreadFactory defaultThreadFactory
        end local 1 // boolean daemon
        end local 0 // java.lang.String nameFormat
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0            nameFormat  Ljava/lang/String;
            0    2     1                daemon  Z
            1    2     2  defaultThreadFactory  Ljava/util/concurrent/ThreadFactory;
    MethodParameters:
            Name  Flags
      nameFormat  
      daemon      

  public io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder threads(int);
    descriptor: (I)Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // int threads
         0: .line 54
            aload 0 /* this */
            iload 1 /* threads */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.poolSize:I
         1: .line 55
            aload 0 /* this */
            areturn
        end local 1 // int threads
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1  threads  I
    MethodParameters:
         Name  Flags
      threads  

  public io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder shutdownTime(io.dropwizard.util.Duration);
    descriptor: (Lio/dropwizard/util/Duration;)Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // io.dropwizard.util.Duration time
         0: .line 59
            aload 0 /* this */
            aload 1 /* time */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.shutdownTime:Lio/dropwizard/util/Duration;
         1: .line 60
            aload 0 /* this */
            areturn
        end local 1 // io.dropwizard.util.Duration time
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1  time  Lio/dropwizard/util/Duration;
    MethodParameters:
      Name  Flags
      time  

  public io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder rejectedExecutionHandler(java.util.concurrent.RejectedExecutionHandler);
    descriptor: (Ljava/util/concurrent/RejectedExecutionHandler;)Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // java.util.concurrent.RejectedExecutionHandler handler
         0: .line 64
            aload 0 /* this */
            aload 1 /* handler */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.handler:Ljava/util/concurrent/RejectedExecutionHandler;
         1: .line 65
            aload 0 /* this */
            areturn
        end local 1 // java.util.concurrent.RejectedExecutionHandler handler
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1  handler  Ljava/util/concurrent/RejectedExecutionHandler;
    MethodParameters:
         Name  Flags
      handler  

  public io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder threadFactory(java.util.concurrent.ThreadFactory);
    descriptor: (Ljava/util/concurrent/ThreadFactory;)Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // java.util.concurrent.ThreadFactory threadFactory
         0: .line 69
            aload 0 /* this */
            aload 1 /* threadFactory */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.threadFactory:Ljava/util/concurrent/ThreadFactory;
         1: .line 70
            aload 0 /* this */
            areturn
        end local 1 // java.util.concurrent.ThreadFactory threadFactory
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1  threadFactory  Ljava/util/concurrent/ThreadFactory;
    MethodParameters:
               Name  Flags
      threadFactory  

  public io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder removeOnCancelPolicy(boolean);
    descriptor: (Z)Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
        start local 1 // boolean removeOnCancel
         0: .line 74
            aload 0 /* this */
            iload 1 /* removeOnCancel */
            putfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.removeOnCancel:Z
         1: .line 75
            aload 0 /* this */
            areturn
        end local 1 // boolean removeOnCancel
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            0    2     1  removeOnCancel  Z
    MethodParameters:
                Name  Flags
      removeOnCancel  

  public java.util.concurrent.ScheduledExecutorService build();
    descriptor: ()Ljava/util/concurrent/ScheduledExecutorService;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
         0: .line 79
            new com.codahale.metrics.InstrumentedThreadFactory
            dup
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.threadFactory:Ljava/util/concurrent/ThreadFactory;
         1: .line 80
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.environment:Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
            invokevirtual io.dropwizard.lifecycle.setup.LifecycleEnvironment.getMetricRegistry:()Lcom/codahale/metrics/MetricRegistry;
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.nameFormat:Ljava/lang/String;
         2: .line 79
            invokespecial com.codahale.metrics.InstrumentedThreadFactory.<init>:(Ljava/util/concurrent/ThreadFactory;Lcom/codahale/metrics/MetricRegistry;Ljava/lang/String;)V
            astore 1 /* instrumentedThreadFactory */
        start local 1 // com.codahale.metrics.InstrumentedThreadFactory instrumentedThreadFactory
         3: .line 82
            new java.util.concurrent.ScheduledThreadPoolExecutor
            dup
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.poolSize:I
            aload 1 /* instrumentedThreadFactory */
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.handler:Ljava/util/concurrent/RejectedExecutionHandler;
            invokespecial java.util.concurrent.ScheduledThreadPoolExecutor.<init>:(ILjava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)V
            astore 2 /* executor */
        start local 2 // java.util.concurrent.ScheduledThreadPoolExecutor executor
         4: .line 83
            aload 2 /* executor */
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.removeOnCancel:Z
            invokevirtual java.util.concurrent.ScheduledThreadPoolExecutor.setRemoveOnCancelPolicy:(Z)V
         5: .line 85
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.environment:Lio/dropwizard/lifecycle/setup/LifecycleEnvironment;
            new io.dropwizard.lifecycle.ExecutorServiceManager
            dup
            aload 2 /* executor */
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.shutdownTime:Lio/dropwizard/util/Duration;
            aload 0 /* this */
            getfield io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.nameFormat:Ljava/lang/String;
            invokespecial io.dropwizard.lifecycle.ExecutorServiceManager.<init>:(Ljava/util/concurrent/ExecutorService;Lio/dropwizard/util/Duration;Ljava/lang/String;)V
            invokevirtual io.dropwizard.lifecycle.setup.LifecycleEnvironment.manage:(Lio/dropwizard/lifecycle/Managed;)V
         6: .line 86
            aload 2 /* executor */
            areturn
        end local 2 // java.util.concurrent.ScheduledThreadPoolExecutor executor
        end local 1 // com.codahale.metrics.InstrumentedThreadFactory instrumentedThreadFactory
        end local 0 // io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    7     0                       this  Lio/dropwizard/lifecycle/setup/ScheduledExecutorServiceBuilder;
            3    7     1  instrumentedThreadFactory  Lcom/codahale/metrics/InstrumentedThreadFactory;
            4    7     2                   executor  Ljava/util/concurrent/ScheduledThreadPoolExecutor;

  private static java.lang.Thread lambda$0(java.util.concurrent.ThreadFactory, java.lang.String, boolean, java.lang.Runnable);
    descriptor: (Ljava/util/concurrent/ThreadFactory;Ljava/lang/String;ZLjava/lang/Runnable;)Ljava/lang/Thread;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=8, locals=5, args_size=4
        start local 3 // java.lang.Runnable r
         0: .line 44
            aload 0
            aload 3 /* r */
            invokeinterface java.util.concurrent.ThreadFactory.newThread:(Ljava/lang/Runnable;)Ljava/lang/Thread;
            astore 4 /* thread */
        start local 4 // java.lang.Thread thread
         1: .line 45
            aload 1
            ifnull 3
         2: .line 46
            aload 4 /* thread */
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            aload 1
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic io.dropwizard.lifecycle.setup.ScheduledExecutorServiceBuilder.COUNT:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.Thread.setName:(Ljava/lang/String;)V
         3: .line 48
      StackMap locals: java.lang.Thread
      StackMap stack:
            aload 4 /* thread */
            iload 2
            invokevirtual java.lang.Thread.setDaemon:(Z)V
         4: .line 49
            aload 4 /* thread */
            areturn
        end local 4 // java.lang.Thread thread
        end local 3 // java.lang.Runnable r
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     3       r  Ljava/lang/Runnable;
            1    5     4  thread  Ljava/lang/Thread;
}
SourceFile: "ScheduledExecutorServiceBuilder.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public AbortPolicy = java.util.concurrent.ThreadPoolExecutor$AbortPolicy of java.util.concurrent.ThreadPoolExecutor