public class org.hibernate.proxy.pojo.javassist.JavassistProxyFactory implements org.hibernate.proxy.ProxyFactory, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.proxy.pojo.javassist.JavassistProxyFactory
  super_class: java.lang.Object
{
  protected static final java.lang.Class[] NO_CLASSES;
    descriptor: [Ljava/lang/Class;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  private java.lang.Class persistentClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String entityName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Class[] interfaces;
    descriptor: [Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.reflect.Method getIdentifierMethod;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.reflect.Method setIdentifierMethod;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.type.CompositeType componentIdType;
    descriptor: Lorg/hibernate/type/CompositeType;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Class factory;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

  private boolean overridesEquals;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 43
            iconst_0
            anewarray java.lang.Class
            putstatic org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.NO_CLASSES:[Ljava/lang/Class;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/proxy/pojo/javassist/JavassistProxyFactory;

  public void postInstantiate(java.lang.String, java.lang.Class, java.util.Set, java.lang.reflect.Method, java.lang.reflect.Method, org.hibernate.type.CompositeType);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/util/Set;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Lorg/hibernate/type/CompositeType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Class persistentClass
        start local 3 // java.util.Set interfaces
        start local 4 // java.lang.reflect.Method getIdentifierMethod
        start local 5 // java.lang.reflect.Method setIdentifierMethod
        start local 6 // org.hibernate.type.CompositeType componentIdType
         0: .line 61
            aload 0 /* this */
            aload 1 /* entityName */
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.entityName:Ljava/lang/String;
         1: .line 62
            aload 0 /* this */
            aload 2 /* persistentClass */
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.persistentClass:Ljava/lang/Class;
         2: .line 63
            aload 0 /* this */
            aload 3 /* interfaces */
            getstatic org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.NO_CLASSES:[Ljava/lang/Class;
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.interfaces:[Ljava/lang/Class;
         3: .line 64
            aload 0 /* this */
            aload 4 /* getIdentifierMethod */
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.getIdentifierMethod:Ljava/lang/reflect/Method;
         4: .line 65
            aload 0 /* this */
            aload 5 /* setIdentifierMethod */
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.setIdentifierMethod:Ljava/lang/reflect/Method;
         5: .line 66
            aload 0 /* this */
            aload 6 /* componentIdType */
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.componentIdType:Lorg/hibernate/type/CompositeType;
         6: .line 67
            aload 0 /* this */
            aload 2 /* persistentClass */
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.interfaces:[Ljava/lang/Class;
            invokestatic org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/Class;
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.factory:Ljava/lang/Class;
         7: .line 68
            aload 0 /* this */
            aload 2 /* persistentClass */
            invokestatic org.hibernate.internal.util.ReflectHelper.overridesEquals:(Ljava/lang/Class;)Z
            putfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.overridesEquals:Z
         8: .line 69
            return
        end local 6 // org.hibernate.type.CompositeType componentIdType
        end local 5 // java.lang.reflect.Method setIdentifierMethod
        end local 4 // java.lang.reflect.Method getIdentifierMethod
        end local 3 // java.util.Set interfaces
        end local 2 // java.lang.Class persistentClass
        end local 1 // java.lang.String entityName
        end local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    9     0                 this  Lorg/hibernate/proxy/pojo/javassist/JavassistProxyFactory;
            0    9     1           entityName  Ljava/lang/String;
            0    9     2      persistentClass  Ljava/lang/Class;
            0    9     3           interfaces  Ljava/util/Set;
            0    9     4  getIdentifierMethod  Ljava/lang/reflect/Method;
            0    9     5  setIdentifierMethod  Ljava/lang/reflect/Method;
            0    9     6      componentIdType  Lorg/hibernate/type/CompositeType;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
                     Name  Flags
      entityName           final
      persistentClass      final
      interfaces           final
      getIdentifierMethod  final
      setIdentifierMethod  final
      componentIdType      

  public org.hibernate.proxy.HibernateProxy getProxy(java.io.Serializable, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;)Lorg/hibernate/proxy/HibernateProxy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=3, args_size=3
        start local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
        start local 1 // java.io.Serializable id
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 76
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.factory:Ljava/lang/Class;
         1: .line 77
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.entityName:Ljava/lang/String;
         2: .line 78
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.persistentClass:Ljava/lang/Class;
         3: .line 79
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.interfaces:[Ljava/lang/Class;
         4: .line 80
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.getIdentifierMethod:Ljava/lang/reflect/Method;
         5: .line 81
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.setIdentifierMethod:Ljava/lang/reflect/Method;
         6: .line 82
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.componentIdType:Lorg/hibernate/type/CompositeType;
         7: .line 83
            aload 1 /* id */
         8: .line 84
            aload 2 /* session */
         9: .line 85
            aload 0 /* this */
            getfield org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.overridesEquals:Z
        10: .line 75
            invokestatic org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxy:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Lorg/hibernate/type/CompositeType;Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;Z)Lorg/hibernate/proxy/HibernateProxy;
            areturn
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.io.Serializable id
        end local 0 // org.hibernate.proxy.pojo.javassist.JavassistProxyFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/hibernate/proxy/pojo/javassist/JavassistProxyFactory;
            0   11     1       id  Ljava/io/Serializable;
            0   11     2  session  Lorg/hibernate/engine/spi/SessionImplementor;
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      id       
      session  
}
SourceFile: "JavassistProxyFactory.java"