public class com.caucho.hessian.io.Hessian2Output extends com.caucho.hessian.io.AbstractHessianOutput implements com.caucho.hessian.io.Hessian2Constants
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.caucho.hessian.io.Hessian2Output
super_class: com.caucho.hessian.io.AbstractHessianOutput
{
public static final int SIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 8192
protected java.io.OutputStream _os;
descriptor: Ljava/io/OutputStream;
flags: (0x0004) ACC_PROTECTED
private final com.caucho.hessian.util.IdentityIntMap _refs;
descriptor: Lcom/caucho/hessian/util/IdentityIntMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int _refCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean _isCloseStreamOnClose;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final com.caucho.hessian.util.IdentityIntMap _classRefs;
descriptor: Lcom/caucho/hessian/util/IdentityIntMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.HashMap<java.lang.String, java.lang.Integer> _typeRefs;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Integer;>;
private final byte[] _buffer;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int _offset;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean _isPacket;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean _isUnshared;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.caucho.hessian.io.AbstractHessianOutput.<init>:()V
1: aload 0
2: new com.caucho.hessian.util.IdentityIntMap
dup
sipush 256
invokespecial com.caucho.hessian.util.IdentityIntMap.<init>:(I)V
putfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
3: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
4: aload 0
5: new com.caucho.hessian.util.IdentityIntMap
dup
sipush 256
invokespecial com.caucho.hessian.util.IdentityIntMap.<init>:(I)V
putfield com.caucho.hessian.io.Hessian2Output._classRefs:Lcom/caucho/hessian/util/IdentityIntMap;
6: aload 0
sipush 8192
newarray 8
putfield com.caucho.hessian.io.Hessian2Output._buffer:[B
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/caucho/hessian/io/Hessian2Output;
public void <init>(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.caucho.hessian.io.AbstractHessianOutput.<init>:()V
1: aload 0
2: new com.caucho.hessian.util.IdentityIntMap
dup
sipush 256
invokespecial com.caucho.hessian.util.IdentityIntMap.<init>:(I)V
putfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
3: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
4: aload 0
5: new com.caucho.hessian.util.IdentityIntMap
dup
sipush 256
invokespecial com.caucho.hessian.util.IdentityIntMap.<init>:(I)V
putfield com.caucho.hessian.io.Hessian2Output._classRefs:Lcom/caucho/hessian/util/IdentityIntMap;
6: aload 0
sipush 8192
newarray 8
putfield com.caucho.hessian.io.Hessian2Output._buffer:[B
7: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.init:(Ljava/io/OutputStream;)V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 9 1 os Ljava/io/OutputStream;
MethodParameters:
Name Flags
os
public void init(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.reset:()V
1: aload 0
aload 1
putfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 3 1 os Ljava/io/OutputStream;
MethodParameters:
Name Flags
os
public void initPacket(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.resetReferences:()V
1: aload 0
aload 1
putfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 3 1 os Ljava/io/OutputStream;
MethodParameters:
Name Flags
os
public void setCloseStreamOnClose(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.caucho.hessian.io.Hessian2Output._isCloseStreamOnClose:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 isClose Z
MethodParameters:
Name Flags
isClose
public boolean isCloseStreamOnClose();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isCloseStreamOnClose:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
public boolean setUnshared(boolean);
descriptor: (Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
istore 2
start local 2 1: aload 0
iload 1
putfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
2: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 3 1 isUnshared Z
1 3 2 oldIsUnshared Z
MethodParameters:
Name Flags
isUnshared
public void call(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.writeVersion:()V
1: aload 2
ifnull 2
aload 2
arraylength
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 3
start local 3 4: aload 0
aload 1
iload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.startCall:(Ljava/lang/String;I)V
5: iconst_0
istore 4
start local 4 6: goto 9
7: StackMap locals: int int
StackMap stack:
aload 0
aload 2
iload 4
aaload
invokevirtual com.caucho.hessian.io.Hessian2Output.writeObject:(Ljava/lang/Object;)V
8: iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 3
if_icmplt 7
end local 4 10: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.completeCall:()V
11: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flush:()V
12: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 13 1 method Ljava/lang/String;
0 13 2 args [Ljava/lang/Object;
4 13 3 length I
6 10 4 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
method
args
public void startCall(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
start local 3 1: sipush 8192
iload 3
bipush 32
iadd
if_icmpge 4
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
4: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 4
start local 4 5: aload 4
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 67
bastore
6: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
7: aload 0
iload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 9 1 method Ljava/lang/String;
0 9 2 length I
1 9 3 offset I
5 9 4 buffer [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
method
length
public void startCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 67
bastore
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void startEnvelope(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
start local 2 1: sipush 8192
iload 2
bipush 32
iadd
if_icmpge 4
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
4: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 69
bastore
5: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 7 1 method Ljava/lang/String;
1 7 2 offset I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
method
public void completeEnvelope();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 90
bastore
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeMethod(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 method Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
method
public void completeCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void startReply();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.writeVersion:()V
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 82
bastore
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeVersion();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 72
bastore
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_2
bastore
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
bastore
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void completeReply();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void startMessage();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 112
bastore
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_2
bastore
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
bastore
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void completeMessage();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 122
bastore
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeFault(java.lang.String, java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.writeVersion:()V
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 70
bastore
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 72
bastore
4: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._refCount:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
iconst_0
invokevirtual com.caucho.hessian.io.Hessian2Output.addRef:(Ljava/lang/Object;IZ)I
pop
5: aload 0
ldc "code"
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
6: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
7: aload 0
ldc "message"
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
8: aload 0
aload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
9: aload 3
ifnull 12
10: aload 0
ldc "detail"
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
11: aload 0
aload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.writeObject:(Ljava/lang/Object;)V
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
13: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 90
bastore
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 15 1 code Ljava/lang/String;
0 15 2 message Ljava/lang/String;
0 15 3 detail Ljava/lang/Object;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
code
message
detail
public void writeObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 3
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.writeNull:()V
2: return
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.findSerializerFactory:()Lcom/caucho/hessian/io/SerializerFactory;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual com.caucho.hessian.io.SerializerFactory.getObjectSerializer:(Ljava/lang/Class;)Lcom/caucho/hessian/io/Serializer;
4: astore 2
start local 2 5: aload 2
aload 1
aload 0
invokeinterface com.caucho.hessian.io.Serializer.writeObject:(Ljava/lang/Object;Lcom/caucho/hessian/io/AbstractHessianOutput;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 7 1 object Ljava/lang/Object;
5 7 2 serializer Lcom/caucho/hessian/io/Serializer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
object
public boolean writeListBegin(int, java.lang.String);
descriptor: (ILjava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: iload 1
ifge 8
2: aload 2
ifnull 6
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 85
bastore
4: aload 0
aload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.writeType:(Ljava/lang/String;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 87
bastore
7: StackMap locals:
StackMap stack:
iconst_1
ireturn
8: StackMap locals:
StackMap stack:
iload 1
bipush 7
if_icmpgt 15
9: aload 2
ifnull 13
10: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 112
iload 1
iadd
i2b
bastore
11: aload 0
aload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.writeType:(Ljava/lang/String;)V
12: goto 14
13: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 120
iload 1
iadd
i2b
bastore
14: StackMap locals:
StackMap stack:
iconst_0
ireturn
15: StackMap locals:
StackMap stack:
aload 2
ifnull 19
16: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 86
bastore
17: aload 0
aload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.writeType:(Ljava/lang/String;)V
18: goto 20
19: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 88
bastore
20: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
21: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 22 1 length I
0 22 2 type Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
length
type
public void writeListEnd();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 90
bastore
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeMapBegin(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
aload 1
ifnull 6
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 77
bastore
4: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeType:(Ljava/lang/String;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 72
bastore
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 8 1 type Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
public void writeMapEnd();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 90
bastore
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public int writeObjectBegin(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._classRefs:Lcom/caucho/hessian/util/IdentityIntMap;
invokevirtual com.caucho.hessian.util.IdentityIntMap.size:()I
istore 2
start local 2 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._classRefs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
iload 2
iconst_0
invokevirtual com.caucho.hessian.util.IdentityIntMap.put:(Ljava/lang/Object;IZ)I
istore 3
start local 3 2: iload 2
iload 3
if_icmpeq 11
3: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iadd
if_icmpge 5
4: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
5: StackMap locals: int int
StackMap stack:
iload 3
bipush 15
if_icmpgt 8
6: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 96
iload 3
iadd
i2b
bastore
7: goto 10
8: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 79
bastore
9: aload 0
iload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
10: StackMap locals:
StackMap stack:
iload 3
ireturn
11: StackMap locals:
StackMap stack:
sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iadd
if_icmpge 13
12: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
13: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 67
bastore
14: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
15: iconst_m1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 16 1 type Ljava/lang/String;
1 16 2 newRef I
2 16 3 ref I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
public void writeClassFieldLength(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
len
public void writeObjectEnd();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
private void writeType(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
1: aload 1
invokevirtual java.lang.String.length:()I
istore 2
start local 2 2: iload 2
ifne 4
3: new java.lang.IllegalArgumentException
dup
ldc "empty type is not allowed"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
ifnonnull 6
5: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
6: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 3
start local 3 7: aload 3
ifnull 11
8: aload 3
invokevirtual java.lang.Integer.intValue:()I
istore 4
start local 4 9: aload 0
iload 4
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
end local 4 10: goto 13
11: StackMap locals: java.lang.Integer
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
aload 1
aload 0
getfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
invokevirtual java.util.HashMap.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeString:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 14 1 type Ljava/lang/String;
2 14 2 len I
7 14 3 typeRefV Ljava/lang/Integer;
9 10 4 typeRef I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
type
public void writeBoolean(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
iload 1
ifeq 4
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 84
bastore
goto 5
4: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 70
bastore
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 6 1 value Z
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public void writeInt(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
start local 2 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 3
start local 3 2: sipush 8192
iload 2
bipush 16
iadd
if_icmpgt 5
3: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
5: StackMap locals: int byte[]
StackMap stack:
bipush -16
iload 1
if_icmpgt 7
iload 1
bipush 47
if_icmpgt 7
6: aload 3
iload 2
iinc 2 1
iload 1
sipush 144
iadd
i2b
bastore
goto 21
7: StackMap locals:
StackMap stack:
sipush -2048
iload 1
if_icmpgt 11
iload 1
sipush 2047
if_icmpgt 11
8: aload 3
iload 2
iinc 2 1
sipush 200
iload 1
bipush 8
ishr
iadd
i2b
bastore
9: aload 3
iload 2
iinc 2 1
iload 1
i2b
bastore
10: goto 21
11: StackMap locals:
StackMap stack:
ldc -262144
iload 1
if_icmpgt 16
iload 1
ldc 262143
if_icmpgt 16
12: aload 3
iload 2
iinc 2 1
sipush 212
iload 1
bipush 16
ishr
iadd
i2b
bastore
13: aload 3
iload 2
iinc 2 1
iload 1
bipush 8
ishr
i2b
bastore
14: aload 3
iload 2
iinc 2 1
iload 1
i2b
bastore
15: goto 21
16: StackMap locals:
StackMap stack:
aload 3
iload 2
iinc 2 1
bipush 73
bastore
17: aload 3
iload 2
iinc 2 1
iload 1
bipush 24
ishr
i2b
bastore
18: aload 3
iload 2
iinc 2 1
iload 1
bipush 16
ishr
i2b
bastore
19: aload 3
iload 2
iinc 2 1
iload 1
bipush 8
ishr
i2b
bastore
20: aload 3
iload 2
iinc 2 1
iload 1
i2b
bastore
21: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield com.caucho.hessian.io.Hessian2Output._offset:I
22: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 23 1 value I
1 23 2 offset I
2 23 3 buffer [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public void writeLong(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
start local 3 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 4
start local 4 2: sipush 8192
iload 3
bipush 16
iadd
if_icmpgt 5
3: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
5: StackMap locals: int byte[]
StackMap stack:
ldc -8
lload 1
lcmp
ifgt 8
lload 1
ldc 15
lcmp
ifgt 8
6: aload 4
iload 3
iinc 3 1
lload 1
ldc 224
ladd
l2i
i2b
bastore
7: goto 35
8: StackMap locals:
StackMap stack:
ldc -2048
lload 1
lcmp
ifgt 12
lload 1
ldc 2047
lcmp
ifgt 12
9: aload 4
iload 3
iinc 3 1
ldc 248
lload 1
bipush 8
lshr
ladd
l2i
i2b
bastore
10: aload 4
iload 3
iinc 3 1
lload 1
l2i
i2b
bastore
11: goto 35
12: StackMap locals:
StackMap stack:
ldc -262144
lload 1
lcmp
ifgt 17
lload 1
ldc 262143
lcmp
ifgt 17
13: aload 4
iload 3
iinc 3 1
ldc 60
lload 1
bipush 16
lshr
ladd
l2i
i2b
bastore
14: aload 4
iload 3
iinc 3 1
lload 1
bipush 8
lshr
l2i
i2b
bastore
15: aload 4
iload 3
iinc 3 1
lload 1
l2i
i2b
bastore
16: goto 35
17: StackMap locals:
StackMap stack:
ldc -2147483648
lload 1
lcmp
ifgt 25
lload 1
ldc 2147483647
lcmp
ifgt 25
18: aload 4
iload 3
iconst_0
iadd
bipush 89
bastore
19: aload 4
iload 3
iconst_1
iadd
lload 1
bipush 24
lshr
l2i
i2b
bastore
20: aload 4
iload 3
iconst_2
iadd
lload 1
bipush 16
lshr
l2i
i2b
bastore
21: aload 4
iload 3
iconst_3
iadd
lload 1
bipush 8
lshr
l2i
i2b
bastore
22: aload 4
iload 3
iconst_4
iadd
lload 1
l2i
i2b
bastore
23: iinc 3 5
24: goto 35
25: StackMap locals:
StackMap stack:
aload 4
iload 3
iconst_0
iadd
bipush 76
bastore
26: aload 4
iload 3
iconst_1
iadd
lload 1
bipush 56
lshr
l2i
i2b
bastore
27: aload 4
iload 3
iconst_2
iadd
lload 1
bipush 48
lshr
l2i
i2b
bastore
28: aload 4
iload 3
iconst_3
iadd
lload 1
bipush 40
lshr
l2i
i2b
bastore
29: aload 4
iload 3
iconst_4
iadd
lload 1
bipush 32
lshr
l2i
i2b
bastore
30: aload 4
iload 3
iconst_5
iadd
lload 1
bipush 24
lshr
l2i
i2b
bastore
31: aload 4
iload 3
bipush 6
iadd
lload 1
bipush 16
lshr
l2i
i2b
bastore
32: aload 4
iload 3
bipush 7
iadd
lload 1
bipush 8
lshr
l2i
i2b
bastore
33: aload 4
iload 3
bipush 8
iadd
lload 1
l2i
i2b
bastore
34: iinc 3 9
35: StackMap locals:
StackMap stack:
aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
36: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 37 1 value J
1 37 3 offset I
2 37 4 buffer [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public void writeDouble(double);
descriptor: (D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
start local 3 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 4
start local 4 2: sipush 8192
iload 3
bipush 16
iadd
if_icmpgt 5
3: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
5: StackMap locals: int byte[]
StackMap stack:
dload 1
d2i
istore 5
start local 5 6: iload 5
i2d
dload 1
dcmpl
ifne 26
7: iload 5
ifne 11
8: aload 4
iload 3
iinc 3 1
bipush 91
bastore
9: aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
10: return
11: StackMap locals: int
StackMap stack:
iload 5
iconst_1
if_icmpne 15
12: aload 4
iload 3
iinc 3 1
bipush 92
bastore
13: aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
14: return
15: StackMap locals:
StackMap stack:
bipush -128
iload 5
if_icmpgt 20
iload 5
sipush 128
if_icmpge 20
16: aload 4
iload 3
iinc 3 1
bipush 93
bastore
17: aload 4
iload 3
iinc 3 1
iload 5
i2b
bastore
18: aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
19: return
20: StackMap locals:
StackMap stack:
sipush -32768
iload 5
if_icmpgt 26
iload 5
ldc 32768
if_icmpge 26
21: aload 4
iload 3
iconst_0
iadd
bipush 94
bastore
22: aload 4
iload 3
iconst_1
iadd
iload 5
bipush 8
ishr
i2b
bastore
23: aload 4
iload 3
iconst_2
iadd
iload 5
i2b
bastore
24: aload 0
iload 3
iconst_3
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
25: return
26: StackMap locals:
StackMap stack:
dload 1
ldc 1000.0
dmul
d2i
istore 6
start local 6 27: ldc 0.001
iload 6
i2d
dmul
dload 1
dcmpl
ifne 35
28: aload 4
iload 3
iconst_0
iadd
bipush 95
bastore
29: aload 4
iload 3
iconst_1
iadd
iload 6
bipush 24
ishr
i2b
bastore
30: aload 4
iload 3
iconst_2
iadd
iload 6
bipush 16
ishr
i2b
bastore
31: aload 4
iload 3
iconst_3
iadd
iload 6
bipush 8
ishr
i2b
bastore
32: aload 4
iload 3
iconst_4
iadd
iload 6
i2b
bastore
33: aload 0
iload 3
iconst_5
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
34: return
35: StackMap locals: int
StackMap stack:
dload 1
invokestatic java.lang.Double.doubleToLongBits:(D)J
lstore 7
start local 7 36: aload 4
iload 3
iconst_0
iadd
bipush 68
bastore
37: aload 4
iload 3
iconst_1
iadd
lload 7
bipush 56
lshr
l2i
i2b
bastore
38: aload 4
iload 3
iconst_2
iadd
lload 7
bipush 48
lshr
l2i
i2b
bastore
39: aload 4
iload 3
iconst_3
iadd
lload 7
bipush 40
lshr
l2i
i2b
bastore
40: aload 4
iload 3
iconst_4
iadd
lload 7
bipush 32
lshr
l2i
i2b
bastore
41: aload 4
iload 3
iconst_5
iadd
lload 7
bipush 24
lshr
l2i
i2b
bastore
42: aload 4
iload 3
bipush 6
iadd
lload 7
bipush 16
lshr
l2i
i2b
bastore
43: aload 4
iload 3
bipush 7
iadd
lload 7
bipush 8
lshr
l2i
i2b
bastore
44: aload 4
iload 3
bipush 8
iadd
lload 7
l2i
i2b
bastore
45: aload 0
iload 3
bipush 9
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
46: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 47 1 value D
1 47 3 offset I
2 47 4 buffer [B
6 47 5 intValue I
27 47 6 mills I
36 47 7 bits J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public void writeUTCDate(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 3
start local 3 3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 4
start local 4 4: lload 1
ldc 60000
lrem
lconst_0
lcmp
ifne 14
5: lload 1
ldc 60000
ldiv
lstore 5
start local 5 6: lload 5
bipush 31
lshr
lconst_0
lcmp
ifeq 7
lload 5
bipush 31
lshr
ldc -1
lcmp
ifne 14
7: StackMap locals: int byte[] long
StackMap stack:
aload 4
iload 3
iinc 3 1
bipush 75
bastore
8: aload 4
iload 3
iinc 3 1
lload 5
bipush 24
lshr
l2i
i2b
bastore
9: aload 4
iload 3
iinc 3 1
lload 5
bipush 16
lshr
l2i
i2b
bastore
10: aload 4
iload 3
iinc 3 1
lload 5
bipush 8
lshr
l2i
i2b
bastore
11: aload 4
iload 3
iinc 3 1
lload 5
iconst_0
lshr
l2i
i2b
bastore
12: aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
13: return
end local 5 14: StackMap locals:
StackMap stack:
aload 4
iload 3
iinc 3 1
bipush 74
bastore
15: aload 4
iload 3
iinc 3 1
lload 1
bipush 56
lshr
l2i
i2b
bastore
16: aload 4
iload 3
iinc 3 1
lload 1
bipush 48
lshr
l2i
i2b
bastore
17: aload 4
iload 3
iinc 3 1
lload 1
bipush 40
lshr
l2i
i2b
bastore
18: aload 4
iload 3
iinc 3 1
lload 1
bipush 32
lshr
l2i
i2b
bastore
19: aload 4
iload 3
iinc 3 1
lload 1
bipush 24
lshr
l2i
i2b
bastore
20: aload 4
iload 3
iinc 3 1
lload 1
bipush 16
lshr
l2i
i2b
bastore
21: aload 4
iload 3
iinc 3 1
lload 1
bipush 8
lshr
l2i
i2b
bastore
22: aload 4
iload 3
iinc 3 1
lload 1
l2i
i2b
bastore
23: aload 0
iload 3
putfield com.caucho.hessian.io.Hessian2Output._offset:I
24: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 25 1 time J
3 25 3 offset I
4 25 4 buffer [B
6 14 5 minutes J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
time
public void writeNull();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 1
start local 1 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 2
start local 2 2: sipush 8192
iload 1
bipush 16
iadd
if_icmpgt 5
3: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 1
5: StackMap locals: int byte[]
StackMap stack:
aload 2
iload 1
iinc 1 1
bipush 78
bastore
6: aload 0
iload 1
putfield com.caucho.hessian.io.Hessian2Output._offset:I
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/caucho/hessian/io/Hessian2Output;
1 8 1 offset I
2 8 2 buffer [B
Exceptions:
throws java.io.IOException
public void writeString(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
start local 2 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 3
start local 3 2: sipush 8192
iload 2
bipush 16
iadd
if_icmpgt 5
3: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
5: StackMap locals: int byte[]
StackMap stack:
aload 1
ifnonnull 9
6: aload 3
iload 2
iinc 2 1
bipush 78
bastore
7: aload 0
iload 2
putfield com.caucho.hessian.io.Hessian2Output._offset:I
8: goto 44
9: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.String.length:()I
istore 4
start local 4 10: iconst_0
istore 5
start local 5 11: goto 27
12: StackMap locals: int int
StackMap stack:
ldc 32768
istore 6
start local 6 13: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
14: sipush 8192
iload 2
bipush 16
iadd
if_icmpgt 17
15: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
16: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
17: StackMap locals: int
StackMap stack:
aload 1
iload 5
iload 6
iadd
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
istore 7
start local 7 18: ldc 55296
iload 7
if_icmpgt 20
iload 7
ldc 56319
if_icmpgt 20
19: iinc 6 -1
20: StackMap locals: int
StackMap stack:
aload 3
iload 2
iconst_0
iadd
bipush 82
bastore
21: aload 3
iload 2
iconst_1
iadd
iload 6
bipush 8
ishr
i2b
bastore
22: aload 3
iload 2
iconst_2
iadd
iload 6
i2b
bastore
23: aload 0
iload 2
iconst_3
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
24: aload 0
aload 1
iload 5
iload 6
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:(Ljava/lang/String;II)V
25: iload 4
iload 6
isub
istore 4
26: iload 5
iload 6
iadd
istore 5
end local 7 end local 6 27: StackMap locals:
StackMap stack:
iload 4
ldc 32768
if_icmpgt 12
28: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
29: sipush 8192
iload 2
bipush 16
iadd
if_icmpgt 32
30: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
31: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 2
32: StackMap locals:
StackMap stack:
iload 4
bipush 31
if_icmpgt 35
33: aload 3
iload 2
iinc 2 1
iconst_0
iload 4
iadd
i2b
bastore
34: goto 42
35: StackMap locals:
StackMap stack:
iload 4
sipush 1023
if_icmpgt 39
36: aload 3
iload 2
iinc 2 1
bipush 48
iload 4
bipush 8
ishr
iadd
i2b
bastore
37: aload 3
iload 2
iinc 2 1
iload 4
i2b
bastore
38: goto 42
39: StackMap locals:
StackMap stack:
aload 3
iload 2
iinc 2 1
bipush 83
bastore
40: aload 3
iload 2
iinc 2 1
iload 4
bipush 8
ishr
i2b
bastore
41: aload 3
iload 2
iinc 2 1
iload 4
i2b
bastore
42: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield com.caucho.hessian.io.Hessian2Output._offset:I
43: aload 0
aload 1
iload 5
iload 4
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:(Ljava/lang/String;II)V
end local 5 end local 4 44: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 45 1 value Ljava/lang/String;
1 45 2 offset I
2 45 3 buffer [B
10 44 4 length I
11 44 5 strOffset I
13 27 6 sublen I
18 27 7 tail C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public void writeString(char[], int, int);
descriptor: ([CII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 17
1: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 3
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 78
bastore
4: goto 31
5: StackMap locals:
StackMap stack:
ldc 32768
istore 4
start local 4 6: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 8
7: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
8: StackMap locals: int
StackMap stack:
aload 1
iload 2
iload 4
iadd
iconst_1
isub
caload
istore 5
start local 5 9: ldc 55296
iload 5
if_icmpgt 11
iload 5
ldc 56319
if_icmpgt 11
10: iinc 4 -1
11: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 82
bastore
12: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
bipush 8
ishr
i2b
bastore
13: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
i2b
bastore
14: aload 0
aload 1
iload 2
iload 4
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:([CII)V
15: iload 3
iload 4
isub
istore 3
16: iload 2
iload 4
iadd
istore 2
end local 5 end local 4 17: StackMap locals:
StackMap stack:
iload 3
ldc 32768
if_icmpgt 5
18: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 20
19: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
20: StackMap locals:
StackMap stack:
iload 3
bipush 31
if_icmpgt 23
21: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
iload 3
iadd
i2b
bastore
22: goto 30
23: StackMap locals:
StackMap stack:
iload 3
sipush 1023
if_icmpgt 27
24: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 48
iload 3
bipush 8
ishr
iadd
i2b
bastore
25: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
i2b
bastore
26: goto 30
27: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 83
bastore
28: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
bipush 8
ishr
i2b
bastore
29: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
i2b
bastore
30: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
iload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:([CII)V
31: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 32 1 buffer [C
0 32 2 offset I
0 32 3 length I
6 17 4 sublen I
9 17 5 tail C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
offset
length
public void writeBytes(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 5
1: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 3
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 78
bastore
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_0
aload 1
arraylength
invokevirtual com.caucho.hessian.io.Hessian2Output.writeBytes:([BII)V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 7 1 buffer [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
public void writeBytes(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 19
1: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 3
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 78
bastore
4: goto 34
5: StackMap locals:
StackMap stack:
sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
iconst_3
isub
istore 4
start local 4 6: iload 4
bipush 16
if_icmpge 11
7: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
8: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
iconst_3
isub
istore 4
9: iload 3
iload 4
if_icmpge 11
10: iload 3
istore 4
11: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 65
bastore
12: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
bipush 8
ishr
i2b
bastore
13: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
i2b
bastore
14: aload 1
iload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
15: aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
16: iload 3
iload 4
isub
istore 3
17: iload 2
iload 4
iadd
istore 2
18: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
end local 4 19: StackMap locals:
StackMap stack:
sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
iconst_3
isub
iload 3
if_icmplt 5
20: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 22
21: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
22: StackMap locals:
StackMap stack:
iload 3
bipush 15
if_icmpgt 25
23: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
iload 3
iadd
i2b
bastore
24: goto 32
25: StackMap locals:
StackMap stack:
iload 3
sipush 1023
if_icmpgt 29
26: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 52
iload 3
bipush 8
ishr
iadd
i2b
bastore
27: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
i2b
bastore
28: goto 32
29: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 66
bastore
30: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
bipush 8
ishr
i2b
bastore
31: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
i2b
bastore
32: StackMap locals:
StackMap stack:
aload 1
iload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
33: aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 3
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
34: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 35 1 buffer [B
0 35 2 offset I
0 35 3 length I
6 19 4 sublen I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
offset
length
public void writeByteBufferStart();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeByteBufferPart(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: goto 12
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushIfFull:()V
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
arraylength
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
istore 4
start local 4 3: iload 3
iload 4
if_icmpge 5
4: iload 3
istore 4
5: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 65
bastore
6: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
bipush 8
ishr
i2b
bastore
7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
i2b
bastore
8: aload 1
iload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 4
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
10: iload 3
iload 4
isub
istore 3
11: iload 2
iload 4
iadd
istore 2
end local 4 12: StackMap locals:
StackMap stack:
iload 3
ifgt 1
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 14 1 buffer [B
0 14 2 offset I
0 14 3 length I
3 12 4 sublen I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
offset
length
public void writeByteBufferEnd(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.writeBytes:([BII)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 buffer [B
0 2 2 offset I
0 2 3 length I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buffer
offset
length
public java.io.OutputStream getBytesOutputStream();
descriptor: ()Ljava/io/OutputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.caucho.hessian.io.Hessian2Output$BytesOutputStream
dup
aload 0
invokespecial com.caucho.hessian.io.Hessian2Output$BytesOutputStream.<init>:(Lcom/caucho/hessian/io/Hessian2Output;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void writeByteStream(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
iconst_3
isub
istore 2
start local 2 1: iload 2
bipush 16
if_icmpge 4
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
isub
iconst_3
isub
istore 2
4: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_3
iadd
iload 2
invokevirtual java.io.InputStream.read:([BII)I
istore 2
5: iload 2
ifgt 8
6: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 32
bastore
7: return
8: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
iadd
bipush 65
bastore
9: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_1
iadd
iload 2
bipush 8
ishr
i2b
bastore
10: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_2
iadd
iload 2
i2b
bastore
11: aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 2
iconst_3
iadd
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
end local 2 12: goto 0
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 13 1 is Ljava/io/InputStream;
1 12 2 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
is
protected void writeRef(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 81
bastore
3: aload 0
iload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeInt:(I)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 5 1 value I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
public boolean addRef(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
ifeq 3
1: aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._refCount:I
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._refCount:I
istore 2
start local 2 4: aload 0
aload 1
iload 2
iconst_0
invokevirtual com.caucho.hessian.io.Hessian2Output.addRef:(Ljava/lang/Object;IZ)I
istore 3
start local 3 5: iload 3
iload 2
if_icmpeq 8
6: aload 0
iload 3
invokevirtual com.caucho.hessian.io.Hessian2Output.writeRef:(I)V
7: iconst_1
ireturn
8: StackMap locals: int int
StackMap stack:
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._refCount:I
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
9: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 10 1 object Ljava/lang/Object;
4 10 2 newRef I
5 10 3 ref I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
object
public int getRef(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
ifeq 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
invokevirtual com.caucho.hessian.util.IdentityIntMap.get:(Ljava/lang/Object;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 3 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public boolean removeRef(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
ifnull 5
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
invokevirtual com.caucho.hessian.util.IdentityIntMap.remove:(Ljava/lang/Object;)V
4: iconst_1
ireturn
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 6 1 obj Ljava/lang/Object;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
obj
public boolean replaceRef(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
invokevirtual com.caucho.hessian.util.IdentityIntMap.get:(Ljava/lang/Object;)I
istore 3
start local 3 3: iload 3
iflt 7
4: aload 0
aload 2
iload 3
iconst_1
invokevirtual com.caucho.hessian.io.Hessian2Output.addRef:(Ljava/lang/Object;IZ)I
pop
5: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
invokevirtual com.caucho.hessian.util.IdentityIntMap.remove:(Ljava/lang/Object;)V
6: iconst_1
ireturn
7: StackMap locals: int
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 8 1 oldRef Ljava/lang/Object;
0 8 2 newRef Ljava/lang/Object;
3 8 3 value I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
oldRef
newRef
private int addRef(java.lang.Object, int, boolean);
descriptor: (Ljava/lang/Object;IZ)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
aload 1
iload 2
iload 3
invokevirtual com.caucho.hessian.util.IdentityIntMap.put:(Ljava/lang/Object;IZ)I
istore 4
start local 4 1: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 value Ljava/lang/Object;
0 2 2 newRef I
0 2 3 isReplace Z
1 2 4 prevRef I
MethodParameters:
Name Flags
value
newRef
isReplace
public void writeStreamingObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.startPacket:()V
1: aload 0
aload 1
invokevirtual com.caucho.hessian.io.Hessian2Output.writeObject:(Ljava/lang/Object;)V
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.endPacket:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 4 1 obj Ljava/lang/Object;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
obj
public void startPacket();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
ifnull 3
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
invokevirtual com.caucho.hessian.util.IdentityIntMap.clear:()V
2: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
4: aload 0
iconst_1
putfield com.caucho.hessian.io.Hessian2Output._isPacket:Z
5: aload 0
iconst_4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
6: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
iconst_5
bastore
7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_1
bipush 85
bastore
8: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
bipush 85
bastore
9: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_3
bipush 85
bastore
10: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public void endPacket();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 1
start local 1 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
astore 2
start local 2 2: aload 2
ifnonnull 5
3: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._offset:I
4: return
5: StackMap locals: int java.io.OutputStream
StackMap stack:
iload 1
iconst_4
isub
istore 3
start local 3 6: iload 3
bipush 126
if_icmpge 10
7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
baload
bastore
8: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_3
iload 3
i2b
bastore
9: goto 13
10: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_1
bipush 126
bastore
11: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
iload 3
bipush 8
ishr
i2b
bastore
12: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_3
iload 3
i2b
bastore
13: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._isPacket:Z
14: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._offset:I
15: aload 2
ifnull 20
16: iload 3
bipush 126
if_icmpge 19
17: aload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
iload 1
iconst_2
isub
invokevirtual java.io.OutputStream.write:([BII)V
18: goto 20
19: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
iload 1
invokevirtual java.io.OutputStream.write:([BII)V
20: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/caucho/hessian/io/Hessian2Output;
1 21 1 offset I
2 21 2 os Ljava/io/OutputStream;
6 21 3 len I
Exceptions:
throws java.io.IOException
public void printLenString(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: sipush 8192
aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
bipush 16
iadd
if_icmpge 2
1: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
3: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
bastore
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iconst_0
bastore
5: goto 10
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.String.length:()I
istore 2
start local 2 7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 2
bipush 8
ishr
i2b
bastore
8: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
aload 0
dup
getfield com.caucho.hessian.io.Hessian2Output._offset:I
dup_x1
iconst_1
iadd
putfield com.caucho.hessian.io.Hessian2Output._offset:I
iload 2
i2b
bastore
9: aload 0
aload 1
iconst_0
iload 2
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:(Ljava/lang/String;II)V
end local 2 10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 11 1 v Ljava/lang/String;
7 10 2 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
v
public void printString(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
invokevirtual com.caucho.hessian.io.Hessian2Output.printString:(Ljava/lang/String;II)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 2 1 v Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
v
public void printString(java.lang.String, int, int);
descriptor: (Ljava/lang/String;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 4
start local 4 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 5
start local 5 2: iconst_0
istore 6
start local 6 3: goto 19
4: StackMap locals: int byte[] int
StackMap stack:
sipush 8192
iload 4
bipush 16
iadd
if_icmpgt 8
5: aload 0
iload 4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
6: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 4
8: StackMap locals:
StackMap stack:
aload 1
iload 6
iload 2
iadd
invokevirtual java.lang.String.charAt:(I)C
istore 7
start local 7 9: iload 7
sipush 128
if_icmpge 11
10: aload 5
iload 4
iinc 4 1
iload 7
i2b
bastore
goto 18
11: StackMap locals: int
StackMap stack:
iload 7
sipush 2048
if_icmpge 15
12: aload 5
iload 4
iinc 4 1
sipush 192
iload 7
bipush 6
ishr
bipush 31
iand
iadd
i2b
bastore
13: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 63
iand
iadd
i2b
bastore
14: goto 18
15: StackMap locals:
StackMap stack:
aload 5
iload 4
iinc 4 1
sipush 224
iload 7
bipush 12
ishr
bipush 15
iand
iadd
i2b
bastore
16: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 6
ishr
bipush 63
iand
iadd
i2b
bastore
17: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 63
iand
iadd
i2b
bastore
end local 7 18: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
19: iload 6
iload 3
if_icmplt 4
end local 6 20: aload 0
iload 4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
21: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 22 1 v Ljava/lang/String;
0 22 2 strOffset I
0 22 3 length I
1 22 4 offset I
2 22 5 buffer [B
3 20 6 i I
9 18 7 ch C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
v
strOffset
length
public void printString(char[], int, int);
descriptor: ([CII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 4
start local 4 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
astore 5
start local 5 2: iconst_0
istore 6
start local 6 3: goto 19
4: StackMap locals: int byte[] int
StackMap stack:
sipush 8192
iload 4
bipush 16
iadd
if_icmpgt 8
5: aload 0
iload 4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
6: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
7: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 4
8: StackMap locals:
StackMap stack:
aload 1
iload 6
iload 2
iadd
caload
istore 7
start local 7 9: iload 7
sipush 128
if_icmpge 11
10: aload 5
iload 4
iinc 4 1
iload 7
i2b
bastore
goto 18
11: StackMap locals: int
StackMap stack:
iload 7
sipush 2048
if_icmpge 15
12: aload 5
iload 4
iinc 4 1
sipush 192
iload 7
bipush 6
ishr
bipush 31
iand
iadd
i2b
bastore
13: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 63
iand
iadd
i2b
bastore
14: goto 18
15: StackMap locals:
StackMap stack:
aload 5
iload 4
iinc 4 1
sipush 224
iload 7
bipush 12
ishr
bipush 15
iand
iadd
i2b
bastore
16: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 6
ishr
bipush 63
iand
iadd
i2b
bastore
17: aload 5
iload 4
iinc 4 1
sipush 128
iload 7
bipush 63
iand
iadd
i2b
bastore
end local 7 18: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
19: iload 6
iload 3
if_icmplt 4
end local 6 20: aload 0
iload 4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
21: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/caucho/hessian/io/Hessian2Output;
0 22 1 v [C
0 22 2 strOffset I
0 22 3 length I
1 22 4 offset I
2 22 5 buffer [B
3 20 6 i I
9 18 7 ch C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
v
strOffset
length
private final void flushIfFull();
descriptor: ()V
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 1
start local 1 1: sipush 8192
iload 1
bipush 32
iadd
if_icmpge 3
2: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
3: StackMap locals: int
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
1 4 1 offset I
Exceptions:
throws java.io.IOException
public final void flush();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flushBuffer:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
ifnull 3
2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
Exceptions:
throws java.io.IOException
public final void flushBuffer();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._offset:I
istore 1
start local 1 1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
astore 2
start local 2 2: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isPacket:Z
ifne 7
iload 1
ifle 7
3: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._offset:I
4: aload 2
ifnull 20
5: aload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
iload 1
invokevirtual java.io.OutputStream.write:([BII)V
6: goto 20
7: StackMap locals: int java.io.OutputStream
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._isPacket:Z
ifeq 20
iload 1
iconst_4
if_icmple 20
8: iload 1
iconst_4
isub
istore 3
start local 3 9: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
dup2
baload
bipush -128
ior
i2b
bastore
10: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_1
bipush 126
bastore
11: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
iload 3
bipush 8
ishr
i2b
bastore
12: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_3
iload 3
i2b
bastore
13: aload 0
iconst_4
putfield com.caucho.hessian.io.Hessian2Output._offset:I
14: aload 2
ifnull 16
15: aload 2
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
iload 1
invokevirtual java.io.OutputStream.write:([BII)V
16: StackMap locals: int
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_0
iconst_0
bastore
17: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_1
bipush 86
bastore
18: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_2
bipush 86
bastore
19: aload 0
getfield com.caucho.hessian.io.Hessian2Output._buffer:[B
iconst_3
bipush 86
bastore
end local 3 20: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/caucho/hessian/io/Hessian2Output;
1 21 1 offset I
2 21 2 os Ljava/io/OutputStream;
9 20 3 len I
Exceptions:
throws java.io.IOException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.flush:()V
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
astore 1
start local 1 2: aload 0
aconst_null
putfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
3: aload 1
ifnull 6
4: aload 0
getfield com.caucho.hessian.io.Hessian2Output._isCloseStreamOnClose:Z
ifeq 6
5: aload 1
invokevirtual java.io.OutputStream.close:()V
6: StackMap locals: java.io.OutputStream
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/caucho/hessian/io/Hessian2Output;
2 7 1 os Ljava/io/OutputStream;
Exceptions:
throws java.io.IOException
public void free();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.caucho.hessian.io.Hessian2Output.reset:()V
1: aload 0
aconst_null
putfield com.caucho.hessian.io.Hessian2Output._os:Ljava/io/OutputStream;
2: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._isCloseStreamOnClose:Z
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
public void resetReferences();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
ifnull 3
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
invokevirtual com.caucho.hessian.util.IdentityIntMap.clear:()V
2: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/Hessian2Output;
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
ifnull 3
1: aload 0
getfield com.caucho.hessian.io.Hessian2Output._refs:Lcom/caucho/hessian/util/IdentityIntMap;
invokevirtual com.caucho.hessian.util.IdentityIntMap.clear:()V
2: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._refCount:I
3: StackMap locals:
StackMap stack:
aload 0
getfield com.caucho.hessian.io.Hessian2Output._classRefs:Lcom/caucho/hessian/util/IdentityIntMap;
invokevirtual com.caucho.hessian.util.IdentityIntMap.clear:()V
4: aload 0
aconst_null
putfield com.caucho.hessian.io.Hessian2Output._typeRefs:Ljava/util/HashMap;
5: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._offset:I
6: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._isPacket:Z
7: aload 0
iconst_0
putfield com.caucho.hessian.io.Hessian2Output._isUnshared:Z
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/caucho/hessian/io/Hessian2Output;
}
SourceFile: "Hessian2Output.java"
NestMembers:
com.caucho.hessian.io.Hessian2Output$BytesOutputStream
InnerClasses:
BytesOutputStream = com.caucho.hessian.io.Hessian2Output$BytesOutputStream of com.caucho.hessian.io.Hessian2Output