public class com.caucho.hessian.io.HessianInputFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.caucho.hessian.io.HessianInputFactory
  super_class: java.lang.Object
{
  public static final java.util.logging.Logger log;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private com.caucho.hessian.io.HessianFactory _factory;
    descriptor: Lcom/caucho/hessian/io/HessianFactory;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 57
            ldc Lcom/caucho/hessian/io/HessianInputFactory;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
         1: .line 56
            putstatic com.caucho.hessian.io.HessianInputFactory.log:Ljava/util/logging/Logger;
         2: .line 57
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.caucho.hessian.io.HessianInputFactory this
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            new com.caucho.hessian.io.HessianFactory
            dup
            invokespecial com.caucho.hessian.io.HessianFactory.<init>:()V
            putfield com.caucho.hessian.io.HessianInputFactory._factory:Lcom/caucho/hessian/io/HessianFactory;
         2: .line 54
            return
        end local 0 // com.caucho.hessian.io.HessianInputFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/caucho/hessian/io/HessianInputFactory;

  public void setSerializerFactory(com.caucho.hessian.io.SerializerFactory);
    descriptor: (Lcom/caucho/hessian/io/SerializerFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.caucho.hessian.io.HessianInputFactory this
        start local 1 // com.caucho.hessian.io.SerializerFactory factory
         0: .line 63
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianInputFactory._factory:Lcom/caucho/hessian/io/HessianFactory;
            aload 1 /* factory */
            invokevirtual com.caucho.hessian.io.HessianFactory.setSerializerFactory:(Lcom/caucho/hessian/io/SerializerFactory;)V
         1: .line 64
            return
        end local 1 // com.caucho.hessian.io.SerializerFactory factory
        end local 0 // com.caucho.hessian.io.HessianInputFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/caucho/hessian/io/HessianInputFactory;
            0    2     1  factory  Lcom/caucho/hessian/io/SerializerFactory;
    MethodParameters:
         Name  Flags
      factory  

  public com.caucho.hessian.io.SerializerFactory getSerializerFactory();
    descriptor: ()Lcom/caucho/hessian/io/SerializerFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.caucho.hessian.io.HessianInputFactory this
         0: .line 68
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianInputFactory._factory:Lcom/caucho/hessian/io/HessianFactory;
            invokevirtual com.caucho.hessian.io.HessianFactory.getSerializerFactory:()Lcom/caucho/hessian/io/SerializerFactory;
            areturn
        end local 0 // com.caucho.hessian.io.HessianInputFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/caucho/hessian/io/HessianInputFactory;

  public com.caucho.hessian.io.HessianInputFactory$HeaderType readHeader(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Lcom/caucho/hessian/io/HessianInputFactory$HeaderType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.caucho.hessian.io.HessianInputFactory this
        start local 1 // java.io.InputStream is
         0: .line 74
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            istore 2 /* code */
        start local 2 // int code
         1: .line 76
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            istore 3 /* major */
        start local 3 // int major
         2: .line 77
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            pop
         3: .line 79
            iload 2 /* code */
            lookupswitch { // 4
                   -1: 4
                   72: 9
                   99: 5
                  114: 8
              default: 10
          }
         4: .line 81
      StackMap locals: int int
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Unexpected end of file for Hessian message"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 84
      StackMap locals:
      StackMap stack:
            iload 3 /* major */
            iconst_2
            if_icmplt 7
         6: .line 85
            getstatic com.caucho.hessian.io.HessianInputFactory$HeaderType.CALL_1_REPLY_2:Lcom/caucho/hessian/io/HessianInputFactory$HeaderType;
            areturn
         7: .line 87
      StackMap locals:
      StackMap stack:
            getstatic com.caucho.hessian.io.HessianInputFactory$HeaderType.CALL_1_REPLY_1:Lcom/caucho/hessian/io/HessianInputFactory$HeaderType;
            areturn
         8: .line 89
      StackMap locals:
      StackMap stack:
            getstatic com.caucho.hessian.io.HessianInputFactory$HeaderType.REPLY_1:Lcom/caucho/hessian/io/HessianInputFactory$HeaderType;
            areturn
         9: .line 92
      StackMap locals:
      StackMap stack:
            getstatic com.caucho.hessian.io.HessianInputFactory$HeaderType.HESSIAN_2:Lcom/caucho/hessian/io/HessianInputFactory$HeaderType;
            areturn
        10: .line 95
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            iload 2 /* code */
            i2c
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " 0x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* code */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is an unknown Hessian message code."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int major
        end local 2 // int code
        end local 1 // java.io.InputStream is
        end local 0 // com.caucho.hessian.io.HessianInputFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lcom/caucho/hessian/io/HessianInputFactory;
            0   11     1     is  Ljava/io/InputStream;
            1   11     2   code  I
            2   11     3  major  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      is    

  public com.caucho.hessian.io.AbstractHessianInput open(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Lcom/caucho/hessian/io/AbstractHessianInput;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.caucho.hessian.io.HessianInputFactory this
        start local 1 // java.io.InputStream is
         0: .line 102
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            istore 2 /* code */
        start local 2 // int code
         1: .line 104
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            istore 3 /* major */
        start local 3 // int major
         2: .line 105
            aload 1 /* is */
            invokevirtual java.io.InputStream.read:()I
            pop
         3: .line 107
            iload 2 /* code */
            lookupswitch { // 4
                   67: 4
                   82: 4
                   99: 4
                  114: 4
              default: 7
          }
         4: .line 112
      StackMap locals: int int
      StackMap stack:
            iload 3 /* major */
            iconst_2
            if_icmplt 6
         5: .line 113
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianInputFactory._factory:Lcom/caucho/hessian/io/HessianFactory;
            aload 1 /* is */
            invokevirtual com.caucho.hessian.io.HessianFactory.createHessian2Input:(Ljava/io/InputStream;)Lcom/caucho/hessian/io/Hessian2Input;
            areturn
         6: .line 116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianInputFactory._factory:Lcom/caucho/hessian/io/HessianFactory;
            aload 1 /* is */
            invokevirtual com.caucho.hessian.io.HessianFactory.createHessianInput:(Ljava/io/InputStream;)Lcom/caucho/hessian/io/HessianInput;
            areturn
         7: .line 120
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            iload 2 /* code */
            i2c
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " is an unknown Hessian message code."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int major
        end local 2 // int code
        end local 1 // java.io.InputStream is
        end local 0 // com.caucho.hessian.io.HessianInputFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/caucho/hessian/io/HessianInputFactory;
            0    8     1     is  Ljava/io/InputStream;
            1    8     2   code  I
            2    8     3  major  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      is    
}
SourceFile: "HessianInputFactory.java"
NestMembers:
  com.caucho.hessian.io.HessianInputFactory$HeaderType
InnerClasses:
  public final HeaderType = com.caucho.hessian.io.HessianInputFactory$HeaderType of com.caucho.hessian.io.HessianInputFactory