public class org.hibernate.jpa.HibernatePersistenceProvider implements javax.persistence.spi.PersistenceProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.jpa.HibernatePersistenceProvider
  super_class: java.lang.Object
{
  private static final org.jboss.logging.Logger log;
    descriptor: Lorg/jboss/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.hibernate.jpa.internal.util.PersistenceUtilHelper$MetadataCache cache;
    descriptor: Lorg/hibernate/jpa/internal/util/PersistenceUtilHelper$MetadataCache;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.persistence.spi.ProviderUtil providerUtil;
    descriptor: Ljavax/persistence/spi/ProviderUtil;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 38
            ldc Lorg/hibernate/jpa/HibernatePersistenceProvider;
            invokestatic org.jboss.logging.Logger.getLogger:(Ljava/lang/Class;)Lorg/jboss/logging/Logger;
            putstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
         0: .line 37
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            aload 0 /* this */
            new org.hibernate.jpa.internal.util.PersistenceUtilHelper$MetadataCache
            dup
            invokespecial org.hibernate.jpa.internal.util.PersistenceUtilHelper$MetadataCache.<init>:()V
            putfield org.hibernate.jpa.HibernatePersistenceProvider.cache:Lorg/hibernate/jpa/internal/util/PersistenceUtilHelper$MetadataCache;
         2: .line 187
            aload 0 /* this */
            new org.hibernate.jpa.HibernatePersistenceProvider$1
            dup
            aload 0 /* this */
            invokespecial org.hibernate.jpa.HibernatePersistenceProvider$1.<init>:(Lorg/hibernate/jpa/HibernatePersistenceProvider;)V
            putfield org.hibernate.jpa.HibernatePersistenceProvider.providerUtil:Ljavax/persistence/spi/ProviderUtil;
         3: .line 37
            return
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hibernate/jpa/HibernatePersistenceProvider;

  public javax.persistence.EntityManagerFactory createEntityManagerFactory(java.lang.String, java.util.Map);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)Ljavax/persistence/EntityManagerFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map properties
         0: .line 49
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Starting createEntityManagerFactory for persistenceUnitName %s"
            aload 1 /* persistenceUnitName */
            invokevirtual org.jboss.logging.Logger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 52
            aload 0 /* this */
            aload 1 /* persistenceUnitName */
            aload 2 /* properties */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull:(Ljava/lang/String;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            astore 3 /* builder */
        start local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
         2: .line 53
            aload 3 /* builder */
            ifnonnull 5
         3: .line 54
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Could not obtain matching EntityManagerFactoryBuilder, returning null"
            invokevirtual org.jboss.logging.Logger.trace:(Ljava/lang/Object;)V
         4: .line 55
            aconst_null
            areturn
         5: .line 58
      StackMap locals: org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder
      StackMap stack:
            aload 3 /* builder */
            invokeinterface org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.build:()Ljavax/persistence/EntityManagerFactory;
         6: areturn
        end local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
         7: .line 61
      StackMap locals: org.hibernate.jpa.HibernatePersistenceProvider java.lang.String java.util.Map
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
         8: .line 62
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Unable to create EntityManagerFactory"
            aload 3 /* e */
            invokevirtual org.jboss.logging.Logger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 3 // java.lang.Exception e
         9: .line 65
            aconst_null
            areturn
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   10     0                 this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0   10     1  persistenceUnitName  Ljava/lang/String;
            0   10     2           properties  Ljava/util/Map;
            2    7     3              builder  Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            8    9     3                    e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     4       7  Class java.lang.Exception
           5     6       7  Class java.lang.Exception
    MethodParameters:
                     Name  Flags
      persistenceUnitName  
      properties           

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull(java.lang.String, java.util.Map);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map properties
         0: .line 69
            aload 0 /* this */
            aload 1 /* persistenceUnitName */
            aload 2 /* properties */
            aconst_null
            aconst_null
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/ClassLoader;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1  persistenceUnitName  Ljava/lang/String;
            0    1     2           properties  Ljava/util/Map;
    MethodParameters:
                     Name  Flags
      persistenceUnitName  
      properties           

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull(java.lang.String, java.util.Map, java.lang.ClassLoader);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Ljava/lang/ClassLoader;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map properties
        start local 3 // java.lang.ClassLoader providedClassLoader
         0: .line 74
            aload 0 /* this */
            aload 1 /* persistenceUnitName */
            aload 2 /* properties */
            aload 3 /* providedClassLoader */
            aconst_null
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/ClassLoader;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 3 // java.lang.ClassLoader providedClassLoader
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1  persistenceUnitName  Ljava/lang/String;
            0    1     2           properties  Ljava/util/Map;
            0    1     3  providedClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
                     Name  Flags
      persistenceUnitName  
      properties           
      providedClassLoader  

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull(java.lang.String, java.util.Map, org.hibernate.boot.registry.classloading.spi.ClassLoaderService);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map properties
        start local 3 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
         0: .line 79
            aload 0 /* this */
            aload 1 /* persistenceUnitName */
            aload 2 /* properties */
            aconst_null
            aload 3 /* providedClassLoaderService */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/ClassLoader;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 3 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    1     0                        this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1         persistenceUnitName  Ljava/lang/String;
            0    1     2                  properties  Ljava/util/Map;
            0    1     3  providedClassLoaderService  Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
    MethodParameters:
                            Name  Flags
      persistenceUnitName         
      properties                  
      providedClassLoaderService  

  private org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull(java.lang.String, java.util.Map, java.lang.ClassLoader, org.hibernate.boot.registry.classloading.spi.ClassLoaderService);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Ljava/lang/ClassLoader;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map properties
        start local 3 // java.lang.ClassLoader providedClassLoader
        start local 4 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
         0: .line 84
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Attempting to obtain correct EntityManagerFactoryBuilder for persistenceUnitName : %s"
            aload 1 /* persistenceUnitName */
            invokevirtual org.jboss.logging.Logger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 86
            aload 2 /* properties */
            invokestatic org.hibernate.jpa.HibernatePersistenceProvider.wrap:(Ljava/util/Map;)Ljava/util/Map;
            astore 5 /* integration */
        start local 5 // java.util.Map integration
         2: .line 89
            aload 5 /* integration */
            invokestatic org.hibernate.jpa.boot.internal.PersistenceXmlParser.locatePersistenceUnits:(Ljava/util/Map;)Ljava/util/List;
            astore 6 /* units */
        start local 6 // java.util.List units
         3: .line 90
            goto 7
        end local 6 // java.util.List units
         4: .line 91
      StackMap locals: org.hibernate.jpa.HibernatePersistenceProvider java.lang.String java.util.Map java.lang.ClassLoader org.hibernate.boot.registry.classloading.spi.ClassLoaderService java.util.Map
      StackMap stack: java.lang.Exception
            astore 7 /* e */
        start local 7 // java.lang.Exception e
         5: .line 92
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Unable to locate persistence units"
            aload 7 /* e */
            invokevirtual org.jboss.logging.Logger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         6: .line 93
            new javax.persistence.PersistenceException
            dup
            ldc "Unable to locate persistence units"
            aload 7 /* e */
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.lang.Exception e
        start local 6 // java.util.List units
         7: .line 96
      StackMap locals: java.util.List
      StackMap stack:
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Located and parsed %s persistence units; checking each"
            aload 6 /* units */
            invokeinterface java.util.List.size:()I
            invokevirtual org.jboss.logging.Logger.debugf:(Ljava/lang/String;I)V
         8: .line 98
            aload 1 /* persistenceUnitName */
            ifnonnull 10
            aload 6 /* units */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmple 10
         9: .line 100
            new javax.persistence.PersistenceException
            dup
            ldc "No name provided and multiple persistence units found"
            invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 103
      StackMap locals:
      StackMap stack:
            aload 6 /* units */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 30
      StackMap locals: org.hibernate.jpa.HibernatePersistenceProvider java.lang.String java.util.Map java.lang.ClassLoader org.hibernate.boot.registry.classloading.spi.ClassLoaderService java.util.Map java.util.List top java.util.Iterator
      StackMap stack:
        11: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor
            astore 7 /* persistenceUnit */
        start local 7 // org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor persistenceUnit
        12: .line 104
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
        13: .line 105
            ldc "Checking persistence-unit [name=%s, explicit-provider=%s] against incoming persistence unit name [%s]"
        14: .line 106
            aload 7 /* persistenceUnit */
            invokevirtual org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor.getName:()Ljava/lang/String;
        15: .line 107
            aload 7 /* persistenceUnit */
            invokevirtual org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor.getProviderClassName:()Ljava/lang/String;
        16: .line 108
            aload 1 /* persistenceUnitName */
        17: .line 104
            invokevirtual org.jboss.logging.Logger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        18: .line 111
            aload 1 /* persistenceUnitName */
            ifnull 19
            aload 7 /* persistenceUnit */
            invokevirtual org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor.getName:()Ljava/lang/String;
            aload 1 /* persistenceUnitName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 19
            iconst_0
            goto 20
      StackMap locals: org.hibernate.jpa.HibernatePersistenceProvider java.lang.String java.util.Map java.lang.ClassLoader org.hibernate.boot.registry.classloading.spi.ClassLoaderService java.util.Map java.util.List org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor java.util.Iterator
      StackMap stack:
        19: iconst_1
      StackMap locals:
      StackMap stack: int
        20: istore 9 /* matches */
        start local 9 // boolean matches
        21: .line 112
            iload 9 /* matches */
            ifne 24
        22: .line 113
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Excluding from consideration due to name mis-match"
            invokevirtual org.jboss.logging.Logger.debug:(Ljava/lang/Object;)V
        23: .line 114
            goto 30
        24: .line 118
      StackMap locals: int
      StackMap stack:
            aload 7 /* persistenceUnit */
            aload 2 /* properties */
            invokestatic org.hibernate.jpa.boot.spi.ProviderChecker.isProvider:(Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;)Z
            ifne 27
        25: .line 119
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Excluding from consideration due to provider mis-match"
            invokevirtual org.jboss.logging.Logger.debug:(Ljava/lang/Object;)V
        26: .line 120
            goto 30
        27: .line 123
      StackMap locals:
      StackMap stack:
            aload 4 /* providedClassLoaderService */
            ifnull 29
        28: .line 124
            aload 0 /* this */
            aload 7 /* persistenceUnit */
            aload 5 /* integration */
            aload 4 /* providedClassLoaderService */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder:(Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        29: .line 127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* persistenceUnit */
            aload 5 /* integration */
            aload 3 /* providedClassLoader */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder:(Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Ljava/lang/ClassLoader;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 9 // boolean matches
        end local 7 // org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor persistenceUnit
        30: .line 103
      StackMap locals: org.hibernate.jpa.HibernatePersistenceProvider java.lang.String java.util.Map java.lang.ClassLoader org.hibernate.boot.registry.classloading.spi.ClassLoaderService java.util.Map java.util.List top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        31: .line 131
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Found no matching persistence units"
            invokevirtual org.jboss.logging.Logger.debug:(Ljava/lang/Object;)V
        32: .line 132
            aconst_null
            areturn
        end local 6 // java.util.List units
        end local 5 // java.util.Map integration
        end local 4 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
        end local 3 // java.lang.ClassLoader providedClassLoader
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   33     0                        this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0   33     1         persistenceUnitName  Ljava/lang/String;
            0   33     2                  properties  Ljava/util/Map;
            0   33     3         providedClassLoader  Ljava/lang/ClassLoader;
            0   33     4  providedClassLoaderService  Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
            2   33     5                 integration  Ljava/util/Map;
            3    4     6                       units  Ljava/util/List<Lorg/hibernate/jpa/boot/internal/ParsedPersistenceXmlDescriptor;>;
            7   33     6                       units  Ljava/util/List<Lorg/hibernate/jpa/boot/internal/ParsedPersistenceXmlDescriptor;>;
            5    7     7                           e  Ljava/lang/Exception;
           12   30     7             persistenceUnit  Lorg/hibernate/jpa/boot/internal/ParsedPersistenceXmlDescriptor;
           21   30     9                     matches  Z
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    MethodParameters:
                            Name  Flags
      persistenceUnitName         
      properties                  
      providedClassLoader         
      providedClassLoaderService  

  protected static java.util.Map wrap(java.util.Map);
    descriptor: (Ljava/util/Map;)Ljava/util/Map;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Map properties
         0: .line 137
            aload 0 /* properties */
            ifnonnull 1
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* properties */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
      StackMap locals:
      StackMap stack: java.util.Map
         2: areturn
        end local 0 // java.util.Map properties
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  properties  Ljava/util/Map;
    MethodParameters:
            Name  Flags
      properties  

  public javax.persistence.EntityManagerFactory createContainerEntityManagerFactory(javax.persistence.spi.PersistenceUnitInfo, java.util.Map);
    descriptor: (Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)Ljavax/persistence/EntityManagerFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // javax.persistence.spi.PersistenceUnitInfo info
        start local 2 // java.util.Map properties
         0: .line 147
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Starting createContainerEntityManagerFactory : %s"
            aload 1 /* info */
            invokeinterface javax.persistence.spi.PersistenceUnitInfo.getPersistenceUnitName:()Ljava/lang/String;
            invokevirtual org.jboss.logging.Logger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 149
            aload 0 /* this */
            aload 1 /* info */
            aload 2 /* properties */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder:(Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            invokeinterface org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.build:()Ljavax/persistence/EntityManagerFactory;
            areturn
        end local 2 // java.util.Map properties
        end local 1 // javax.persistence.spi.PersistenceUnitInfo info
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    2     1        info  Ljavax/persistence/spi/PersistenceUnitInfo;
            0    2     2  properties  Ljava/util/Map;
    MethodParameters:
            Name  Flags
      info        
      properties  

  public void generateSchema(javax.persistence.spi.PersistenceUnitInfo, java.util.Map);
    descriptor: (Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // javax.persistence.spi.PersistenceUnitInfo info
        start local 2 // java.util.Map map
         0: .line 154
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Starting generateSchema : PUI.name=%s"
            aload 1 /* info */
            invokeinterface javax.persistence.spi.PersistenceUnitInfo.getPersistenceUnitName:()Ljava/lang/String;
            invokevirtual org.jboss.logging.Logger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 156
            aload 0 /* this */
            aload 1 /* info */
            aload 2 /* map */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder:(Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            astore 3 /* builder */
        start local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
         2: .line 157
            aload 3 /* builder */
            invokeinterface org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.generateSchema:()V
         3: .line 158
            return
        end local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
        end local 2 // java.util.Map map
        end local 1 // javax.persistence.spi.PersistenceUnitInfo info
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    4     1     info  Ljavax/persistence/spi/PersistenceUnitInfo;
            0    4     2      map  Ljava/util/Map;
            2    4     3  builder  Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    MethodParameters:
      Name  Flags
      info  
      map   

  public boolean generateSchema(java.lang.String, java.util.Map);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // java.lang.String persistenceUnitName
        start local 2 // java.util.Map map
         0: .line 162
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Starting generateSchema for persistenceUnitName %s"
            aload 1 /* persistenceUnitName */
            invokevirtual org.jboss.logging.Logger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 164
            aload 0 /* this */
            aload 1 /* persistenceUnitName */
            aload 2 /* map */
            invokevirtual org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull:(Ljava/lang/String;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            astore 3 /* builder */
        start local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
         2: .line 165
            aload 3 /* builder */
            ifnonnull 5
         3: .line 166
            getstatic org.hibernate.jpa.HibernatePersistenceProvider.log:Lorg/jboss/logging/Logger;
            ldc "Could not obtain matching EntityManagerFactoryBuilder, returning false"
            invokevirtual org.jboss.logging.Logger.trace:(Ljava/lang/Object;)V
         4: .line 167
            iconst_0
            ireturn
         5: .line 169
      StackMap locals: org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder
      StackMap stack:
            aload 3 /* builder */
            invokeinterface org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.generateSchema:()V
         6: .line 170
            iconst_1
            ireturn
        end local 3 // org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder builder
        end local 2 // java.util.Map map
        end local 1 // java.lang.String persistenceUnitName
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    7     0                 this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    7     1  persistenceUnitName  Ljava/lang/String;
            0    7     2                  map  Ljava/util/Map;
            2    7     3              builder  Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    MethodParameters:
                     Name  Flags
      persistenceUnitName  
      map                  

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilder(javax.persistence.spi.PersistenceUnitInfo, java.util.Map);
    descriptor: (Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // javax.persistence.spi.PersistenceUnitInfo info
        start local 2 // java.util.Map integration
         0: .line 174
            aload 1 /* info */
            aload 2 /* integration */
            invokestatic org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder:(Ljavax/persistence/spi/PersistenceUnitInfo;Ljava/util/Map;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 2 // java.util.Map integration
        end local 1 // javax.persistence.spi.PersistenceUnitInfo info
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1         info  Ljavax/persistence/spi/PersistenceUnitInfo;
            0    1     2  integration  Ljava/util/Map;
    MethodParameters:
             Name  Flags
      info         
      integration  

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilder(org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor, java.util.Map, java.lang.ClassLoader);
    descriptor: (Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Ljava/lang/ClassLoader;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor persistenceUnitDescriptor
        start local 2 // java.util.Map integration
        start local 3 // java.lang.ClassLoader providedClassLoader
         0: .line 179
            aload 1 /* persistenceUnitDescriptor */
            aload 2 /* integration */
            aload 3 /* providedClassLoader */
            invokestatic org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder:(Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Ljava/lang/ClassLoader;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 3 // java.lang.ClassLoader providedClassLoader
        end local 2 // java.util.Map integration
        end local 1 // org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor persistenceUnitDescriptor
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    1     0                       this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1  persistenceUnitDescriptor  Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;
            0    1     2                integration  Ljava/util/Map;
            0    1     3        providedClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
                           Name  Flags
      persistenceUnitDescriptor  
      integration                
      providedClassLoader        

  protected org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder getEntityManagerFactoryBuilder(org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor, java.util.Map, org.hibernate.boot.registry.classloading.spi.ClassLoaderService);
    descriptor: (Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
        start local 1 // org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor persistenceUnitDescriptor
        start local 2 // java.util.Map integration
        start local 3 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
         0: .line 184
            aload 1 /* persistenceUnitDescriptor */
            aload 2 /* integration */
            aload 3 /* providedClassLoaderService */
            invokestatic org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder:(Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;Ljava/util/Map;Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;)Lorg/hibernate/jpa/boot/spi/EntityManagerFactoryBuilder;
            areturn
        end local 3 // org.hibernate.boot.registry.classloading.spi.ClassLoaderService providedClassLoaderService
        end local 2 // java.util.Map integration
        end local 1 // org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor persistenceUnitDescriptor
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    1     0                        this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
            0    1     1   persistenceUnitDescriptor  Lorg/hibernate/jpa/boot/spi/PersistenceUnitDescriptor;
            0    1     2                 integration  Ljava/util/Map;
            0    1     3  providedClassLoaderService  Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
    MethodParameters:
                            Name  Flags
      persistenceUnitDescriptor   
      integration                 
      providedClassLoaderService  

  public javax.persistence.spi.ProviderUtil getProviderUtil();
    descriptor: ()Ljavax/persistence/spi/ProviderUtil;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
         0: .line 204
            aload 0 /* this */
            getfield org.hibernate.jpa.HibernatePersistenceProvider.providerUtil:Ljavax/persistence/spi/ProviderUtil;
            areturn
        end local 0 // org.hibernate.jpa.HibernatePersistenceProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/jpa/HibernatePersistenceProvider;
}
SourceFile: "HibernatePersistenceProvider.java"
NestMembers:
  org.hibernate.jpa.HibernatePersistenceProvider$1
InnerClasses:
  org.hibernate.jpa.HibernatePersistenceProvider$1
  public MetadataCache = org.hibernate.jpa.internal.util.PersistenceUtilHelper$MetadataCache of org.hibernate.jpa.internal.util.PersistenceUtilHelper