public final class com.sun.tools.internal.xjc.reader.ModelChecker
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.tools.internal.xjc.reader.ModelChecker
super_class: java.lang.Object
{
private final com.sun.tools.internal.xjc.model.Model model;
descriptor: Lcom/sun/tools/internal/xjc/model/Model;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.internal.xjc.ErrorReceiver errorReceiver;
descriptor: Lcom/sun/tools/internal/xjc/ErrorReceiver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc Lcom/sun/tools/internal/xjc/model/Model;
invokestatic com.sun.tools.internal.xjc.reader.Ring.get:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.Model
putfield com.sun.tools.internal.xjc.reader.ModelChecker.model:Lcom/sun/tools/internal/xjc/model/Model;
2: aload 0
ldc Lcom/sun/tools/internal/xjc/ErrorReceiver;
invokestatic com.sun.tools.internal.xjc.reader.Ring.get:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.ErrorReceiver
putfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/internal/xjc/reader/ModelChecker;
public void check();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.model:Lcom/sun/tools/internal/xjc/model/Model;
invokevirtual com.sun.tools.internal.xjc.model.Model.beans:()Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 3
StackMap locals: com.sun.tools.internal.xjc.reader.ModelChecker top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.CClassInfo
astore 1
start local 1 2: aload 0
aload 1
invokevirtual com.sun.tools.internal.xjc.reader.ModelChecker.check:(Lcom/sun/tools/internal/xjc/model/CClassInfo;)V
end local 1 3: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/internal/xjc/reader/ModelChecker;
2 3 1 ci Lcom/sun/tools/internal/xjc/model/CClassInfo;
private void check(com.sun.tools.internal.xjc.model.CClassInfo);
descriptor: (Lcom/sun/tools/internal/xjc/model/CClassInfo;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getProperties:()Ljava/util/List;
astore 2
start local 2 1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 30
4: StackMap locals: java.util.List java.util.Map int
StackMap stack:
aload 2
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.CPropertyInfo
astore 5
start local 5 5: aload 5
iconst_1
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
ldc "Class"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
6: aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
aload 5
getfield com.sun.tools.internal.xjc.model.CPropertyInfo.locator:Lorg/xml/sax/Locator;
getstatic com.sun.tools.internal.xjc.reader.Messages.PROPERTY_CLASS_IS_RESERVED:Lcom/sun/tools/internal/xjc/reader/Messages;
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.internal.xjc.reader.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
7: goto 29
8: StackMap locals: com.sun.tools.internal.xjc.model.CPropertyInfo
StackMap stack:
aload 5
aload 3
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.collectElementNames:(Ljava/util/Map;)Ljavax/xml/namespace/QName;
astore 6
start local 6 9: aload 6
ifnull 14
10: aload 3
aload 6
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.CPropertyInfo
astore 7
start local 7 11: aload 7
iconst_1
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
aload 6
invokevirtual javax.xml.namespace.QName.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 12
aload 7
iconst_0
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
aload 6
invokevirtual javax.xml.namespace.QName.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
12: StackMap locals: javax.xml.namespace.QName com.sun.tools.internal.xjc.model.CPropertyInfo
StackMap stack:
aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
aload 5
getfield com.sun.tools.internal.xjc.model.CPropertyInfo.locator:Lorg/xml/sax/Locator;
getstatic com.sun.tools.internal.xjc.reader.Messages.DUPLICATE_ELEMENT:Lcom/sun/tools/internal/xjc/reader/Messages;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual com.sun.tools.internal.xjc.reader.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
13: aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
aload 7
getfield com.sun.tools.internal.xjc.model.CPropertyInfo.locator:Lorg/xml/sax/Locator;
getstatic com.sun.tools.internal.xjc.reader.Messages.ERR_RELEVANT_LOCATION:Lcom/sun/tools/internal/xjc/reader/Messages;
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.internal.xjc.reader.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
end local 7 14: StackMap locals:
StackMap stack:
iload 4
iconst_1
iadd
istore 7
start local 7 15: goto 19
16: StackMap locals: int
StackMap stack:
aload 0
aload 5
aload 2
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.CPropertyInfo
invokevirtual com.sun.tools.internal.xjc.reader.ModelChecker.checkPropertyCollision:(Lcom/sun/tools/internal/xjc/model/CPropertyInfo;Lcom/sun/tools/internal/xjc/model/CPropertyInfo;)Z
ifeq 18
17: goto 29
18: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
19: iload 7
aload 2
invokeinterface java.util.List.size:()I
if_icmplt 16
end local 7 20: aload 1
invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getBaseClass:()Lcom/sun/tools/internal/xjc/model/CClassInfo;
astore 7
start local 7 21: goto 28
22: StackMap locals: com.sun.tools.internal.xjc.reader.ModelChecker com.sun.tools.internal.xjc.model.CClassInfo java.util.List java.util.Map int com.sun.tools.internal.xjc.model.CPropertyInfo javax.xml.namespace.QName com.sun.tools.internal.xjc.model.CClassInfo
StackMap stack:
aload 7
invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getProperties:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 26
StackMap locals: com.sun.tools.internal.xjc.reader.ModelChecker com.sun.tools.internal.xjc.model.CClassInfo java.util.List java.util.Map int com.sun.tools.internal.xjc.model.CPropertyInfo javax.xml.namespace.QName com.sun.tools.internal.xjc.model.CClassInfo top java.util.Iterator
StackMap stack:
23: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.internal.xjc.model.CPropertyInfo
astore 8
start local 8 24: aload 0
aload 5
aload 8
invokevirtual com.sun.tools.internal.xjc.reader.ModelChecker.checkPropertyCollision:(Lcom/sun/tools/internal/xjc/model/CPropertyInfo;Lcom/sun/tools/internal/xjc/model/CPropertyInfo;)Z
ifeq 26
25: goto 29
end local 8 26: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
27: aload 7
invokevirtual com.sun.tools.internal.xjc.model.CClassInfo.getBaseClass:()Lcom/sun/tools/internal/xjc/model/CClassInfo;
astore 7
StackMap locals: com.sun.tools.internal.xjc.reader.ModelChecker com.sun.tools.internal.xjc.model.CClassInfo java.util.List java.util.Map int com.sun.tools.internal.xjc.model.CPropertyInfo javax.xml.namespace.QName com.sun.tools.internal.xjc.model.CClassInfo
StackMap stack:
28: aload 7
ifnonnull 22
end local 7 end local 6 end local 5 29: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
30: iload 4
aload 2
invokeinterface java.util.List.size:()I
if_icmplt 4
end local 4 31: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lcom/sun/tools/internal/xjc/reader/ModelChecker;
0 32 1 ci Lcom/sun/tools/internal/xjc/model/CClassInfo;
1 32 2 props Ljava/util/List<Lcom/sun/tools/internal/xjc/model/CPropertyInfo;>;
2 32 3 collisionTable Ljava/util/Map<Ljavax/xml/namespace/QName;Lcom/sun/tools/internal/xjc/model/CPropertyInfo;>;
3 31 4 i I
5 29 5 p1 Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
9 29 6 n Ljavax/xml/namespace/QName;
11 14 7 p2 Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
15 20 7 j I
21 29 7 c Lcom/sun/tools/internal/xjc/model/CClassInfo;
24 26 8 p2 Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
MethodParameters:
Name Flags
ci
private boolean checkPropertyCollision(com.sun.tools.internal.xjc.model.CPropertyInfo, com.sun.tools.internal.xjc.model.CPropertyInfo);
descriptor: (Lcom/sun/tools/internal/xjc/model/CPropertyInfo;Lcom/sun/tools/internal/xjc/model/CPropertyInfo;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_1
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
aload 2
iconst_1
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
aload 1
getfield com.sun.tools.internal.xjc.model.CPropertyInfo.locator:Lorg/xml/sax/Locator;
getstatic com.sun.tools.internal.xjc.reader.Messages.DUPLICATE_PROPERTY:Lcom/sun/tools/internal/xjc/reader/Messages;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
iconst_1
invokevirtual com.sun.tools.internal.xjc.model.CPropertyInfo.getName:(Z)Ljava/lang/String;
aastore
invokevirtual com.sun.tools.internal.xjc.reader.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
3: aload 0
getfield com.sun.tools.internal.xjc.reader.ModelChecker.errorReceiver:Lcom/sun/tools/internal/xjc/ErrorReceiver;
aload 2
getfield com.sun.tools.internal.xjc.model.CPropertyInfo.locator:Lorg/xml/sax/Locator;
getstatic com.sun.tools.internal.xjc.reader.Messages.ERR_RELEVANT_LOCATION:Lcom/sun/tools/internal/xjc/reader/Messages;
iconst_0
anewarray java.lang.Object
invokevirtual com.sun.tools.internal.xjc.reader.Messages.format:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.tools.internal.xjc.ErrorReceiver.error:(Lorg/xml/sax/Locator;Ljava/lang/String;)V
4: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/internal/xjc/reader/ModelChecker;
0 5 1 p1 Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
0 5 2 p2 Lcom/sun/tools/internal/xjc/model/CPropertyInfo;
MethodParameters:
Name Flags
p1
p2
}
SourceFile: "ModelChecker.java"