abstract class org.springframework.data.jpa.provider.JpaClassUtils
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: org.springframework.data.jpa.provider.JpaClassUtils
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.data.jpa.provider.JpaClassUtils this
         0: .line 37
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.springframework.data.jpa.provider.JpaClassUtils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/data/jpa/provider/JpaClassUtils;

  public static boolean isEntityManagerOfType(javax.persistence.EntityManager, java.lang.String);
    descriptor: (Ljavax/persistence/EntityManager;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javax.persistence.EntityManager em
        start local 1 // java.lang.String type
         0: .line 48
            aload 0 /* em */
            astore 2 /* entityManagerToUse */
        start local 2 // javax.persistence.EntityManager entityManagerToUse
         1: .line 49
            aload 0 /* em */
            invokeinterface javax.persistence.EntityManager.getDelegate:()Ljava/lang/Object;
            astore 3 /* delegate */
        start local 3 // java.lang.Object delegate
         2: .line 51
            aload 3 /* delegate */
            instanceof javax.persistence.EntityManager
            ifeq 4
         3: .line 52
            aload 3 /* delegate */
            checkcast javax.persistence.EntityManager
            astore 2 /* entityManagerToUse */
         4: .line 55
      StackMap locals: javax.persistence.EntityManager java.lang.Object
      StackMap stack:
            aload 2 /* entityManagerToUse */
            aload 1 /* type */
            aload 2 /* entityManagerToUse */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic org.springframework.data.jpa.provider.JpaClassUtils.isOfType:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/ClassLoader;)Z
            ireturn
        end local 3 // java.lang.Object delegate
        end local 2 // javax.persistence.EntityManager entityManagerToUse
        end local 1 // java.lang.String type
        end local 0 // javax.persistence.EntityManager em
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                  em  Ljavax/persistence/EntityManager;
            0    5     1                type  Ljava/lang/String;
            1    5     2  entityManagerToUse  Ljavax/persistence/EntityManager;
            2    5     3            delegate  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      em    
      type  

  public static boolean isMetamodelOfType(javax.persistence.metamodel.Metamodel, java.lang.String);
    descriptor: (Ljavax/persistence/metamodel/Metamodel;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.persistence.metamodel.Metamodel metamodel
        start local 1 // java.lang.String type
         0: .line 59
            aload 0 /* metamodel */
            aload 1 /* type */
            aload 0 /* metamodel */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic org.springframework.data.jpa.provider.JpaClassUtils.isOfType:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/ClassLoader;)Z
            ireturn
        end local 1 // java.lang.String type
        end local 0 // javax.persistence.metamodel.Metamodel metamodel
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  metamodel  Ljavax/persistence/metamodel/Metamodel;
            0    1     1       type  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      metamodel  
      type       

  private static boolean isOfType(java.lang.Object, java.lang.String, java.lang.ClassLoader);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/ClassLoader;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.Object source
        start local 1 // java.lang.String typeName
        start local 2 // java.lang.ClassLoader classLoader
         0: .line 64
            aload 0 /* source */
            ldc "Source instance must not be null!"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 65
            aload 1 /* typeName */
            ldc "Target type name must not be null or empty!"
            invokestatic org.springframework.util.Assert.hasText:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 68
            aload 1 /* typeName */
            aload 2 /* classLoader */
            invokestatic org.springframework.util.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
            aload 0 /* source */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
         3: ireturn
         4: .line 69
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         5: .line 70
            iconst_0
            ireturn
        end local 2 // java.lang.ClassLoader classLoader
        end local 1 // java.lang.String typeName
        end local 0 // java.lang.Object source
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0       source  Ljava/lang/Object;
            0    6     1     typeName  Ljava/lang/String;
            0    6     2  classLoader  Ljava/lang/ClassLoader;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      source       
      typeName     
      classLoader  
}
SourceFile: "JpaClassUtils.java"