public abstract class io.dropwizard.logging.AbstractOutputStreamAppenderFactory<E extends ch.qos.logback.core.spi.DeferredProcessingAware> extends io.dropwizard.logging.AbstractAppenderFactory<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: io.dropwizard.logging.AbstractOutputStreamAppenderFactory
  super_class: io.dropwizard.logging.AbstractAppenderFactory
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.dropwizard.logging.AbstractOutputStreamAppenderFactory this
         0: .line 15
            aload 0 /* this */
            invokespecial io.dropwizard.logging.AbstractAppenderFactory.<init>:()V
            return
        end local 0 // io.dropwizard.logging.AbstractOutputStreamAppenderFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/dropwizard/logging/AbstractOutputStreamAppenderFactory<TE;>;

  protected abstract ch.qos.logback.core.OutputStreamAppender<E> appender(ch.qos.logback.classic.LoggerContext);
    descriptor: (Lch/qos/logback/classic/LoggerContext;)Lch/qos/logback/core/OutputStreamAppender;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Lch/qos/logback/classic/LoggerContext;)Lch/qos/logback/core/OutputStreamAppender<TE;>;
    MethodParameters:
         Name  Flags
      context  

  public ch.qos.logback.core.Appender<E> build(ch.qos.logback.classic.LoggerContext, java.lang.String, io.dropwizard.logging.layout.LayoutFactory<E>, io.dropwizard.logging.filter.LevelFilterFactory<E>, io.dropwizard.logging.async.AsyncAppenderFactory<E>);
    descriptor: (Lch/qos/logback/classic/LoggerContext;Ljava/lang/String;Lio/dropwizard/logging/layout/LayoutFactory;Lio/dropwizard/logging/filter/LevelFilterFactory;Lio/dropwizard/logging/async/AsyncAppenderFactory;)Lch/qos/logback/core/Appender;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=6
        start local 0 // io.dropwizard.logging.AbstractOutputStreamAppenderFactory this
        start local 1 // ch.qos.logback.classic.LoggerContext context
        start local 2 // java.lang.String applicationName
        start local 3 // io.dropwizard.logging.layout.LayoutFactory layoutFactory
        start local 4 // io.dropwizard.logging.filter.LevelFilterFactory levelFilterFactory
        start local 5 // io.dropwizard.logging.async.AsyncAppenderFactory asyncAppenderFactory
         0: .line 23
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.dropwizard.logging.AbstractOutputStreamAppenderFactory.appender:(Lch/qos/logback/classic/LoggerContext;)Lch/qos/logback/core/OutputStreamAppender;
            astore 6 /* appender */
        start local 6 // ch.qos.logback.core.OutputStreamAppender appender
         1: .line 24
            new ch.qos.logback.core.encoder.LayoutWrappingEncoder
            dup
            invokespecial ch.qos.logback.core.encoder.LayoutWrappingEncoder.<init>:()V
            astore 7 /* layoutEncoder */
        start local 7 // ch.qos.logback.core.encoder.LayoutWrappingEncoder layoutEncoder
         2: .line 25
            aload 7 /* layoutEncoder */
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* layoutFactory */
            invokevirtual io.dropwizard.logging.AbstractOutputStreamAppenderFactory.buildLayout:(Lch/qos/logback/classic/LoggerContext;Lio/dropwizard/logging/layout/LayoutFactory;)Lch/qos/logback/core/LayoutBase;
            invokevirtual ch.qos.logback.core.encoder.LayoutWrappingEncoder.setLayout:(Lch/qos/logback/core/Layout;)V
         3: .line 26
            aload 6 /* appender */
            aload 7 /* layoutEncoder */
            invokevirtual ch.qos.logback.core.OutputStreamAppender.setEncoder:(Lch/qos/logback/core/encoder/Encoder;)V
         4: .line 28
            aload 6 /* appender */
            aload 4 /* levelFilterFactory */
            aload 0 /* this */
            getfield io.dropwizard.logging.AbstractOutputStreamAppenderFactory.threshold:Lch/qos/logback/classic/Level;
            invokeinterface io.dropwizard.logging.filter.LevelFilterFactory.build:(Lch/qos/logback/classic/Level;)Lch/qos/logback/core/filter/Filter;
            invokevirtual ch.qos.logback.core.OutputStreamAppender.addFilter:(Lch/qos/logback/core/filter/Filter;)V
         5: .line 29
            aload 0 /* this */
            invokevirtual io.dropwizard.logging.AbstractOutputStreamAppenderFactory.getFilterFactories:()Lcom/google/common/collect/ImmutableList;
            aload 6 /* appender */
            invokedynamic accept(Lch/qos/logback/core/OutputStreamAppender;)Ljava/util/function/Consumer;
              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;)V
                  io/dropwizard/logging/AbstractOutputStreamAppenderFactory.lambda$0(Lch/qos/logback/core/OutputStreamAppender;Lio/dropwizard/logging/filter/FilterFactory;)V (6)
                  (Lio/dropwizard/logging/filter/FilterFactory;)V
            invokevirtual com.google.common.collect.ImmutableList.forEach:(Ljava/util/function/Consumer;)V
         6: .line 30
            aload 6 /* appender */
            invokevirtual ch.qos.logback.core.OutputStreamAppender.start:()V
         7: .line 31
            aload 0 /* this */
            aload 6 /* appender */
            aload 5 /* asyncAppenderFactory */
            invokevirtual io.dropwizard.logging.AbstractOutputStreamAppenderFactory.wrapAsync:(Lch/qos/logback/core/Appender;Lio/dropwizard/logging/async/AsyncAppenderFactory;)Lch/qos/logback/core/Appender;
            areturn
        end local 7 // ch.qos.logback.core.encoder.LayoutWrappingEncoder layoutEncoder
        end local 6 // ch.qos.logback.core.OutputStreamAppender appender
        end local 5 // io.dropwizard.logging.async.AsyncAppenderFactory asyncAppenderFactory
        end local 4 // io.dropwizard.logging.filter.LevelFilterFactory levelFilterFactory
        end local 3 // io.dropwizard.logging.layout.LayoutFactory layoutFactory
        end local 2 // java.lang.String applicationName
        end local 1 // ch.qos.logback.classic.LoggerContext context
        end local 0 // io.dropwizard.logging.AbstractOutputStreamAppenderFactory this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    8     0                  this  Lio/dropwizard/logging/AbstractOutputStreamAppenderFactory<TE;>;
            0    8     1               context  Lch/qos/logback/classic/LoggerContext;
            0    8     2       applicationName  Ljava/lang/String;
            0    8     3         layoutFactory  Lio/dropwizard/logging/layout/LayoutFactory<TE;>;
            0    8     4    levelFilterFactory  Lio/dropwizard/logging/filter/LevelFilterFactory<TE;>;
            0    8     5  asyncAppenderFactory  Lio/dropwizard/logging/async/AsyncAppenderFactory<TE;>;
            1    8     6              appender  Lch/qos/logback/core/OutputStreamAppender<TE;>;
            2    8     7         layoutEncoder  Lch/qos/logback/core/encoder/LayoutWrappingEncoder<TE;>;
    Signature: (Lch/qos/logback/classic/LoggerContext;Ljava/lang/String;Lio/dropwizard/logging/layout/LayoutFactory<TE;>;Lio/dropwizard/logging/filter/LevelFilterFactory<TE;>;Lio/dropwizard/logging/async/AsyncAppenderFactory<TE;>;)Lch/qos/logback/core/Appender<TE;>;
    MethodParameters:
                      Name  Flags
      context               
      applicationName       
      layoutFactory         
      levelFilterFactory    
      asyncAppenderFactory  

  private static void lambda$0(ch.qos.logback.core.OutputStreamAppender, io.dropwizard.logging.filter.FilterFactory);
    descriptor: (Lch/qos/logback/core/OutputStreamAppender;Lio/dropwizard/logging/filter/FilterFactory;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.dropwizard.logging.filter.FilterFactory f
         0: .line 29
            aload 0
            aload 1 /* f */
            invokeinterface io.dropwizard.logging.filter.FilterFactory.build:()Lch/qos/logback/core/filter/Filter;
            invokevirtual ch.qos.logback.core.OutputStreamAppender.addFilter:(Lch/qos/logback/core/filter/Filter;)V
            return
        end local 1 // io.dropwizard.logging.filter.FilterFactory f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     f  Lio/dropwizard/logging/filter/FilterFactory<TE;>;
}
Signature: <E::Lch/qos/logback/core/spi/DeferredProcessingAware;>Lio/dropwizard/logging/AbstractAppenderFactory<TE;>;
SourceFile: "AbstractOutputStreamAppenderFactory.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles