public class org.glassfish.grizzly.http.ajp.AjpAddOn implements org.glassfish.grizzly.http.server.AddOn
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.glassfish.grizzly.http.ajp.AjpAddOn
  super_class: java.lang.Object
{
  private boolean isTomcatAuthentication;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String secret;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 41
            aload 0 /* this */
            iconst_1
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.isTomcatAuthentication:Z
         2: .line 42
            return
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;

  public void configure(boolean, java.lang.String);
    descriptor: (ZLjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
        start local 1 // boolean isTomcatAuthentication
        start local 2 // java.lang.String secret
         0: .line 56
            aload 0 /* this */
            iload 1 /* isTomcatAuthentication */
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.isTomcatAuthentication:Z
         1: .line 57
            aload 0 /* this */
            aload 2 /* secret */
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
         2: .line 58
            return
        end local 2 // java.lang.String secret
        end local 1 // boolean isTomcatAuthentication
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0                    this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;
            0    3     1  isTomcatAuthentication  Z
            0    3     2                  secret  Ljava/lang/String;
    MethodParameters:
                        Name  Flags
      isTomcatAuthentication  final
      secret                  final

  public void configure(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
        start local 1 // java.util.Properties properties
         0: .line 67
            aload 1 /* properties */
            ldc "request.useSecret"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 68
            aload 0 /* this */
            invokestatic java.lang.Math.random:()D
            invokestatic java.lang.Double.toString:(D)Ljava/lang/String;
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
         2: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* properties */
            ldc "request.secret"
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
         3: .line 72
            aload 0 /* this */
         4: .line 73
            aload 1 /* properties */
         5: .line 74
            ldc "tomcatAuthentication"
            ldc "true"
         6: .line 73
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
         7: .line 72
            putfield org.glassfish.grizzly.http.ajp.AjpAddOn.isTomcatAuthentication:Z
         8: .line 75
            return
        end local 1 // java.util.Properties properties
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;
            0    9     1  properties  Ljava/util/Properties;
    MethodParameters:
            Name  Flags
      properties  final

  public boolean isTomcatAuthentication();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
         0: .line 88
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.ajp.AjpAddOn.isTomcatAuthentication:Z
            ireturn
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;

  public java.lang.String getSecret();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
         0: .line 99
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
            areturn
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;

  public void setup(org.glassfish.grizzly.http.server.NetworkListener, org.glassfish.grizzly.filterchain.FilterChainBuilder);
    descriptor: (Lorg/glassfish/grizzly/http/server/NetworkListener;Lorg/glassfish/grizzly/filterchain/FilterChainBuilder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
        start local 1 // org.glassfish.grizzly.http.server.NetworkListener networkListener
        start local 2 // org.glassfish.grizzly.filterchain.FilterChainBuilder builder
         0: .line 106
            aload 2 /* builder */
            ldc Lorg/glassfish/grizzly/http/HttpCodecFilter;
            invokevirtual org.glassfish.grizzly.filterchain.FilterChainBuilder.indexOfType:(Ljava/lang/Class;)I
            istore 3 /* httpCodecFilterIdx */
        start local 3 // int httpCodecFilterIdx
         1: .line 107
            aload 2 /* builder */
            ldc Lorg/glassfish/grizzly/http/server/HttpServerFilter;
            invokevirtual org.glassfish.grizzly.filterchain.FilterChainBuilder.indexOfType:(Ljava/lang/Class;)I
            istore 4 /* httpServerFilterIdx */
        start local 4 // int httpServerFilterIdx
         2: .line 111
            iload 3 /* httpCodecFilterIdx */
            iflt 6
         3: .line 112
            aload 2 /* builder */
            iload 3 /* httpCodecFilterIdx */
            invokevirtual org.glassfish.grizzly.filterchain.FilterChainBuilder.remove:(I)Lorg/glassfish/grizzly/filterchain/FilterChainBuilder;
            pop
         4: .line 113
            iload 3 /* httpCodecFilterIdx */
            istore 5 /* idx */
        start local 5 // int idx
         5: .line 114
            goto 7
        end local 5 // int idx
         6: .line 115
      StackMap locals: int int
      StackMap stack:
            iload 4 /* httpServerFilterIdx */
            istore 5 /* idx */
        start local 5 // int idx
         7: .line 118
      StackMap locals: int
      StackMap stack:
            iload 5 /* idx */
            iflt 13
         8: .line 119
            aload 2 /* builder */
            iload 5 /* idx */
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.http.ajp.AjpAddOn.createAjpMessageFilter:()Lorg/glassfish/grizzly/http/ajp/AjpMessageFilter;
            invokevirtual org.glassfish.grizzly.filterchain.FilterChainBuilder.add:(ILorg/glassfish/grizzly/filterchain/Filter;)Lorg/glassfish/grizzly/filterchain/FilterChainBuilder;
            pop
         9: .line 121
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.http.ajp.AjpAddOn.createAjpHandlerFilter:()Lorg/glassfish/grizzly/http/ajp/AjpHandlerFilter;
            astore 6 /* ajpHandlerFilter */
        start local 6 // org.glassfish.grizzly.http.ajp.AjpHandlerFilter ajpHandlerFilter
        10: .line 122
            aload 6 /* ajpHandlerFilter */
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.ajp.AjpAddOn.secret:Ljava/lang/String;
            invokevirtual org.glassfish.grizzly.http.ajp.AjpHandlerFilter.setSecret:(Ljava/lang/String;)V
        11: .line 123
            aload 6 /* ajpHandlerFilter */
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.ajp.AjpAddOn.isTomcatAuthentication:Z
            invokevirtual org.glassfish.grizzly.http.ajp.AjpHandlerFilter.setTomcatAuthentication:(Z)V
        12: .line 125
            aload 2 /* builder */
            iload 5 /* idx */
            iconst_1
            iadd
            aload 6 /* ajpHandlerFilter */
            invokevirtual org.glassfish.grizzly.filterchain.FilterChainBuilder.add:(ILorg/glassfish/grizzly/filterchain/Filter;)Lorg/glassfish/grizzly/filterchain/FilterChainBuilder;
            pop
        end local 6 // org.glassfish.grizzly.http.ajp.AjpHandlerFilter ajpHandlerFilter
        13: .line 127
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int idx
        end local 4 // int httpServerFilterIdx
        end local 3 // int httpCodecFilterIdx
        end local 2 // org.glassfish.grizzly.filterchain.FilterChainBuilder builder
        end local 1 // org.glassfish.grizzly.http.server.NetworkListener networkListener
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   14     0                 this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;
            0   14     1      networkListener  Lorg/glassfish/grizzly/http/server/NetworkListener;
            0   14     2              builder  Lorg/glassfish/grizzly/filterchain/FilterChainBuilder;
            1   14     3   httpCodecFilterIdx  I
            2   14     4  httpServerFilterIdx  I
            5    6     5                  idx  I
            7   14     5                  idx  I
           10   13     6     ajpHandlerFilter  Lorg/glassfish/grizzly/http/ajp/AjpHandlerFilter;
    MethodParameters:
                 Name  Flags
      networkListener  final
      builder          final

  protected org.glassfish.grizzly.http.ajp.AjpHandlerFilter createAjpHandlerFilter();
    descriptor: ()Lorg/glassfish/grizzly/http/ajp/AjpHandlerFilter;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
         0: .line 130
            new org.glassfish.grizzly.http.ajp.AjpHandlerFilter
            dup
            invokespecial org.glassfish.grizzly.http.ajp.AjpHandlerFilter.<init>:()V
            areturn
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;

  protected org.glassfish.grizzly.http.ajp.AjpMessageFilter createAjpMessageFilter();
    descriptor: ()Lorg/glassfish/grizzly/http/ajp/AjpMessageFilter;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
         0: .line 134
            new org.glassfish.grizzly.http.ajp.AjpMessageFilter
            dup
            invokespecial org.glassfish.grizzly.http.ajp.AjpMessageFilter.<init>:()V
            areturn
        end local 0 // org.glassfish.grizzly.http.ajp.AjpAddOn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/http/ajp/AjpAddOn;
}
SourceFile: "AjpAddOn.java"