public class org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory implements org.hibernate.id.factory.spi.MutableIdentifierGeneratorFactory, java.io.Serializable, org.hibernate.service.spi.ServiceRegistryAwareService
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory
super_class: java.lang.Object
{
private static final org.hibernate.internal.CoreMessageLogger LOG;
descriptor: Lorg/hibernate/internal/CoreMessageLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private transient org.hibernate.dialect.Dialect dialect;
descriptor: Lorg/hibernate/dialect/Dialect;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private java.util.concurrent.ConcurrentHashMap<java.lang.String, java.lang.Class> generatorStrategyToClassNameMap;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Ljava/lang/Class;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lorg/hibernate/internal/CoreMessageLogger;
1: ldc Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
2: invokestatic org.jboss.logging.Logger.getMessageLogger:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.hibernate.internal.CoreMessageLogger
putstatic org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.LOG:Lorg/hibernate/internal/CoreMessageLogger;
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.generatorStrategyToClassNameMap:Ljava/util/concurrent/ConcurrentHashMap;
2: aload 0
ldc "uuid2"
ldc Lorg/hibernate/id/UUIDGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
3: aload 0
ldc "guid"
ldc Lorg/hibernate/id/GUIDGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
4: aload 0
ldc "uuid"
ldc Lorg/hibernate/id/UUIDHexGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
5: aload 0
ldc "uuid.hex"
ldc Lorg/hibernate/id/UUIDHexGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
6: aload 0
ldc "hilo"
ldc Lorg/hibernate/id/TableHiLoGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
7: aload 0
ldc "assigned"
ldc Lorg/hibernate/id/Assigned;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
8: aload 0
ldc "identity"
ldc Lorg/hibernate/id/IdentityGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
9: aload 0
ldc "select"
ldc Lorg/hibernate/id/SelectGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
10: aload 0
ldc "sequence"
ldc Lorg/hibernate/id/SequenceGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
11: aload 0
ldc "seqhilo"
ldc Lorg/hibernate/id/SequenceHiLoGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
12: aload 0
ldc "increment"
ldc Lorg/hibernate/id/IncrementGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
13: aload 0
ldc "foreign"
ldc Lorg/hibernate/id/ForeignGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
14: aload 0
ldc "sequence-identity"
ldc Lorg/hibernate/id/SequenceIdentityGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
15: aload 0
ldc "enhanced-sequence"
ldc Lorg/hibernate/id/enhanced/SequenceStyleGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
16: aload 0
ldc "enhanced-table"
ldc Lorg/hibernate/id/enhanced/TableGenerator;
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.register:(Ljava/lang/String;Ljava/lang/Class;)V
17: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
public void register(java.lang.String, java.lang.Class);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Registering IdentifierGenerator strategy [%s] -> [%s]"
aload 1
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
1: aload 0
getfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.generatorStrategyToClassNameMap:Ljava/util/concurrent/ConcurrentHashMap;
aload 1
aload 2
invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
astore 3
start local 3 2: aload 3
ifnull 4
3: getstatic org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc " - overriding [%s]"
aload 3
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
4: StackMap locals: java.lang.Class
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
0 5 1 strategy Ljava/lang/String;
0 5 2 generatorClass Ljava/lang/Class;
2 5 3 previous Ljava/lang/Class;
MethodParameters:
Name Flags
strategy
generatorClass
public org.hibernate.dialect.Dialect getDialect();
descriptor: ()Lorg/hibernate/dialect/Dialect;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.dialect:Lorg/hibernate/dialect/Dialect;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
public void setDialect(org.hibernate.dialect.Dialect);
descriptor: (Lorg/hibernate/dialect/Dialect;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Setting dialect [%s]"
aload 1
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
1: aload 0
aload 1
putfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.dialect:Lorg/hibernate/dialect/Dialect;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
0 3 1 dialect Lorg/hibernate/dialect/Dialect;
MethodParameters:
Name Flags
dialect
public org.hibernate.id.IdentifierGenerator createIdentifierGenerator(java.lang.String, org.hibernate.type.Type, java.util.Properties);
descriptor: (Ljava/lang/String;Lorg/hibernate/type/Type;Ljava/util/Properties;)Lorg/hibernate/id/IdentifierGenerator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.getIdentifierGeneratorClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 4
start local 4 1: aload 4
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.hibernate.id.IdentifierGenerator
astore 5
start local 5 2: aload 5
instanceof org.hibernate.id.Configurable
ifeq 4
3: aload 5
checkcast org.hibernate.id.Configurable
aload 2
aload 3
aload 0
getfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.dialect:Lorg/hibernate/dialect/Dialect;
invokeinterface org.hibernate.id.Configurable.configure:(Lorg/hibernate/type/Type;Ljava/util/Properties;Lorg/hibernate/dialect/Dialect;)V
4: StackMap locals: java.lang.Class org.hibernate.id.IdentifierGenerator
StackMap stack:
aload 5
5: areturn
end local 5 end local 4 6: StackMap locals: org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory java.lang.String org.hibernate.type.Type java.util.Properties
StackMap stack: java.lang.Exception
astore 4
start local 4 7: aload 3
ldc "entity_name"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 8: new org.hibernate.MappingException
dup
ldc "Could not instantiate id generator [entity-name=%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 4
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
0 9 1 strategy Ljava/lang/String;
0 9 2 type Lorg/hibernate/type/Type;
0 9 3 config Ljava/util/Properties;
1 6 4 clazz Ljava/lang/Class;
2 6 5 identifierGenerator Lorg/hibernate/id/IdentifierGenerator;
7 9 4 e Ljava/lang/Exception;
8 9 5 entityName Ljava/lang/String;
Exception table:
from to target type
0 5 6 Class java.lang.Exception
MethodParameters:
Name Flags
strategy
type
config
public java.lang.Class getIdentifierGeneratorClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: ldc "native"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
getfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.dialect:Lorg/hibernate/dialect/Dialect;
invokevirtual org.hibernate.dialect.Dialect.getNativeIdentifierGeneratorClass:()Ljava/lang/Class;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.generatorStrategyToClassNameMap:Ljava/util/concurrent/ConcurrentHashMap;
aload 1
invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
astore 2
start local 2 3: aload 2
ifnonnull 8
4: aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.classForName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
5: goto 8
6: StackMap locals: org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory java.lang.String java.lang.Class
StackMap stack: java.lang.ClassNotFoundException
pop
7: new org.hibernate.MappingException
dup
ldc "Could not interpret id generator strategy [%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
0 9 1 strategy Ljava/lang/String;
3 9 2 generatorClass Ljava/lang/Class;
Exception table:
from to target type
3 5 6 Class java.lang.ClassNotFoundException
MethodParameters:
Name Flags
strategy
public void injectServices(org.hibernate.service.spi.ServiceRegistryImplementor);
descriptor: (Lorg/hibernate/service/spi/ServiceRegistryImplementor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc Lorg/hibernate/engine/jdbc/spi/JdbcServices;
invokeinterface org.hibernate.service.spi.ServiceRegistryImplementor.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
checkcast org.hibernate.engine.jdbc.spi.JdbcServices
invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getDialect:()Lorg/hibernate/dialect/Dialect;
putfield org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.dialect:Lorg/hibernate/dialect/Dialect;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/id/factory/internal/DefaultIdentifierGeneratorFactory;
0 2 1 serviceRegistry Lorg/hibernate/service/spi/ServiceRegistryImplementor;
MethodParameters:
Name Flags
serviceRegistry
}
SourceFile: "DefaultIdentifierGeneratorFactory.java"