public final class sun.rmi.transport.DGCImpl_Stub extends java.rmi.server.RemoteStub implements java.rmi.dgc.DGC
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.rmi.transport.DGCImpl_Stub
super_class: java.rmi.server.RemoteStub
{
private static final java.rmi.server.Operation[] operations;
descriptor: [Ljava/rmi/server/Operation;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long interfaceHash;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -669196253586618813
private static int DGCCLIENT_MAX_DEPTH;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int DGCCLIENT_MAX_ARRAY_SIZE;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: iconst_2
anewarray java.rmi.server.Operation
dup
iconst_0
1: new java.rmi.server.Operation
dup
ldc "void clean(java.rmi.server.ObjID[], long, java.rmi.dgc.VMID, boolean)"
invokespecial java.rmi.server.Operation.<init>:(Ljava/lang/String;)V
aastore
dup
iconst_1
2: new java.rmi.server.Operation
dup
ldc "java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease)"
invokespecial java.rmi.server.Operation.<init>:(Ljava/lang/String;)V
aastore
3: putstatic sun.rmi.transport.DGCImpl_Stub.operations:[Ljava/rmi/server/Operation;
4: bipush 6
putstatic sun.rmi.transport.DGCImpl_Stub.DGCCLIENT_MAX_DEPTH:I
5: sipush 10000
putstatic sun.rmi.transport.DGCImpl_Stub.DGCCLIENT_MAX_ARRAY_SIZE:I
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.rmi.server.RemoteStub.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/rmi/transport/DGCImpl_Stub;
public void <init>(java.rmi.server.RemoteRef);
descriptor: (Ljava/rmi/server/RemoteRef;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial java.rmi.server.RemoteStub.<init>:(Ljava/rmi/server/RemoteRef;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/rmi/transport/DGCImpl_Stub;
0 2 1 ref Ljava/rmi/server/RemoteRef;
MethodParameters:
Name Flags
ref
public void clean(java.rmi.server.ObjID[], long, java.rmi.dgc.VMID, boolean);
descriptor: ([Ljava/rmi/server/ObjID;JLjava/rmi/dgc/VMID;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 0
getstatic sun.rmi.transport.DGCImpl_Stub.operations:[Ljava/rmi/server/Operation;
iconst_0
ldc -669196253586618813
invokeinterface java.rmi.server.RemoteRef.newCall:(Ljava/rmi/server/RemoteObject;[Ljava/rmi/server/Operation;IJ)Ljava/rmi/server/RemoteCall;
astore 6
start local 6 1: aload 6
invokeinterface java.rmi.server.RemoteCall.getOutputStream:()Ljava/io/ObjectOutput;
astore 7
start local 7 2: aload 7
aload 1
invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
3: aload 7
lload 2
invokeinterface java.io.ObjectOutput.writeLong:(J)V
4: aload 7
aload 4
invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
5: aload 7
iload 5
invokeinterface java.io.ObjectOutput.writeBoolean:(Z)V
end local 7 6: goto 9
StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.VMID int java.rmi.server.RemoteCall
StackMap stack: java.io.IOException
7: astore 7
start local 7 8: new java.rmi.MarshalException
dup
ldc "error marshalling arguments"
aload 7
invokespecial java.rmi.MarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 7 9: StackMap locals:
StackMap stack:
aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 6
invokeinterface java.rmi.server.RemoteRef.invoke:(Ljava/rmi/server/RemoteCall;)V
10: aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 6
invokeinterface java.rmi.server.RemoteRef.done:(Ljava/rmi/server/RemoteCall;)V
end local 6 11: goto 18
StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.VMID int
StackMap stack: java.lang.RuntimeException
12: astore 6
start local 6 13: aload 6
athrow
end local 6 14: StackMap locals:
StackMap stack: java.rmi.RemoteException
astore 6
start local 6 15: aload 6
athrow
end local 6 16: StackMap locals:
StackMap stack: java.lang.Exception
astore 6
start local 6 17: new java.rmi.UnexpectedException
dup
ldc "undeclared checked exception"
aload 6
invokespecial java.rmi.UnexpectedException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 6 18: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/rmi/transport/DGCImpl_Stub;
0 19 1 $param_arrayOf_ObjID_1 [Ljava/rmi/server/ObjID;
0 19 2 $param_long_2 J
0 19 4 $param_VMID_3 Ljava/rmi/dgc/VMID;
0 19 5 $param_boolean_4 Z
1 11 6 call Ljava/rmi/server/RemoteCall;
2 6 7 out Ljava/io/ObjectOutput;
8 9 7 e Ljava/io/IOException;
13 14 6 e Ljava/lang/RuntimeException;
15 16 6 e Ljava/rmi/RemoteException;
17 18 6 e Ljava/lang/Exception;
Exception table:
from to target type
1 6 7 Class java.io.IOException
0 11 12 Class java.lang.RuntimeException
0 11 14 Class java.rmi.RemoteException
0 11 16 Class java.lang.Exception
Exceptions:
throws java.rmi.RemoteException
MethodParameters:
Name Flags
$param_arrayOf_ObjID_1
$param_long_2
$param_VMID_3
$param_boolean_4
public java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease);
descriptor: ([Ljava/rmi/server/ObjID;JLjava/rmi/dgc/Lease;)Ljava/rmi/dgc/Lease;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 0
getstatic sun.rmi.transport.DGCImpl_Stub.operations:[Ljava/rmi/server/Operation;
iconst_1
ldc -669196253586618813
invokeinterface java.rmi.server.RemoteRef.newCall:(Ljava/rmi/server/RemoteObject;[Ljava/rmi/server/Operation;IJ)Ljava/rmi/server/RemoteCall;
astore 5
start local 5 1: aload 5
invokeinterface java.rmi.server.RemoteCall.getOutputStream:()Ljava/io/ObjectOutput;
astore 6
start local 6 2: aload 6
aload 1
invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
3: aload 6
lload 2
invokeinterface java.io.ObjectOutput.writeLong:(J)V
4: aload 6
aload 4
invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
end local 6 5: goto 8
StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease java.rmi.server.RemoteCall
StackMap stack: java.io.IOException
6: astore 6
start local 6 7: new java.rmi.MarshalException
dup
ldc "error marshalling arguments"
aload 6
invokespecial java.rmi.MarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 6 8: StackMap locals:
StackMap stack:
aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 5
invokeinterface java.rmi.server.RemoteRef.invoke:(Ljava/rmi/server/RemoteCall;)V
9: aload 5
checkcast sun.rmi.transport.StreamRemoteCall
invokevirtual sun.rmi.transport.StreamRemoteCall.getConnection:()Lsun/rmi/transport/Connection;
astore 7
start local 7 10: aload 5
invokeinterface java.rmi.server.RemoteCall.getInputStream:()Ljava/io/ObjectInput;
astore 8
start local 8 11: aload 8
instanceof java.io.ObjectInputStream
ifeq 14
12: aload 8
checkcast java.io.ObjectInputStream
astore 9
start local 9 13: aload 9
invokedynamic run(Ljava/io/ObjectInputStream;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
sun/rmi/transport/DGCImpl_Stub.lambda$0(Ljava/io/ObjectInputStream;)Ljava/lang/Void; (6)
()Ljava/lang/Void;
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
end local 9 14: StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease java.rmi.server.RemoteCall top sun.rmi.transport.Connection java.io.ObjectInput
StackMap stack:
aload 8
invokeinterface java.io.ObjectInput.readObject:()Ljava/lang/Object;
checkcast java.rmi.dgc.Lease
astore 6
end local 8 start local 6 15: goto 23
end local 6 StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease java.rmi.server.RemoteCall top sun.rmi.transport.Connection
StackMap stack: java.lang.Exception
16: astore 8
start local 8 17: aload 7
instanceof sun.rmi.transport.tcp.TCPConnection
ifeq 19
18: aload 7
checkcast sun.rmi.transport.tcp.TCPConnection
invokevirtual sun.rmi.transport.tcp.TCPConnection.getChannel:()Lsun/rmi/transport/Channel;
aload 7
iconst_0
invokeinterface sun.rmi.transport.Channel.free:(Lsun/rmi/transport/Connection;Z)V
19: StackMap locals: java.lang.Exception
StackMap stack:
new java.rmi.UnmarshalException
dup
ldc "error unmarshalling return"
aload 8
invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 8 20: StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease java.rmi.server.RemoteCall top sun.rmi.transport.Connection
StackMap stack: java.lang.Throwable
astore 10
21: aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 5
invokeinterface java.rmi.server.RemoteRef.done:(Ljava/rmi/server/RemoteCall;)V
22: aload 10
athrow
start local 6 23: StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease java.rmi.server.RemoteCall java.rmi.dgc.Lease sun.rmi.transport.Connection
StackMap stack:
aload 0
getfield sun.rmi.transport.DGCImpl_Stub.ref:Ljava/rmi/server/RemoteRef;
aload 5
invokeinterface java.rmi.server.RemoteRef.done:(Ljava/rmi/server/RemoteCall;)V
24: aload 6
25: areturn
end local 7 end local 6 end local 5 26: StackMap locals: sun.rmi.transport.DGCImpl_Stub java.rmi.server.ObjID[] long java.rmi.dgc.Lease
StackMap stack: java.lang.RuntimeException
astore 5
start local 5 27: aload 5
athrow
end local 5 28: StackMap locals:
StackMap stack: java.rmi.RemoteException
astore 5
start local 5 29: aload 5
athrow
end local 5 30: StackMap locals:
StackMap stack: java.lang.Exception
astore 5
start local 5 31: new java.rmi.UnexpectedException
dup
ldc "undeclared checked exception"
aload 5
invokespecial java.rmi.UnexpectedException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lsun/rmi/transport/DGCImpl_Stub;
0 32 1 $param_arrayOf_ObjID_1 [Ljava/rmi/server/ObjID;
0 32 2 $param_long_2 J
0 32 4 $param_Lease_3 Ljava/rmi/dgc/Lease;
1 26 5 call Ljava/rmi/server/RemoteCall;
2 5 6 out Ljava/io/ObjectOutput;
7 8 6 e Ljava/io/IOException;
15 16 6 $result Ljava/rmi/dgc/Lease;
23 26 6 $result Ljava/rmi/dgc/Lease;
10 26 7 connection Lsun/rmi/transport/Connection;
11 15 8 in Ljava/io/ObjectInput;
13 14 9 ois Ljava/io/ObjectInputStream;
17 20 8 e Ljava/lang/Exception;
27 28 5 e Ljava/lang/RuntimeException;
29 30 5 e Ljava/rmi/RemoteException;
31 32 5 e Ljava/lang/Exception;
Exception table:
from to target type
1 5 6 Class java.io.IOException
10 15 16 Class java.io.IOException
10 15 16 Class java.lang.ClassNotFoundException
10 20 20 any
0 25 26 Class java.lang.RuntimeException
0 25 28 Class java.rmi.RemoteException
0 25 30 Class java.lang.Exception
Exceptions:
throws java.rmi.RemoteException
MethodParameters:
Name Flags
$param_arrayOf_ObjID_1
$param_long_2
$param_Lease_3
private static java.io.ObjectInputFilter$Status leaseFilter(java.io.ObjectInputFilter$FilterInfo);
descriptor: (Ljava/io/ObjectInputFilter$FilterInfo;)Ljava/io/ObjectInputFilter$Status;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokeinterface java.io.ObjectInputFilter$FilterInfo.depth:()J
getstatic sun.rmi.transport.DGCImpl_Stub.DGCCLIENT_MAX_DEPTH:I
i2l
lcmp
ifle 2
1: getstatic java.io.ObjectInputFilter$Status.REJECTED:Ljava/io/ObjectInputFilter$Status;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.io.ObjectInputFilter$FilterInfo.serialClass:()Ljava/lang/Class;
astore 1
start local 1 3: aload 1
ifnull 17
4: goto 8
5: StackMap locals: java.lang.Class
StackMap stack:
aload 0
invokeinterface java.io.ObjectInputFilter$FilterInfo.arrayLength:()J
lconst_0
lcmp
iflt 7
aload 0
invokeinterface java.io.ObjectInputFilter$FilterInfo.arrayLength:()J
getstatic sun.rmi.transport.DGCImpl_Stub.DGCCLIENT_MAX_ARRAY_SIZE:I
i2l
lcmp
ifle 7
6: getstatic java.io.ObjectInputFilter$Status.REJECTED:Ljava/io/ObjectInputFilter$Status;
areturn
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
astore 1
8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.isArray:()Z
ifne 5
9: aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 11
10: getstatic java.io.ObjectInputFilter$Status.ALLOWED:Ljava/io/ObjectInputFilter$Status;
areturn
11: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/rmi/server/UID;
if_acmpeq 14
12: aload 1
ldc Ljava/rmi/dgc/VMID;
if_acmpeq 14
13: aload 1
ldc Ljava/rmi/dgc/Lease;
if_acmpne 15
14: StackMap locals:
StackMap stack:
getstatic java.io.ObjectInputFilter$Status.ALLOWED:Ljava/io/ObjectInputFilter$Status;
goto 16
15: StackMap locals:
StackMap stack:
getstatic java.io.ObjectInputFilter$Status.REJECTED:Ljava/io/ObjectInputFilter$Status;
16: StackMap locals:
StackMap stack: java.io.ObjectInputFilter$Status
areturn
17: StackMap locals:
StackMap stack:
getstatic java.io.ObjectInputFilter$Status.UNDECIDED:Ljava/io/ObjectInputFilter$Status;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 filterInfo Ljava/io/ObjectInputFilter$FilterInfo;
3 18 1 clazz Ljava/lang/Class<*>;
MethodParameters:
Name Flags
filterInfo
private static java.lang.Void lambda$0(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)Ljava/lang/Void;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
0: aload 0
invokedynamic checkInput()Ljava/io/ObjectInputFilter;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/io/ObjectInputFilter$FilterInfo;)Ljava/io/ObjectInputFilter$Status;
sun/rmi/transport/DGCImpl_Stub.leaseFilter(Ljava/io/ObjectInputFilter$FilterInfo;)Ljava/io/ObjectInputFilter$Status; (6)
(Ljava/io/ObjectInputFilter$FilterInfo;)Ljava/io/ObjectInputFilter$Status;
invokevirtual java.io.ObjectInputStream.setObjectInputFilter:(Ljava/io/ObjectInputFilter;)V
1: aconst_null
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "DGCImpl_Stub.java"
InnerClasses:
public abstract FilterInfo = java.io.ObjectInputFilter$FilterInfo of java.io.ObjectInputFilter
public final Status = java.io.ObjectInputFilter$Status of java.io.ObjectInputFilter
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles