public class org.mongodb.morphia.mapping.validation.MappingValidator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.mongodb.morphia.mapping.validation.MappingValidator
super_class: java.lang.Object
{
private static final org.mongodb.morphia.logging.Logger LOG;
descriptor: Lorg/mongodb/morphia/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private org.mongodb.morphia.ObjectFactory creator;
descriptor: Lorg/mongodb/morphia/ObjectFactory;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/mongodb/morphia/mapping/validation/MappingValidator;
invokestatic org.mongodb.morphia.logging.MorphiaLoggerFactory.get:(Ljava/lang/Class;)Lorg/mongodb/morphia/logging/Logger;
putstatic org.mongodb.morphia.mapping.validation.MappingValidator.LOG:Lorg/mongodb/morphia/logging/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.mongodb.morphia.ObjectFactory);
descriptor: (Lorg/mongodb/morphia/ObjectFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.mongodb.morphia.mapping.validation.MappingValidator.creator:Lorg/mongodb/morphia/ObjectFactory;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/mongodb/morphia/mapping/validation/MappingValidator;
0 3 1 objectFactory Lorg/mongodb/morphia/ObjectFactory;
MethodParameters:
Name Flags
objectFactory final
public void validate(org.mongodb.morphia.mapping.Mapper, org.mongodb.morphia.mapping.MappedClass);
descriptor: (Lorg/mongodb/morphia/mapping/Mapper;Lorg/mongodb/morphia/mapping/MappedClass;)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
aload 1
aload 2
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
invokevirtual org.mongodb.morphia.mapping.validation.MappingValidator.validate:(Lorg/mongodb/morphia/mapping/Mapper;Ljava/util/List;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/mongodb/morphia/mapping/validation/MappingValidator;
0 2 1 mapper Lorg/mongodb/morphia/mapping/Mapper;
0 2 2 mappedClass Lorg/mongodb/morphia/mapping/MappedClass;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
mapper final
mappedClass final
public void validate(org.mongodb.morphia.mapping.Mapper, java.util.List<org.mongodb.morphia.mapping.MappedClass>);
descriptor: (Lorg/mongodb/morphia/mapping/Mapper;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: new java.util.TreeSet
dup
new org.mongodb.morphia.mapping.validation.MappingValidator$1
dup
aload 0
invokespecial org.mongodb.morphia.mapping.validation.MappingValidator$1.<init>:(Lorg/mongodb/morphia/mapping/validation/MappingValidator;)V
invokespecial java.util.TreeSet.<init>:(Ljava/util/Comparator;)V
astore 3
start local 3 1: aload 0
invokevirtual org.mongodb.morphia.mapping.validation.MappingValidator.getConstraints:()Ljava/util/List;
astore 4
start local 4 2: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 8
StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.mongodb.morphia.mapping.MappedClass
astore 5
start local 5 4: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 7
StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List org.mongodb.morphia.mapping.MappedClass java.util.Iterator top java.util.Iterator
StackMap stack:
5: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.mongodb.morphia.mapping.validation.ClassConstraint
astore 7
start local 7 6: aload 7
aload 1
aload 5
aload 3
invokeinterface org.mongodb.morphia.mapping.validation.ClassConstraint.check:(Lorg/mongodb/morphia/mapping/Mapper;Lorg/mongodb/morphia/mapping/MappedClass;Ljava/util/Set;)V
end local 7 7: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 5 8: StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
9: aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifne 24
10: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.mongodb.morphia.mapping.validation.ConstraintViolation
astore 5
start local 5 11: aload 5
invokevirtual org.mongodb.morphia.mapping.validation.ConstraintViolation.getLevel:()Lorg/mongodb/morphia/mapping/validation/ConstraintViolation$Level;
astore 6
start local 6 12: aload 6
invokevirtual org.mongodb.morphia.mapping.validation.ConstraintViolation$Level.ordinal:()I
getstatic org.mongodb.morphia.mapping.validation.ConstraintViolation$Level.FATAL:Lorg/mongodb/morphia/mapping/validation/ConstraintViolation$Level;
invokevirtual org.mongodb.morphia.mapping.validation.ConstraintViolation$Level.ordinal:()I
if_icmplt 14
13: new org.mongodb.morphia.mapping.validation.ConstraintViolationException
dup
aload 3
invokespecial org.mongodb.morphia.mapping.validation.ConstraintViolationException.<init>:(Ljava/util/Collection;)V
athrow
14: StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List org.mongodb.morphia.mapping.validation.ConstraintViolation org.mongodb.morphia.mapping.validation.ConstraintViolation$Level
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 7
start local 7 15: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 9
goto 18
StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List org.mongodb.morphia.mapping.validation.ConstraintViolation org.mongodb.morphia.mapping.validation.ConstraintViolation$Level java.util.List top java.util.Iterator
StackMap stack:
16: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.mongodb.morphia.mapping.validation.ConstraintViolation
astore 8
start local 8 17: aload 7
new org.mongodb.morphia.mapping.validation.MappingValidator$LogLine
dup
aload 8
invokespecial org.mongodb.morphia.mapping.validation.MappingValidator$LogLine.<init>:(Lorg/mongodb/morphia/mapping/validation/ConstraintViolation;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 18: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
19: aload 7
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
20: aload 7
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 23
StackMap locals:
StackMap stack:
21: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.mongodb.morphia.mapping.validation.MappingValidator$LogLine
astore 8
start local 8 22: aload 8
getstatic org.mongodb.morphia.mapping.validation.MappingValidator.LOG:Lorg/mongodb/morphia/logging/Logger;
invokevirtual org.mongodb.morphia.mapping.validation.MappingValidator$LogLine.log:(Lorg/mongodb/morphia/logging/Logger;)V
end local 8 23: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
end local 7 end local 6 end local 5 24: StackMap locals: org.mongodb.morphia.mapping.validation.MappingValidator org.mongodb.morphia.mapping.Mapper java.util.List java.util.Set java.util.List
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/mongodb/morphia/mapping/validation/MappingValidator;
0 25 1 mapper Lorg/mongodb/morphia/mapping/Mapper;
0 25 2 classes Ljava/util/List<Lorg/mongodb/morphia/mapping/MappedClass;>;
1 25 3 ve Ljava/util/Set<Lorg/mongodb/morphia/mapping/validation/ConstraintViolation;>;
2 25 4 rules Ljava/util/List<Lorg/mongodb/morphia/mapping/validation/ClassConstraint;>;
4 8 5 c Lorg/mongodb/morphia/mapping/MappedClass;
6 7 7 v Lorg/mongodb/morphia/mapping/validation/ClassConstraint;
11 24 5 worst Lorg/mongodb/morphia/mapping/validation/ConstraintViolation;
12 24 6 maxLevel Lorg/mongodb/morphia/mapping/validation/ConstraintViolation$Level;
15 24 7 l Ljava/util/List<Lorg/mongodb/morphia/mapping/validation/MappingValidator$LogLine;>;
17 18 8 v Lorg/mongodb/morphia/mapping/validation/ConstraintViolation;
22 23 8 line Lorg/mongodb/morphia/mapping/validation/MappingValidator$LogLine;
Signature: (Lorg/mongodb/morphia/mapping/Mapper;Ljava/util/List<Lorg/mongodb/morphia/mapping/MappedClass;>;)V
MethodParameters:
Name Flags
mapper final
classes final
private java.util.List<org.mongodb.morphia.mapping.validation.ClassConstraint> getConstraints();
descriptor: ()Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: new java.util.ArrayList
dup
bipush 32
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 1: aload 1
new org.mongodb.morphia.mapping.validation.classrules.MultipleId
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.MultipleId.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 1
new org.mongodb.morphia.mapping.validation.classrules.MultipleVersions
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.MultipleVersions.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 1
new org.mongodb.morphia.mapping.validation.classrules.NoId
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.NoId.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 1
new org.mongodb.morphia.mapping.validation.classrules.EmbeddedAndId
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.EmbeddedAndId.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 1
new org.mongodb.morphia.mapping.validation.classrules.EntityAndEmbed
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.EntityAndEmbed.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 1
new org.mongodb.morphia.mapping.validation.classrules.EmbeddedAndValue
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.EmbeddedAndValue.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: aload 1
new org.mongodb.morphia.mapping.validation.classrules.EntityCannotBeMapOrIterable
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.EntityCannotBeMapOrIterable.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: aload 1
new org.mongodb.morphia.mapping.validation.classrules.DuplicatedAttributeNames
dup
invokespecial org.mongodb.morphia.mapping.validation.classrules.DuplicatedAttributeNames.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.MisplacedProperty
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.MisplacedProperty.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ReferenceToUnidentifiable
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ReferenceToUnidentifiable.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.LazyReferenceMissingDependencies
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.LazyReferenceMissingDependencies.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
12: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.LazyReferenceOnArray
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.LazyReferenceOnArray.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.MapKeyDifferentFromString
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.MapKeyDifferentFromString.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.MapNotSerializable
dup
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.MapNotSerializable.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
15: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.VersionMisuse
dup
aload 0
getfield org.mongodb.morphia.mapping.validation.MappingValidator.creator:Lorg/mongodb/morphia/ObjectFactory;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.VersionMisuse.<init>:(Lorg/mongodb/morphia/ObjectFactory;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
16: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Reference;
ldc Lorg/mongodb/morphia/annotations/Serialized;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
17: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Reference;
ldc Lorg/mongodb/morphia/annotations/Property;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
18: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Reference;
ldc Lorg/mongodb/morphia/annotations/Embedded;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
19: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Embedded;
ldc Lorg/mongodb/morphia/annotations/Serialized;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
20: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Embedded;
ldc Lorg/mongodb/morphia/annotations/Property;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
21: aload 1
new org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation
dup
ldc Lorg/mongodb/morphia/annotations/Property;
ldc Lorg/mongodb/morphia/annotations/Serialized;
invokespecial org.mongodb.morphia.mapping.validation.fieldrules.ContradictingFieldAnnotation.<init>:(Ljava/lang/Class;Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
22: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/mongodb/morphia/mapping/validation/MappingValidator;
1 23 1 constraints Ljava/util/List<Lorg/mongodb/morphia/mapping/validation/ClassConstraint;>;
Signature: ()Ljava/util/List<Lorg/mongodb/morphia/mapping/validation/ClassConstraint;>;
}
SourceFile: "MappingValidator.java"
NestMembers:
org.mongodb.morphia.mapping.validation.MappingValidator$1 org.mongodb.morphia.mapping.validation.MappingValidator$LogLine
InnerClasses:
public final Level = org.mongodb.morphia.mapping.validation.ConstraintViolation$Level of org.mongodb.morphia.mapping.validation.ConstraintViolation
org.mongodb.morphia.mapping.validation.MappingValidator$1
LogLine = org.mongodb.morphia.mapping.validation.MappingValidator$LogLine of org.mongodb.morphia.mapping.validation.MappingValidator