class org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding
  super_class: java.lang.Object
{
  private final java.lang.String tableName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Map<org.hibernate.boot.model.naming.Identifier, java.lang.String> logicalToPhysical;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lorg/hibernate/boot/model/naming/Identifier;Ljava/lang/String;>;

  private java.util.Map<java.lang.String, org.hibernate.boot.model.naming.Identifier> physicalToLogical;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/boot/model/naming/Identifier;>;

  final org.hibernate.boot.internal.InFlightMetadataCollectorImpl this$0;
    descriptor: Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private void <init>(org.hibernate.boot.internal.InFlightMetadataCollectorImpl, java.lang.String);
    descriptor: (Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
        start local 2 // java.lang.String tableName
         0: .line 904
            aload 0 /* this */
            aload 1
            putfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.this$0:Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 901
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.logicalToPhysical:Ljava/util/Map;
         2: .line 902
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.physicalToLogical:Ljava/util/Map;
         3: .line 905
            aload 0 /* this */
            aload 2 /* tableName */
            putfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.tableName:Ljava/lang/String;
         4: .line 906
            return
        end local 2 // java.lang.String tableName
        end local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl$TableColumnNameBinding;
            0    5     2  tableName  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      this$0     final
      tableName  

  public void addBinding(org.hibernate.boot.model.naming.Identifier, org.hibernate.mapping.Column);
    descriptor: (Lorg/hibernate/boot/model/naming/Identifier;Lorg/hibernate/mapping/Column;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
        start local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        start local 2 // org.hibernate.mapping.Column physicalColumn
         0: .line 909
            aload 2 /* physicalColumn */
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.this$0:Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl;
            invokevirtual org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase:()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.getDialect:()Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.mapping.Column.getQuotedName:(Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            astore 3 /* physicalNameString */
        start local 3 // java.lang.String physicalNameString
         1: .line 911
            aload 0 /* this */
            aload 1 /* logicalName */
            aload 3 /* physicalNameString */
            invokevirtual org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.bindLogicalToPhysical:(Lorg/hibernate/boot/model/naming/Identifier;Ljava/lang/String;)V
         2: .line 912
            aload 0 /* this */
            aload 1 /* logicalName */
            aload 3 /* physicalNameString */
            invokevirtual org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.bindPhysicalToLogical:(Lorg/hibernate/boot/model/naming/Identifier;Ljava/lang/String;)V
         3: .line 913
            return
        end local 3 // java.lang.String physicalNameString
        end local 2 // org.hibernate.mapping.Column physicalColumn
        end local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        end local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl$TableColumnNameBinding;
            0    4     1         logicalName  Lorg/hibernate/boot/model/naming/Identifier;
            0    4     2      physicalColumn  Lorg/hibernate/mapping/Column;
            1    4     3  physicalNameString  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      logicalName     
      physicalColumn  

  private void bindLogicalToPhysical(org.hibernate.boot.model.naming.Identifier, java.lang.String);
    descriptor: (Lorg/hibernate/boot/model/naming/Identifier;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=3
        start local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
        start local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        start local 2 // java.lang.String physicalName
         0: .line 916
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.logicalToPhysical:Ljava/util/Map;
            aload 1 /* logicalName */
            aload 2 /* physicalName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* existingPhysicalNameMapping */
        start local 3 // java.lang.String existingPhysicalNameMapping
         1: .line 917
            aload 3 /* existingPhysicalNameMapping */
            ifnull 18
         2: .line 918
            aload 1 /* logicalName */
            invokevirtual org.hibernate.boot.model.naming.Identifier.isQuoted:()Z
            ifeq 4
         3: .line 919
            aload 2 /* physicalName */
            aload 3 /* existingPhysicalNameMapping */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            goto 5
         4: .line 920
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* physicalName */
            aload 3 /* existingPhysicalNameMapping */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
         5: .line 918
      StackMap locals:
      StackMap stack: int
            istore 4 /* areSame */
        start local 4 // boolean areSame
         6: .line 921
            iload 4 /* areSame */
            ifne 18
         7: .line 922
            new org.hibernate.DuplicateMappingException
            dup
         8: .line 924
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         9: .line 925
            ldc "Table [%s] contains logical column name [%s] referring to multiple physical column names: [%s], [%s]"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        10: .line 927
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.tableName:Ljava/lang/String;
            aastore
            dup
            iconst_1
        11: .line 928
            aload 1 /* logicalName */
            aastore
            dup
            iconst_2
        12: .line 929
            aload 3 /* existingPhysicalNameMapping */
            aastore
            dup
            iconst_3
        13: .line 930
            aload 2 /* physicalName */
            aastore
        14: .line 923
            invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        15: .line 932
            getstatic org.hibernate.DuplicateMappingException$Type.COLUMN_BINDING:Lorg/hibernate/DuplicateMappingException$Type;
        16: .line 933
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.tableName:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* logicalName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 922
            invokespecial org.hibernate.DuplicateMappingException.<init>:(Ljava/lang/String;Lorg/hibernate/DuplicateMappingException$Type;Ljava/lang/String;)V
            athrow
        end local 4 // boolean areSame
        18: .line 937
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String existingPhysicalNameMapping
        end local 2 // java.lang.String physicalName
        end local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        end local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   19     0                         this  Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl$TableColumnNameBinding;
            0   19     1                  logicalName  Lorg/hibernate/boot/model/naming/Identifier;
            0   19     2                 physicalName  Ljava/lang/String;
            1   19     3  existingPhysicalNameMapping  Ljava/lang/String;
            6   18     4                      areSame  Z
    Exceptions:
      throws org.hibernate.DuplicateMappingException
    MethodParameters:
              Name  Flags
      logicalName   
      physicalName  

  private void bindPhysicalToLogical(org.hibernate.boot.model.naming.Identifier, java.lang.String);
    descriptor: (Lorg/hibernate/boot/model/naming/Identifier;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
        start local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        start local 2 // java.lang.String physicalName
         0: .line 940
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.physicalToLogical:Ljava/util/Map;
            aload 2 /* physicalName */
            aload 1 /* logicalName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.boot.model.naming.Identifier
            astore 3 /* existingLogicalName */
        start local 3 // org.hibernate.boot.model.naming.Identifier existingLogicalName
         1: .line 941
            aload 3 /* existingLogicalName */
            ifnull 13
            aload 3 /* existingLogicalName */
            aload 1 /* logicalName */
            invokevirtual org.hibernate.boot.model.naming.Identifier.equals:(Ljava/lang/Object;)Z
            ifne 13
         2: .line 942
            new org.hibernate.DuplicateMappingException
            dup
         3: .line 944
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         4: .line 945
            ldc "Table [%s] contains physical column name [%s] referred to by multiple physical column names: [%s], [%s]"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
         5: .line 947
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.tableName:Ljava/lang/String;
            aastore
            dup
            iconst_1
         6: .line 948
            aload 2 /* physicalName */
            aastore
            dup
            iconst_2
         7: .line 949
            aload 1 /* logicalName */
            aastore
            dup
            iconst_3
         8: .line 950
            aload 3 /* existingLogicalName */
            aastore
         9: .line 943
            invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        10: .line 952
            getstatic org.hibernate.DuplicateMappingException$Type.COLUMN_BINDING:Lorg/hibernate/DuplicateMappingException$Type;
        11: .line 953
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding.tableName:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* physicalName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 942
            invokespecial org.hibernate.DuplicateMappingException.<init>:(Ljava/lang/String;Lorg/hibernate/DuplicateMappingException$Type;Ljava/lang/String;)V
            athrow
        13: .line 956
      StackMap locals: org.hibernate.boot.model.naming.Identifier
      StackMap stack:
            return
        end local 3 // org.hibernate.boot.model.naming.Identifier existingLogicalName
        end local 2 // java.lang.String physicalName
        end local 1 // org.hibernate.boot.model.naming.Identifier logicalName
        end local 0 // org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   14     0                 this  Lorg/hibernate/boot/internal/InFlightMetadataCollectorImpl$TableColumnNameBinding;
            0   14     1          logicalName  Lorg/hibernate/boot/model/naming/Identifier;
            0   14     2         physicalName  Ljava/lang/String;
            1   14     3  existingLogicalName  Lorg/hibernate/boot/model/naming/Identifier;
    Exceptions:
      throws org.hibernate.DuplicateMappingException
    MethodParameters:
              Name  Flags
      logicalName   
      physicalName  
}
SourceFile: "InFlightMetadataCollectorImpl.java"
NestHost: org.hibernate.boot.internal.InFlightMetadataCollectorImpl
InnerClasses:
  public final Type = org.hibernate.DuplicateMappingException$Type of org.hibernate.DuplicateMappingException
  private TableColumnNameBinding = org.hibernate.boot.internal.InFlightMetadataCollectorImpl$TableColumnNameBinding of org.hibernate.boot.internal.InFlightMetadataCollectorImpl