public abstract class org.hibernate.boot.model.naming.ObjectNameNormalizer
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.boot.model.naming.ObjectNameNormalizer
  super_class: java.lang.Object
{
  private org.hibernate.boot.model.relational.Database database;
    descriptor: Lorg/hibernate/boot/model/relational/Database;
    flags: (0x0002) ACC_PRIVATE

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

  public org.hibernate.boot.model.naming.Identifier normalizeIdentifierQuoting(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // java.lang.String identifierText
         0: .line 34
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.database:()Lorg/hibernate/boot/model/relational/Database;
            aload 1 /* identifierText */
            invokevirtual org.hibernate.boot.model.relational.Database.toIdentifier:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            areturn
        end local 1 // java.lang.String identifierText
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0    1     1  identifierText  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      identifierText  

  protected org.hibernate.boot.model.relational.Database database();
    descriptor: ()Lorg/hibernate/boot/model/relational/Database;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
         0: .line 38
            aload 0 /* this */
            getfield org.hibernate.boot.model.naming.ObjectNameNormalizer.database:Lorg/hibernate/boot/model/relational/Database;
            ifnonnull 2
         1: .line 39
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.getBuildingContext:()Lorg/hibernate/boot/spi/MetadataBuildingContext;
            invokeinterface org.hibernate.boot.spi.MetadataBuildingContext.getMetadataCollector:()Lorg/hibernate/boot/spi/InFlightMetadataCollector;
            invokeinterface org.hibernate.boot.spi.InFlightMetadataCollector.getDatabase:()Lorg/hibernate/boot/model/relational/Database;
            putfield org.hibernate.boot.model.naming.ObjectNameNormalizer.database:Lorg/hibernate/boot/model/relational/Database;
         2: .line 41
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.boot.model.naming.ObjectNameNormalizer.database:Lorg/hibernate/boot/model/relational/Database;
            areturn
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;

  public org.hibernate.boot.model.naming.Identifier normalizeIdentifierQuoting(org.hibernate.boot.model.naming.Identifier);
    descriptor: (Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/boot/model/naming/Identifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // org.hibernate.boot.model.naming.Identifier identifier
         0: .line 45
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.getBuildingContext:()Lorg/hibernate/boot/spi/MetadataBuildingContext;
            invokeinterface org.hibernate.boot.spi.MetadataBuildingContext.getMetadataCollector:()Lorg/hibernate/boot/spi/InFlightMetadataCollector;
         1: .line 46
            invokeinterface org.hibernate.boot.spi.InFlightMetadataCollector.getDatabase:()Lorg/hibernate/boot/model/relational/Database;
         2: .line 47
            invokevirtual org.hibernate.boot.model.relational.Database.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
         3: .line 48
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
         4: .line 49
            aload 1 /* identifier */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.normalizeQuoting:(Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/boot/model/naming/Identifier;
         5: .line 45
            areturn
        end local 1 // org.hibernate.boot.model.naming.Identifier identifier
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0    6     1  identifier  Lorg/hibernate/boot/model/naming/Identifier;
    MethodParameters:
            Name  Flags
      identifier  

  public java.lang.String normalizeIdentifierQuotingAsString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // java.lang.String identifierText
         0: .line 60
            aload 0 /* this */
            aload 1 /* identifierText */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.normalizeIdentifierQuoting:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
            astore 2 /* identifier */
        start local 2 // org.hibernate.boot.model.naming.Identifier identifier
         1: .line 61
            aload 2 /* identifier */
            ifnonnull 3
         2: .line 62
            aconst_null
            areturn
         3: .line 64
      StackMap locals: org.hibernate.boot.model.naming.Identifier
      StackMap stack:
            aload 2 /* identifier */
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.database:()Lorg/hibernate/boot/model/relational/Database;
            invokevirtual org.hibernate.boot.model.relational.Database.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            areturn
        end local 2 // org.hibernate.boot.model.naming.Identifier identifier
        end local 1 // java.lang.String identifierText
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0    4     1  identifierText  Ljava/lang/String;
            1    4     2      identifier  Lorg/hibernate/boot/model/naming/Identifier;
    MethodParameters:
                Name  Flags
      identifierText  

  public java.lang.String toDatabaseIdentifierText(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // java.lang.String identifierText
         0: .line 68
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.database:()Lorg/hibernate/boot/model/relational/Database;
            invokevirtual org.hibernate.boot.model.relational.Database.getDialect:()Lorg/hibernate/dialect/Dialect;
            aload 0 /* this */
            aload 1 /* identifierText */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.normalizeIdentifierQuotingAsString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.hibernate.dialect.Dialect.quote:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String identifierText
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0    1     1  identifierText  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      identifierText  

  public org.hibernate.boot.model.naming.Identifier determineLogicalName(java.lang.String, org.hibernate.boot.model.naming.NamingStrategyHelper);
    descriptor: (Ljava/lang/String;Lorg/hibernate/boot/model/naming/NamingStrategyHelper;)Lorg/hibernate/boot/model/naming/Identifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // java.lang.String explicitName
        start local 2 // org.hibernate.boot.model.naming.NamingStrategyHelper namingStrategyHelper
         0: .line 81
            aload 1 /* explicitName */
            invokestatic org.hibernate.internal.util.StringHelper.isEmpty:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 82
            aload 2 /* namingStrategyHelper */
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.getBuildingContext:()Lorg/hibernate/boot/spi/MetadataBuildingContext;
            invokeinterface org.hibernate.boot.model.naming.NamingStrategyHelper.determineImplicitName:(Lorg/hibernate/boot/spi/MetadataBuildingContext;)Lorg/hibernate/boot/model/naming/Identifier;
            astore 3 /* logicalName */
        start local 3 // org.hibernate.boot.model.naming.Identifier logicalName
         2: .line 83
            goto 4
        end local 3 // org.hibernate.boot.model.naming.Identifier logicalName
         3: .line 85
      StackMap locals:
      StackMap stack:
            aload 2 /* namingStrategyHelper */
            aload 1 /* explicitName */
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.getBuildingContext:()Lorg/hibernate/boot/spi/MetadataBuildingContext;
            invokeinterface org.hibernate.boot.model.naming.NamingStrategyHelper.handleExplicitName:(Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)Lorg/hibernate/boot/model/naming/Identifier;
            astore 3 /* logicalName */
        start local 3 // org.hibernate.boot.model.naming.Identifier logicalName
         4: .line 87
      StackMap locals: org.hibernate.boot.model.naming.Identifier
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.getBuildingContext:()Lorg/hibernate/boot/spi/MetadataBuildingContext;
            invokeinterface org.hibernate.boot.spi.MetadataBuildingContext.getMetadataCollector:()Lorg/hibernate/boot/spi/InFlightMetadataCollector;
         5: .line 88
            invokeinterface org.hibernate.boot.spi.InFlightMetadataCollector.getDatabase:()Lorg/hibernate/boot/model/relational/Database;
         6: .line 89
            invokevirtual org.hibernate.boot.model.relational.Database.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
         7: .line 90
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
         8: .line 91
            aload 3 /* logicalName */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.normalizeQuoting:(Lorg/hibernate/boot/model/naming/Identifier;)Lorg/hibernate/boot/model/naming/Identifier;
         9: .line 87
            astore 3 /* logicalName */
        10: .line 93
            aload 3 /* logicalName */
            areturn
        end local 3 // org.hibernate.boot.model.naming.Identifier logicalName
        end local 2 // org.hibernate.boot.model.naming.NamingStrategyHelper namingStrategyHelper
        end local 1 // java.lang.String explicitName
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0   11     1          explicitName  Ljava/lang/String;
            0   11     2  namingStrategyHelper  Lorg/hibernate/boot/model/naming/NamingStrategyHelper;
            2    3     3           logicalName  Lorg/hibernate/boot/model/naming/Identifier;
            4   11     3           logicalName  Lorg/hibernate/boot/model/naming/Identifier;
    MethodParameters:
                      Name  Flags
      explicitName          
      namingStrategyHelper  

  public java.lang.String applyGlobalQuoting(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
        start local 1 // java.lang.String text
         0: .line 107
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.database:()Lorg/hibernate/boot/model/relational/Database;
            invokevirtual org.hibernate.boot.model.relational.Database.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getIdentifierHelper:()Lorg/hibernate/engine/jdbc/env/spi/IdentifierHelper;
            aload 1 /* text */
            invokeinterface org.hibernate.engine.jdbc.env.spi.IdentifierHelper.applyGlobalQuoting:(Ljava/lang/String;)Lorg/hibernate/boot/model/naming/Identifier;
         1: .line 108
            aload 0 /* this */
            invokevirtual org.hibernate.boot.model.naming.ObjectNameNormalizer.database:()Lorg/hibernate/boot/model/relational/Database;
            invokevirtual org.hibernate.boot.model.relational.Database.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.boot.model.naming.Identifier.render:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
         2: .line 107
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.hibernate.boot.model.naming.ObjectNameNormalizer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/boot/model/naming/ObjectNameNormalizer;
            0    3     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  protected abstract org.hibernate.boot.spi.MetadataBuildingContext getBuildingContext();
    descriptor: ()Lorg/hibernate/boot/spi/MetadataBuildingContext;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
}
SourceFile: "ObjectNameNormalizer.java"