public class java.beans.Encoder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.beans.Encoder
super_class: java.lang.Object
{
private final com.sun.beans.finder.PersistenceDelegateFinder finder;
descriptor: Lcom/sun/beans/finder/PersistenceDelegateFinder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.Map<java.lang.Object, java.beans.Expression> bindings;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/Object;Ljava/beans/Expression;>;
private java.beans.ExceptionListener exceptionListener;
descriptor: Ljava/beans/ExceptionListener;
flags: (0x0002) ACC_PRIVATE
boolean executeStatements;
descriptor: Z
flags: (0x0000)
private java.util.Map<java.lang.Object, java.lang.Object> attributes;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new com.sun.beans.finder.PersistenceDelegateFinder
dup
invokespecial com.sun.beans.finder.PersistenceDelegateFinder.<init>:()V
putfield java.beans.Encoder.finder:Lcom/sun/beans/finder/PersistenceDelegateFinder;
2: aload 0
new java.util.IdentityHashMap
dup
invokespecial java.util.IdentityHashMap.<init>:()V
putfield java.beans.Encoder.bindings:Ljava/util/Map;
3: aload 0
iconst_1
putfield java.beans.Encoder.executeStatements:Z
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/beans/Encoder;
protected void writeObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
ifnonnull 3
aconst_null
goto 4
StackMap locals:
StackMap stack: java.beans.Encoder
3: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
StackMap locals: java.beans.Encoder java.lang.Object
StackMap stack: java.beans.Encoder java.lang.Class
4: invokevirtual java.beans.Encoder.getPersistenceDelegate:(Ljava/lang/Class;)Ljava/beans/PersistenceDelegate;
astore 2
start local 2 5: aload 2
aload 1
aload 0
invokevirtual java.beans.PersistenceDelegate.writeObject:(Ljava/lang/Object;Ljava/beans/Encoder;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/beans/Encoder;
0 7 1 o Ljava/lang/Object;
5 7 2 info Ljava/beans/PersistenceDelegate;
MethodParameters:
Name Flags
o
public void setExceptionListener(java.beans.ExceptionListener);
descriptor: (Ljava/beans/ExceptionListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.beans.Encoder.exceptionListener:Ljava/beans/ExceptionListener;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/beans/Encoder;
0 2 1 exceptionListener Ljava/beans/ExceptionListener;
MethodParameters:
Name Flags
exceptionListener
public java.beans.ExceptionListener getExceptionListener();
descriptor: ()Ljava/beans/ExceptionListener;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.beans.Encoder.exceptionListener:Ljava/beans/ExceptionListener;
ifnull 1
aload 0
getfield java.beans.Encoder.exceptionListener:Ljava/beans/ExceptionListener;
goto 2
StackMap locals:
StackMap stack:
1: getstatic java.beans.Statement.defaultExceptionListener:Ljava/beans/ExceptionListener;
StackMap locals:
StackMap stack: java.beans.ExceptionListener
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/beans/Encoder;
java.lang.Object getValue(java.beans.Expression);
descriptor: (Ljava/beans/Expression;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: aload 1
invokevirtual java.beans.Expression.getValue:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
2: areturn
3: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 4: aload 0
invokevirtual java.beans.Encoder.getExceptionListener:()Ljava/beans/ExceptionListener;
aload 2
invokeinterface java.beans.ExceptionListener.exceptionThrown:(Ljava/lang/Exception;)V
5: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "failed to evaluate: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.beans.Expression.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/beans/Encoder;
0 6 1 exp Ljava/beans/Expression;
4 6 2 e Ljava/lang/Exception;
Exception table:
from to target type
0 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
exp
public java.beans.PersistenceDelegate getPersistenceDelegate(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/beans/PersistenceDelegate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.beans.Encoder.finder:Lcom/sun/beans/finder/PersistenceDelegateFinder;
aload 1
invokevirtual com.sun.beans.finder.PersistenceDelegateFinder.find:(Ljava/lang/Class;)Ljava/beans/PersistenceDelegate;
astore 2
start local 2 1: aload 2
ifnonnull 5
2: aload 1
invokestatic java.beans.MetaData.getPersistenceDelegate:(Ljava/lang/Class;)Ljava/beans/PersistenceDelegate;
astore 2
3: aload 2
ifnull 5
4: aload 0
getfield java.beans.Encoder.finder:Lcom/sun/beans/finder/PersistenceDelegateFinder;
aload 1
aload 2
invokevirtual com.sun.beans.finder.PersistenceDelegateFinder.register:(Ljava/lang/Class;Ljava/beans/PersistenceDelegate;)V
5: StackMap locals: java.beans.PersistenceDelegate
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/beans/Encoder;
0 6 1 type Ljava/lang/Class<*>;
1 6 2 pd Ljava/beans/PersistenceDelegate;
Signature: (Ljava/lang/Class<*>;)Ljava/beans/PersistenceDelegate;
MethodParameters:
Name Flags
type
public void setPersistenceDelegate(java.lang.Class<?>, java.beans.PersistenceDelegate);
descriptor: (Ljava/lang/Class;Ljava/beans/PersistenceDelegate;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.beans.Encoder.finder:Lcom/sun/beans/finder/PersistenceDelegateFinder;
aload 1
aload 2
invokevirtual com.sun.beans.finder.PersistenceDelegateFinder.register:(Ljava/lang/Class;Ljava/beans/PersistenceDelegate;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/beans/Encoder;
0 2 1 type Ljava/lang/Class<*>;
0 2 2 delegate Ljava/beans/PersistenceDelegate;
Signature: (Ljava/lang/Class<*>;Ljava/beans/PersistenceDelegate;)V
MethodParameters:
Name Flags
type
delegate
public java.lang.Object remove(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.beans.Encoder.bindings:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.beans.Expression
astore 2
start local 2 1: aload 0
aload 2
invokevirtual java.beans.Encoder.getValue:(Ljava/beans/Expression;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/beans/Encoder;
0 2 1 oldInstance Ljava/lang/Object;
1 2 2 exp Ljava/beans/Expression;
MethodParameters:
Name Flags
oldInstance
public java.lang.Object get(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
aload 0
if_acmpeq 2
1: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Ljava/lang/String;
if_acmpne 3
2: StackMap locals:
StackMap stack:
aload 1
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield java.beans.Encoder.bindings:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.beans.Expression
astore 2
start local 2 4: aload 0
aload 2
invokevirtual java.beans.Encoder.getValue:(Ljava/beans/Expression;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/beans/Encoder;
0 5 1 oldInstance Ljava/lang/Object;
4 5 2 exp Ljava/beans/Expression;
MethodParameters:
Name Flags
oldInstance
private java.lang.Object writeObject1(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.beans.Encoder.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
ifnonnull 4
2: aload 0
aload 1
invokevirtual java.beans.Encoder.writeObject:(Ljava/lang/Object;)V
3: aload 0
aload 1
invokevirtual java.beans.Encoder.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
4: StackMap locals: java.lang.Object
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/beans/Encoder;
0 5 1 oldInstance Ljava/lang/Object;
1 5 2 o Ljava/lang/Object;
MethodParameters:
Name Flags
oldInstance
private java.beans.Statement cloneStatement(java.beans.Statement);
descriptor: (Ljava/beans/Statement;)Ljava/beans/Statement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.beans.Statement.getTarget:()Ljava/lang/Object;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual java.beans.Encoder.writeObject1:(Ljava/lang/Object;)Ljava/lang/Object;
astore 3
start local 3 2: aload 1
invokevirtual java.beans.Statement.getArguments:()[Ljava/lang/Object;
astore 4
start local 4 3: aload 4
arraylength
anewarray java.lang.Object
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 8
6: StackMap locals: java.beans.Encoder java.beans.Statement java.lang.Object java.lang.Object java.lang.Object[] java.lang.Object[] int
StackMap stack:
aload 5
iload 6
aload 0
aload 4
iload 6
aaload
invokevirtual java.beans.Encoder.writeObject1:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
aload 4
arraylength
if_icmplt 6
end local 6 9: ldc Ljava/beans/Statement;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 11
10: new java.beans.Statement
dup
aload 3
aload 1
invokevirtual java.beans.Statement.getMethodName:()Ljava/lang/String;
aload 5
invokespecial java.beans.Statement.<init>:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto 12
11: StackMap locals:
StackMap stack:
new java.beans.Expression
dup
aload 3
aload 1
invokevirtual java.beans.Statement.getMethodName:()Ljava/lang/String;
aload 5
invokespecial java.beans.Expression.<init>:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
12: StackMap locals:
StackMap stack: java.beans.Statement
astore 6
start local 6 13: aload 6
aload 1
getfield java.beans.Statement.loader:Ljava/lang/ClassLoader;
putfield java.beans.Statement.loader:Ljava/lang/ClassLoader;
14: aload 6
areturn
end local 6 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 15 0 this Ljava/beans/Encoder;
0 15 1 oldExp Ljava/beans/Statement;
1 15 2 oldTarget Ljava/lang/Object;
2 15 3 newTarget Ljava/lang/Object;
3 15 4 oldArgs [Ljava/lang/Object;
4 15 5 newArgs [Ljava/lang/Object;
5 9 6 i I
13 15 6 newExp Ljava/beans/Statement;
MethodParameters:
Name Flags
oldExp
public void writeStatement(java.beans.Statement);
descriptor: (Ljava/beans/Statement;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.beans.Encoder.cloneStatement:(Ljava/beans/Statement;)Ljava/beans/Statement;
astore 2
start local 2 1: aload 1
invokevirtual java.beans.Statement.getTarget:()Ljava/lang/Object;
aload 0
if_acmpeq 8
aload 0
getfield java.beans.Encoder.executeStatements:Z
ifeq 8
2: aload 2
invokevirtual java.beans.Statement.execute:()V
3: goto 8
StackMap locals: java.beans.Encoder java.beans.Statement java.beans.Statement
StackMap stack: java.lang.Exception
4: astore 3
start local 3 5: aload 0
invokevirtual java.beans.Encoder.getExceptionListener:()Ljava/beans/ExceptionListener;
new java.lang.Exception
dup
new java.lang.StringBuilder
dup
ldc "Encoder: discarding statement "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial java.lang.Exception.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
7: invokeinterface java.beans.ExceptionListener.exceptionThrown:(Ljava/lang/Exception;)V
end local 3 8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/beans/Encoder;
0 9 1 oldStm Ljava/beans/Statement;
1 9 2 newStm Ljava/beans/Statement;
5 8 3 e Ljava/lang/Exception;
Exception table:
from to target type
2 3 4 Class java.lang.Exception
MethodParameters:
Name Flags
oldStm
public void writeExpression(java.beans.Expression);
descriptor: (Ljava/beans/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.beans.Encoder.getValue:(Ljava/beans/Expression;)Ljava/lang/Object;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual java.beans.Encoder.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 3
2: return
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield java.beans.Encoder.bindings:Ljava/util/Map;
aload 2
aload 0
aload 1
invokevirtual java.beans.Encoder.cloneStatement:(Ljava/beans/Statement;)Ljava/beans/Statement;
checkcast java.beans.Expression
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 0
aload 2
invokevirtual java.beans.Encoder.writeObject:(Ljava/lang/Object;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/beans/Encoder;
0 6 1 oldExp Ljava/beans/Expression;
1 6 2 oldValue Ljava/lang/Object;
MethodParameters:
Name Flags
oldExp
void clear();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.beans.Encoder.bindings:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/beans/Encoder;
void setAttribute(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.beans.Encoder.attributes:Ljava/util/Map;
ifnonnull 2
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield java.beans.Encoder.attributes:Ljava/util/Map;
2: StackMap locals:
StackMap stack:
aload 0
getfield java.beans.Encoder.attributes:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/beans/Encoder;
0 4 1 key Ljava/lang/Object;
0 4 2 value Ljava/lang/Object;
MethodParameters:
Name Flags
key
value
java.lang.Object getAttribute(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.beans.Encoder.attributes:Ljava/util/Map;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.beans.Encoder.attributes:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/beans/Encoder;
0 3 1 key Ljava/lang/Object;
MethodParameters:
Name Flags
key
}
SourceFile: "Encoder.java"