public interface org.apache.coyote.ProtocolHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.apache.coyote.ProtocolHandler
  super_class: java.lang.Object
{
  public abstract org.apache.coyote.Adapter getAdapter();
    descriptor: ()Lorg/apache/coyote/Adapter;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setAdapter(org.apache.coyote.Adapter);
    descriptor: (Lorg/apache/coyote/Adapter;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      adapter  

  public abstract java.util.concurrent.Executor getExecutor();
    descriptor: ()Ljava/util/concurrent/Executor;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setExecutor(java.util.concurrent.Executor);
    descriptor: (Ljava/util/concurrent/Executor;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      executor  

  public abstract java.util.concurrent.ScheduledExecutorService getUtilityExecutor();
    descriptor: ()Ljava/util/concurrent/ScheduledExecutorService;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void setUtilityExecutor(java.util.concurrent.ScheduledExecutorService);
    descriptor: (Ljava/util/concurrent/ScheduledExecutorService;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                 Name  Flags
      utilityExecutor  

  public abstract void init();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void start();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void pause();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void resume();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void stop();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void destroy();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception

  public abstract void closeServerSocketGraceful();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract long awaitConnectionsClose(long);
    descriptor: (J)J
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      waitMillis  

  public abstract boolean isAprRequired();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean isSendfileSupported();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void addSslHostConfig(org.apache.tomcat.util.net.SSLHostConfig);
    descriptor: (Lorg/apache/tomcat/util/net/SSLHostConfig;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      sslHostConfig  

  public abstract org.apache.tomcat.util.net.SSLHostConfig[] findSslHostConfigs();
    descriptor: ()[Lorg/apache/tomcat/util/net/SSLHostConfig;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void addUpgradeProtocol(org.apache.coyote.UpgradeProtocol);
    descriptor: (Lorg/apache/coyote/UpgradeProtocol;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                 Name  Flags
      upgradeProtocol  

  public abstract org.apache.coyote.UpgradeProtocol[] findUpgradeProtocols();
    descriptor: ()[Lorg/apache/coyote/UpgradeProtocol;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public int getDesiredBufferSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.ProtocolHandler this
         0: .line 205
            iconst_m1
            ireturn
        end local 0 // org.apache.coyote.ProtocolHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/ProtocolHandler;

  public static org.apache.coyote.ProtocolHandler create(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/coyote/ProtocolHandler;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String protocol
         0: .line 224
            aload 0 /* protocol */
            ifnull 2
            ldc "HTTP/1.1"
            aload 0 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 225
            ldc Lorg/apache/coyote/http11/Http11NioProtocol;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 0 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 226
      StackMap locals:
      StackMap stack:
            new org.apache.coyote.http11.Http11NioProtocol
            dup
            invokespecial org.apache.coyote.http11.Http11NioProtocol.<init>:()V
            areturn
         3: .line 227
      StackMap locals:
      StackMap stack:
            ldc "AJP/1.3"
            aload 0 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 228
            ldc Lorg/apache/coyote/ajp/AjpNioProtocol;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 0 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 229
      StackMap locals:
      StackMap stack:
            new org.apache.coyote.ajp.AjpNioProtocol
            dup
            invokespecial org.apache.coyote.ajp.AjpNioProtocol.<init>:()V
            areturn
         6: .line 232
      StackMap locals:
      StackMap stack:
            aload 0 /* protocol */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* clazz */
        start local 1 // java.lang.Class clazz
         7: .line 233
            aload 1 /* clazz */
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.coyote.ProtocolHandler
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.String protocol
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0  protocol  Ljava/lang/String;
            7    8     1     clazz  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.ClassNotFoundException, java.lang.InstantiationException, java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.reflect.InvocationTargetException, java.lang.NoSuchMethodException, java.lang.SecurityException
    MethodParameters:
          Name  Flags
      protocol  
}
SourceFile: "ProtocolHandler.java"