public final class org.hibernate.internal.util.ReflectHelper
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.hibernate.internal.util.ReflectHelper
super_class: java.lang.Object
{
private static final java.util.regex.Pattern JAVA_CONSTANT_PATTERN;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.Class[] NO_PARAM_SIGNATURE;
descriptor: [Ljava/lang/Class;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Object[] NO_PARAMS;
descriptor: [Ljava/lang/Object;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Class[] SINGLE_OBJECT_PARAM_SIGNATURE;
descriptor: [Ljava/lang/Class;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.lang.reflect.Method OBJECT_EQUALS;
descriptor: Ljava/lang/reflect/Method;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.reflect.Method OBJECT_HASHCODE;
descriptor: Ljava/lang/reflect/Method;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=3, args_size=0
0: ldc Lorg/hibernate/internal/util/ReflectHelper;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.hibernate.internal.util.ReflectHelper.$assertionsDisabled:Z
3: ldc "[a-z\\d]+\\.([A-Z]{1}[a-z\\d]+)+\\$?([A-Z]{1}[a-z\\d]+)*\\.[A-Z_\\$]+"
sipush 256
4: invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;I)Ljava/util/regex/Pattern;
putstatic org.hibernate.internal.util.ReflectHelper.JAVA_CONSTANT_PATTERN:Ljava/util/regex/Pattern;
5: iconst_0
anewarray java.lang.Class
putstatic org.hibernate.internal.util.ReflectHelper.NO_PARAM_SIGNATURE:[Ljava/lang/Class;
6: iconst_0
anewarray java.lang.Object
putstatic org.hibernate.internal.util.ReflectHelper.NO_PARAMS:[Ljava/lang/Object;
7: iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
putstatic org.hibernate.internal.util.ReflectHelper.SINGLE_OBJECT_PARAM_SIGNATURE:[Ljava/lang/Class;
8: ldc Ljava/lang/Object;
invokestatic org.hibernate.internal.util.ReflectHelper.extractEqualsMethod:(Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 0
start local 0 9: ldc Ljava/lang/Object;
invokestatic org.hibernate.internal.util.ReflectHelper.extractHashCodeMethod:(Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 1
start local 1 10: goto 13
end local 1 end local 0 11: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 12: new org.hibernate.AssertionFailure
dup
ldc "Could not find Object.equals() or Object.hashCode()"
aload 2
invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 start local 0 start local 1 13: StackMap locals: java.lang.reflect.Method java.lang.reflect.Method
StackMap stack:
aload 0
putstatic org.hibernate.internal.util.ReflectHelper.OBJECT_EQUALS:Ljava/lang/reflect/Method;
14: aload 1
putstatic org.hibernate.internal.util.ReflectHelper.OBJECT_HASHCODE:Ljava/lang/reflect/Method;
end local 1 end local 0 15: return
LocalVariableTable:
Start End Slot Name Signature
9 11 0 eq Ljava/lang/reflect/Method;
13 15 0 eq Ljava/lang/reflect/Method;
10 11 1 hash Ljava/lang/reflect/Method;
13 15 1 hash Ljava/lang/reflect/Method;
12 13 2 e Ljava/lang/Exception;
Exception table:
from to target type
8 10 11 Class java.lang.Exception
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/internal/util/ReflectHelper;
public static java.lang.reflect.Method (java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "equals"
getstatic org.hibernate.internal.util.ReflectHelper.SINGLE_OBJECT_PARAM_SIGNATURE:[Ljava/lang/Class;
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
Exceptions:
throws java.lang.NoSuchMethodException
MethodParameters:
Name Flags
clazz
public static java.lang.reflect.Method (java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "hashCode"
getstatic org.hibernate.internal.util.ReflectHelper.NO_PARAM_SIGNATURE:[Ljava/lang/Class;
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
Exceptions:
throws java.lang.NoSuchMethodException
MethodParameters:
Name Flags
clazz
public static boolean overridesEquals(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.hibernate.internal.util.ReflectHelper.extractEqualsMethod:(Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 1
start local 1 1: goto 4
end local 1 2: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
3: iconst_0
ireturn
start local 1 4: StackMap locals: java.lang.reflect.Method
StackMap stack:
getstatic org.hibernate.internal.util.ReflectHelper.OBJECT_EQUALS:Ljava/lang/reflect/Method;
aload 1
invokevirtual java.lang.reflect.Method.equals:(Ljava/lang/Object;)Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 clazz Ljava/lang/Class;
1 2 1 equals Ljava/lang/reflect/Method;
4 7 1 equals Ljava/lang/reflect/Method;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodException
MethodParameters:
Name Flags
clazz
public static boolean overridesHashCode(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.hibernate.internal.util.ReflectHelper.extractHashCodeMethod:(Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 1
start local 1 1: goto 4
end local 1 2: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
3: iconst_0
ireturn
start local 1 4: StackMap locals: java.lang.reflect.Method
StackMap stack:
getstatic org.hibernate.internal.util.ReflectHelper.OBJECT_HASHCODE:Ljava/lang/reflect/Method;
aload 1
invokevirtual java.lang.reflect.Method.equals:(Ljava/lang/Object;)Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 clazz Ljava/lang/Class;
1 2 1 hashCode Ljava/lang/reflect/Method;
4 7 1 hashCode Ljava/lang/reflect/Method;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodException
MethodParameters:
Name Flags
clazz
public static boolean implementsInterface(java.lang.Class, java.lang.Class);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.internal.util.ReflectHelper.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual java.lang.Class.isInterface:()Z
ifne 1
new java.lang.AssertionError
dup
ldc "Interface to check was not an interface"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 clazz Ljava/lang/Class;
0 2 1 intf Ljava/lang/Class;
MethodParameters:
Name Flags
clazz
intf
public static java.lang.Class classForName(java.lang.String, java.lang.Class);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 2
start local 2 1: aload 2
ifnull 5
2: aload 2
aload 0
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
3: areturn
end local 2 4: StackMap locals:
StackMap stack: java.lang.Throwable
pop
5: StackMap locals:
StackMap stack:
aload 0
iconst_1
aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 name Ljava/lang/String;
0 6 1 caller Ljava/lang/Class;
1 4 2 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
0 3 4 Class java.lang.Throwable
Exceptions:
throws java.lang.ClassNotFoundException
MethodParameters:
Name Flags
name
caller
public static java.lang.Class classForName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 1
aload 0
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
3: areturn
end local 1 4: StackMap locals:
StackMap stack: java.lang.Throwable
pop
5: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 name Ljava/lang/String;
1 4 1 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
0 3 4 Class java.lang.Throwable
Exceptions:
throws java.lang.ClassNotFoundException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
name
public static boolean isPublic(java.lang.Class, java.lang.reflect.Member);
descriptor: (Ljava/lang/Class;Ljava/lang/reflect/Member;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.lang.reflect.Member.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifeq 1
aload 0
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 clazz Ljava/lang/Class;
0 2 1 member Ljava/lang/reflect/Member;
MethodParameters:
Name Flags
clazz
member
public static java.lang.Class reflectedPropertyClass(java.lang.String, java.lang.String, org.hibernate.boot.registry.classloading.spi.ClassLoaderService);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
invokeinterface org.hibernate.boot.registry.classloading.spi.ClassLoaderService.classForName:(Ljava/lang/String;)Ljava/lang/Class;
astore 3
start local 3 1: aload 3
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getter:(Ljava/lang/Class;Ljava/lang/String;)Lorg/hibernate/property/access/spi/Getter;
invokeinterface org.hibernate.property.access.spi.Getter.getReturnType:()Ljava/lang/Class;
2: areturn
end local 3 3: StackMap locals:
StackMap stack: org.hibernate.boot.registry.classloading.spi.ClassLoadingException
astore 3
start local 3 4: new org.hibernate.MappingException
dup
new java.lang.StringBuilder
dup
ldc "class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not found while looking for property: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 className Ljava/lang/String;
0 5 1 name Ljava/lang/String;
0 5 2 classLoaderService Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
1 3 3 clazz Ljava/lang/Class;
4 5 3 e Lorg/hibernate/boot/registry/classloading/spi/ClassLoadingException;
Exception table:
from to target type
0 2 3 Class org.hibernate.boot.registry.classloading.spi.ClassLoadingException
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
className
name
classLoaderService
public static java.lang.Class reflectedPropertyClass(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getter:(Ljava/lang/Class;Ljava/lang/String;)Lorg/hibernate/property/access/spi/Getter;
invokeinterface org.hibernate.property.access.spi.Getter.getReturnType:()Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
0 1 1 name Ljava/lang/String;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
clazz
name
private static org.hibernate.property.access.spi.Getter getter(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Lorg/hibernate/property/access/spi/Getter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.property.access.internal.PropertyAccessStrategyMixedImpl.INSTANCE:Lorg/hibernate/property/access/internal/PropertyAccessStrategyMixedImpl;
aload 0
aload 1
invokevirtual org.hibernate.property.access.internal.PropertyAccessStrategyMixedImpl.buildPropertyAccess:(Ljava/lang/Class;Ljava/lang/String;)Lorg/hibernate/property/access/spi/PropertyAccess;
invokeinterface org.hibernate.property.access.spi.PropertyAccess.getGetter:()Lorg/hibernate/property/access/spi/Getter;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
0 1 1 name Ljava/lang/String;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
clazz
name
public static java.lang.Object getConstantValue(java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor);
descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getSessionFactoryOptions:()Lorg/hibernate/boot/spi/SessionFactoryOptions;
invokeinterface org.hibernate.boot.spi.SessionFactoryOptions.isConventionalJavaConstants:()Z
istore 2
start local 2 1: iload 2
ifeq 4
2: getstatic org.hibernate.internal.util.ReflectHelper.JAVA_CONSTANT_PATTERN:Ljava/util/regex/Pattern;
aload 0
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.find:()Z
ifne 4
3: aconst_null
areturn
4: StackMap locals: int
StackMap stack:
aload 1
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getServiceRegistry:()Lorg/hibernate/service/spi/ServiceRegistryImplementor;
ldc Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
invokeinterface org.hibernate.service.spi.ServiceRegistryImplementor.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
checkcast org.hibernate.boot.registry.classloading.spi.ClassLoaderService
astore 4
start local 4 5: aload 4
aload 0
invokestatic org.hibernate.internal.util.StringHelper.qualifier:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface org.hibernate.boot.registry.classloading.spi.ClassLoaderService.classForName:(Ljava/lang/String;)Ljava/lang/Class;
astore 3
end local 4 start local 3 6: goto 9
end local 3 7: StackMap locals:
StackMap stack: java.lang.Throwable
pop
8: aconst_null
areturn
start local 3 9: StackMap locals: java.lang.Class
StackMap stack:
aload 3
aload 0
invokestatic org.hibernate.internal.util.StringHelper.unqualify:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.Class.getField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
aconst_null
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
10: areturn
11: StackMap locals:
StackMap stack: java.lang.Throwable
pop
12: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 name Ljava/lang/String;
0 13 1 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
1 13 2 conventionalJavaConstants Z
6 7 3 clazz Ljava/lang/Class;
9 13 3 clazz Ljava/lang/Class;
5 6 4 classLoaderService Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
Exception table:
from to target type
1 3 7 Class java.lang.Throwable
4 6 7 Class java.lang.Throwable
9 10 11 Class java.lang.Throwable
MethodParameters:
Name Flags
name
factory
public static <T> java.lang.reflect.Constructor<T> getDefaultConstructor(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.hibernate.internal.util.ReflectHelper.isAbstractClass:(Ljava/lang/Class;)Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.hibernate.internal.util.ReflectHelper.NO_PARAM_SIGNATURE:[Ljava/lang/Class;
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 1
start local 1 3: aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.ensureAccessibility:(Ljava/lang/reflect/AccessibleObject;)V
4: aload 1
5: areturn
end local 1 6: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
7: new org.hibernate.PropertyNotFoundException
dup
8: new java.lang.StringBuilder
dup
ldc "Object class ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] must declare a default (no-argument) constructor"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
9: invokespecial org.hibernate.PropertyNotFoundException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 clazz Ljava/lang/Class<TT;>;
3 6 1 constructor Ljava/lang/reflect/Constructor<TT;>;
Exception table:
from to target type
2 5 6 Class java.lang.NoSuchMethodException
Exceptions:
throws org.hibernate.PropertyNotFoundException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/reflect/Constructor<TT;>;
MethodParameters:
Name Flags
clazz
public static boolean isAbstractClass(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getModifiers:()I
istore 1
start local 1 1: iload 1
invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
ifne 2
iload 1
invokestatic java.lang.reflect.Modifier.isInterface:(I)Z
ifne 2
iconst_0
ireturn
StackMap locals: int
StackMap stack:
2: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 clazz Ljava/lang/Class;
1 3 1 modifier I
MethodParameters:
Name Flags
clazz
public static boolean isFinalClass(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
MethodParameters:
Name Flags
clazz
public static java.lang.reflect.Constructor getConstructor(java.lang.Class, org.hibernate.type.Type[]);
descriptor: (Ljava/lang/Class;[Lorg/hibernate/type/Type;)Ljava/lang/reflect/Constructor;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=13, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Class.getConstructors:()[Ljava/lang/reflect/Constructor;
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 26
StackMap locals: java.lang.Class org.hibernate.type.Type[] java.lang.reflect.Constructor[] java.lang.reflect.Constructor int top int int java.lang.reflect.Constructor[]
StackMap stack:
4: aload 8
iload 6
aaload
astore 5
start local 5 5: aload 5
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
astore 9
start local 9 6: aload 9
arraylength
aload 1
arraylength
if_icmpne 25
7: iconst_1
istore 10
start local 10 8: iconst_0
istore 11
start local 11 9: goto 20
10: StackMap locals: java.lang.Class org.hibernate.type.Type[] java.lang.reflect.Constructor[] java.lang.reflect.Constructor int java.lang.reflect.Constructor int int java.lang.reflect.Constructor[] java.lang.Class[] int int
StackMap stack:
aload 1
iload 11
aaload
ifnull 14
aload 9
iload 11
aaload
aload 1
iload 11
aaload
invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 14
11: aload 1
iload 11
aaload
instanceof org.hibernate.type.PrimitiveType
ifeq 13
12: aload 9
iload 11
aaload
aload 1
iload 11
aaload
checkcast org.hibernate.type.PrimitiveType
invokeinterface org.hibernate.type.PrimitiveType.getPrimitiveClass:()Ljava/lang/Class;
if_acmpeq 14
13: StackMap locals:
StackMap stack:
iconst_0
goto 15
StackMap locals:
StackMap stack:
14: iconst_1
StackMap locals:
StackMap stack: int
15: istore 12
start local 12 16: iload 12
ifne 19
17: iconst_0
istore 10
18: goto 21
end local 12 19: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
20: iload 11
aload 9
arraylength
if_icmplt 10
end local 11 21: StackMap locals:
StackMap stack:
iload 10
ifeq 25
22: iinc 4 1
23: aload 5
invokestatic org.hibernate.internal.util.ReflectHelper.ensureAccessibility:(Ljava/lang/reflect/AccessibleObject;)V
24: aload 5
astore 3
end local 10 end local 9 end local 5 25: StackMap locals: java.lang.Class org.hibernate.type.Type[] java.lang.reflect.Constructor[] java.lang.reflect.Constructor int top int int java.lang.reflect.Constructor[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
26: iload 6
iload 7
if_icmplt 4
27: iload 4
iconst_1
if_icmpne 29
28: aload 3
areturn
29: StackMap locals: java.lang.Class org.hibernate.type.Type[] java.lang.reflect.Constructor[] java.lang.reflect.Constructor int
StackMap stack:
new org.hibernate.PropertyNotFoundException
dup
new java.lang.StringBuilder
dup
ldc "no appropriate constructor in class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.hibernate.PropertyNotFoundException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 clazz Ljava/lang/Class;
0 30 1 types [Lorg/hibernate/type/Type;
1 30 2 candidates [Ljava/lang/reflect/Constructor;
2 30 3 constructor Ljava/lang/reflect/Constructor;
3 30 4 numberOfMatchingConstructors I
5 25 5 candidate Ljava/lang/reflect/Constructor;
6 25 9 params [Ljava/lang/Class;
8 25 10 found Z
9 21 11 j I
16 19 12 ok Z
Exceptions:
throws org.hibernate.PropertyNotFoundException
MethodParameters:
Name Flags
clazz
types
public static java.lang.reflect.Method getMethod(java.lang.Class, java.lang.reflect.Method);
descriptor: (Ljava/lang/Class;Ljava/lang/reflect/Method;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 clazz Ljava/lang/Class;
0 4 1 method Ljava/lang/reflect/Method;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
MethodParameters:
Name Flags
clazz
method
public static java.lang.reflect.Field findField(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Class on which to find field ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] cannot be null"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
ldc Ljava/lang/Object;
if_acmpne 4
3: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Illegal attempt to locate field ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] on Object.class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.locateField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
astore 2
start local 2 5: aload 2
ifnonnull 13
6: new org.hibernate.PropertyNotFoundException
dup
7: getstatic java.util.Locale.ROOT:Ljava/util/Locale;
8: ldc "Could not locate field name [%s] on class [%s]"
iconst_2
anewarray java.lang.Object
dup
iconst_0
9: aload 1
aastore
dup
iconst_1
10: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
11: invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
12: invokespecial org.hibernate.PropertyNotFoundException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals: java.lang.reflect.Field
StackMap stack:
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.ensureAccessibility:(Ljava/lang/reflect/AccessibleObject;)V
14: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 containerClass Ljava/lang/Class;
0 15 1 propertyName Ljava/lang/String;
5 15 2 field Ljava/lang/reflect/Field;
MethodParameters:
Name Flags
containerClass
propertyName
public static void ensureAccessibility(java.lang.reflect.AccessibleObject);
descriptor: (Ljava/lang/reflect/AccessibleObject;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.reflect.AccessibleObject.isAccessible:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual java.lang.reflect.AccessibleObject.setAccessible:(Z)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 accessibleObject Ljava/lang/reflect/AccessibleObject;
MethodParameters:
Name Flags
accessibleObject
private static java.lang.reflect.Field locateField(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
ldc Ljava/lang/Object;
aload 0
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
astore 2
start local 2 3: aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.isStaticField:(Ljava/lang/reflect/Field;)Z
ifne 6
4: aload 2
5: areturn
6: StackMap locals: java.lang.reflect.Field
StackMap stack:
aload 0
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.locateField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
7: areturn
end local 2 8: StackMap locals: java.lang.Class java.lang.String
StackMap stack: java.lang.NoSuchFieldException
pop
9: aload 0
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.locateField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 clazz Ljava/lang/Class;
0 10 1 propertyName Ljava/lang/String;
3 8 2 field Ljava/lang/reflect/Field;
Exception table:
from to target type
2 5 8 Class java.lang.NoSuchFieldException
6 7 8 Class java.lang.NoSuchFieldException
MethodParameters:
Name Flags
clazz
propertyName
private static boolean isStaticField(java.lang.reflect.Field);
descriptor: (Ljava/lang/reflect/Field;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.reflect.Field.getModifiers:()I
bipush 8
iand
bipush 8
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 field Ljava/lang/reflect/Field;
MethodParameters:
Name Flags
field
public static java.lang.reflect.Method findGetterMethod(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: goto 9
3: StackMap locals: java.lang.Class java.lang.reflect.Method
StackMap stack:
aload 2
ldc Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 5
4: goto 10
5: StackMap locals:
StackMap stack:
aload 2
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getGetterOrNull:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
astore 3
6: aload 3
ifnonnull 8
7: aload 2
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getGetterOrNull:([Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
astore 3
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 2
9: StackMap locals:
StackMap stack:
aload 3
ifnonnull 10
aload 2
ifnonnull 3
10: StackMap locals:
StackMap stack:
aload 3
ifnonnull 18
11: new org.hibernate.PropertyNotFoundException
dup
12: getstatic java.util.Locale.ROOT:Ljava/util/Locale;
13: ldc "Could not locate getter method for property [%s#%s]"
iconst_2
anewarray java.lang.Object
dup
iconst_0
14: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
15: aload 1
aastore
16: invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
17: invokespecial org.hibernate.PropertyNotFoundException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 3
invokestatic org.hibernate.internal.util.ReflectHelper.ensureAccessibility:(Ljava/lang/reflect/AccessibleObject;)V
19: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 containerClass Ljava/lang/Class;
0 20 1 propertyName Ljava/lang/String;
1 20 2 checkClass Ljava/lang/Class;
2 20 3 getter Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
containerClass
propertyName
private static java.lang.reflect.Method getGetterOrNull(java.lang.Class[], java.lang.String);
descriptor: ([Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 8
3: StackMap locals: java.lang.reflect.Method int
StackMap stack:
aload 0
iload 3
aaload
astore 4
start local 4 4: aload 4
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getGetterOrNull:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
astore 2
5: aload 2
ifnonnull 7
6: aload 4
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.getGetterOrNull:([Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
astore 2
end local 4 7: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
8: aload 2
ifnonnull 9
iload 3
aload 0
arraylength
if_icmplt 3
end local 3 9: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 interfaces [Ljava/lang/Class;
0 10 1 propertyName Ljava/lang/String;
1 10 2 getter Ljava/lang/reflect/Method;
2 9 3 i I
4 7 4 anInterface Ljava/lang/Class;
MethodParameters:
Name Flags
interfaces
propertyName
private static java.lang.reflect.Method getGetterOrNull(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 24
StackMap locals: java.lang.Class java.lang.String top int int java.lang.reflect.Method[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 2
invokevirtual java.lang.reflect.Method.getParameterCount:()I
ifeq 4
3: goto 23
4: StackMap locals: java.lang.Class java.lang.String java.lang.reflect.Method int int java.lang.reflect.Method[]
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.isBridge:()Z
ifeq 6
5: goto 23
6: StackMap locals:
StackMap stack:
aload 2
ldc Ljavax/persistence/Transient;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnull 8
7: goto 23
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifeq 10
9: goto 23
10: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
astore 6
start local 6 11: aload 6
ldc "get"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 17
12: aload 6
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 13: aload 7
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 14: aload 7
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
aload 8
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 17
15: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 0
aload 1
aload 2
aload 7
invokestatic org.hibernate.internal.util.ReflectHelper.verifyNoIsVariantExists:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;)V
16: aload 2
areturn
end local 8 end local 7 17: StackMap locals:
StackMap stack:
aload 6
ldc "is"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 23
18: aload 6
iconst_2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 19: aload 7
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 20: aload 7
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 21
aload 8
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
21: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 0
aload 1
aload 2
aload 7
invokestatic org.hibernate.internal.util.ReflectHelper.verifyNoGetVariantExists:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;)V
22: aload 2
areturn
end local 8 end local 7 end local 6 end local 2 23: StackMap locals: java.lang.Class java.lang.String top int int java.lang.reflect.Method[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
24: iload 3
iload 4
if_icmplt 1
25: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 containerClass Ljava/lang/Class;
0 26 1 propertyName Ljava/lang/String;
2 23 2 method Ljava/lang/reflect/Method;
11 23 6 methodName Ljava/lang/String;
13 17 7 stemName Ljava/lang/String;
14 17 8 decapitalizedStemName Ljava/lang/String;
19 23 7 stemName Ljava/lang/String;
20 23 8 decapitalizedStemName Ljava/lang/String;
MethodParameters:
Name Flags
containerClass
propertyName
private static void verifyNoIsVariantExists(java.lang.Class, java.lang.String, java.lang.reflect.Method, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
new java.lang.StringBuilder
dup
ldc "is"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
start local 4 1: aload 4
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifne 5
aload 4
ldc Ljavax/persistence/Transient;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnonnull 5
2: aload 0
aload 1
aload 2
aload 4
invokestatic org.hibernate.internal.util.ReflectHelper.checkGetAndIsVariants:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
end local 4 3: goto 5
4: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 containerClass Ljava/lang/Class;
0 6 1 propertyName Ljava/lang/String;
0 6 2 getMethod Ljava/lang/reflect/Method;
0 6 3 stemName Ljava/lang/String;
1 3 4 isMethod Ljava/lang/reflect/Method;
Exception table:
from to target type
0 3 4 Class java.lang.NoSuchMethodException
MethodParameters:
Name Flags
containerClass
propertyName
getMethod
stemName
private static void checkGetAndIsVariants(java.lang.Class, java.lang.String, java.lang.reflect.Method, java.lang.reflect.Method);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
aload 2
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 10
1: new org.hibernate.MappingException
dup
2: getstatic java.util.Locale.ROOT:Ljava/util/Locale;
3: ldc "In trying to locate getter for property [%s], Class [%s] defined both a `get` [%s] and `is` [%s] variant"
iconst_4
anewarray java.lang.Object
dup
iconst_0
4: aload 1
aastore
dup
iconst_1
5: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_2
6: aload 2
invokevirtual java.lang.reflect.Method.toString:()Ljava/lang/String;
aastore
dup
iconst_3
7: aload 3
invokevirtual java.lang.reflect.Method.toString:()Ljava/lang/String;
aastore
8: invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
9: invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 containerClass Ljava/lang/Class;
0 11 1 propertyName Ljava/lang/String;
0 11 2 getMethod Ljava/lang/reflect/Method;
0 11 3 isMethod Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
containerClass
propertyName
getMethod
isMethod
private static void verifyNoGetVariantExists(java.lang.Class, java.lang.String, java.lang.reflect.Method, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
new java.lang.StringBuilder
dup
ldc "get"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
start local 4 1: aload 4
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifne 5
aload 4
ldc Ljavax/persistence/Transient;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnonnull 5
2: aload 0
aload 1
aload 4
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.checkGetAndIsVariants:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
end local 4 3: goto 5
4: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 containerClass Ljava/lang/Class;
0 6 1 propertyName Ljava/lang/String;
0 6 2 isMethod Ljava/lang/reflect/Method;
0 6 3 stemName Ljava/lang/String;
1 3 4 getMethod Ljava/lang/reflect/Method;
Exception table:
from to target type
0 3 4 Class java.lang.NoSuchMethodException
MethodParameters:
Name Flags
containerClass
propertyName
isMethod
stemName
public static java.lang.reflect.Method getterMethodOrNull(java.lang.Class, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.findGetterMethod:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
1: areturn
2: StackMap locals:
StackMap stack: org.hibernate.PropertyNotFoundException
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 containerJavaType Ljava/lang/Class;
0 4 1 propertyName Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class org.hibernate.PropertyNotFoundException
MethodParameters:
Name Flags
containerJavaType
propertyName
public static java.lang.reflect.Method setterMethodOrNull(java.lang.Class, java.lang.String, java.lang.Class);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
astore 3
start local 3 1: aconst_null
astore 4
start local 4 2: goto 11
3: StackMap locals: java.lang.Class java.lang.reflect.Method
StackMap stack:
aload 3
ldc Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 5
4: goto 12
5: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.setterOrNull:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
6: aload 4
ifnonnull 9
7: aload 3
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
aload 1
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.setterOrNull:([Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
8: goto 10
9: StackMap locals:
StackMap stack:
aload 4
invokestatic org.hibernate.internal.util.ReflectHelper.ensureAccessibility:(Ljava/lang/reflect/AccessibleObject;)V
10: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 3
11: StackMap locals:
StackMap stack:
aload 4
ifnonnull 12
aload 3
ifnonnull 3
12: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 containerClass Ljava/lang/Class;
0 13 1 propertyName Ljava/lang/String;
0 13 2 propertyType Ljava/lang/Class;
1 13 3 checkClass Ljava/lang/Class;
2 13 4 setter Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
containerClass final
propertyName final
propertyType final
public static java.lang.reflect.Method findSetterMethod(java.lang.Class, java.lang.String, java.lang.Class);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.setterMethodOrNull:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
start local 3 1: aload 3
ifnonnull 9
2: new org.hibernate.PropertyNotFoundException
dup
3: getstatic java.util.Locale.ROOT:Ljava/util/Locale;
4: ldc "Could not locate setter method for property [%s#%s]"
iconst_2
anewarray java.lang.Object
dup
iconst_0
5: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
6: aload 1
aastore
7: invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
8: invokespecial org.hibernate.PropertyNotFoundException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: java.lang.reflect.Method
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 containerClass Ljava/lang/Class;
0 10 1 propertyName Ljava/lang/String;
0 10 2 propertyType Ljava/lang/Class;
1 10 3 setter Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
containerClass final
propertyName final
propertyType final
private static java.lang.reflect.Method setterOrNull(java.lang.Class[], java.lang.String, java.lang.Class);
descriptor: ([Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: java.lang.reflect.Method int
StackMap stack:
aload 0
iload 4
aaload
astore 5
start local 5 4: aload 5
aload 1
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.setterOrNull:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
5: aload 3
ifnonnull 7
6: aload 5
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
aload 1
aload 2
invokestatic org.hibernate.internal.util.ReflectHelper.setterOrNull:([Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
end local 5 7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: aload 3
ifnonnull 9
iload 4
aload 0
arraylength
if_icmplt 3
end local 4 9: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 interfaces [Ljava/lang/Class;
0 10 1 propertyName Ljava/lang/String;
0 10 2 propertyType Ljava/lang/Class;
1 10 3 setter Ljava/lang/reflect/Method;
2 9 4 i I
4 7 5 anInterface Ljava/lang/Class;
MethodParameters:
Name Flags
interfaces
propertyName
propertyType
private static java.lang.reflect.Method setterOrNull(java.lang.Class, java.lang.String, java.lang.Class);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 0
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 12
StackMap locals: java.lang.Class java.lang.String java.lang.Class java.lang.reflect.Method top int int java.lang.reflect.Method[]
StackMap stack:
2: aload 7
iload 5
aaload
astore 4
start local 4 3: aload 4
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
astore 8
start local 8 4: aload 4
invokevirtual java.lang.reflect.Method.getParameterCount:()I
iconst_1
if_icmpne 11
aload 8
ldc "set"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 11
5: aload 8
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 9
start local 9 6: aload 9
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 10
start local 10 7: aload 10
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 8
aload 9
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
8: StackMap locals: java.lang.Class java.lang.String java.lang.Class java.lang.reflect.Method java.lang.reflect.Method int int java.lang.reflect.Method[] java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 4
astore 3
9: aload 2
ifnull 13
aload 4
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
iconst_0
aaload
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 11
10: goto 13
end local 10 end local 9 end local 8 end local 4 11: StackMap locals: java.lang.Class java.lang.String java.lang.Class java.lang.reflect.Method top int int java.lang.reflect.Method[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
iload 6
if_icmplt 2
13: StackMap locals: java.lang.Class java.lang.String java.lang.Class java.lang.reflect.Method
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 theClass Ljava/lang/Class;
0 14 1 propertyName Ljava/lang/String;
0 14 2 propertyType Ljava/lang/Class;
1 14 3 potentialSetter Ljava/lang/reflect/Method;
3 11 4 method Ljava/lang/reflect/Method;
4 11 8 methodName Ljava/lang/String;
6 11 9 testOldMethod Ljava/lang/String;
7 11 10 testStdMethod Ljava/lang/String;
MethodParameters:
Name Flags
theClass
propertyName
propertyType
public static java.lang.reflect.Method findGetterMethodForFieldAccess(java.lang.reflect.Field, java.lang.String);
descriptor: (Ljava/lang/reflect/Field;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 20
StackMap locals: java.lang.reflect.Field java.lang.String top int int java.lang.reflect.Method[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 2
invokevirtual java.lang.reflect.Method.getParameterCount:()I
ifeq 4
3: goto 19
4: StackMap locals: java.lang.reflect.Field java.lang.String java.lang.reflect.Method int int java.lang.reflect.Method[]
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifeq 6
5: goto 19
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
aload 0
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 8
7: goto 19
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
astore 6
start local 6 9: aload 6
ldc "get"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 14
10: aload 6
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 11: aload 7
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 12: aload 7
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
aload 8
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 2
areturn
end local 8 end local 7 14: StackMap locals:
StackMap stack:
aload 6
ldc "is"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
15: aload 6
iconst_2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 16: aload 7
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 17: aload 7
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 18
aload 8
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
18: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 2
areturn
end local 8 end local 7 end local 6 end local 2 19: StackMap locals: java.lang.reflect.Field java.lang.String top int int java.lang.reflect.Method[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
20: iload 3
iload 4
if_icmplt 1
21: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 field Ljava/lang/reflect/Field;
0 22 1 propertyName Ljava/lang/String;
2 19 2 method Ljava/lang/reflect/Method;
9 19 6 methodName Ljava/lang/String;
11 14 7 stemName Ljava/lang/String;
12 14 8 decapitalizedStemName Ljava/lang/String;
16 19 7 stemName Ljava/lang/String;
17 19 8 decapitalizedStemName Ljava/lang/String;
MethodParameters:
Name Flags
field
propertyName
}
SourceFile: "ReflectHelper.java"