class org.hibernate.cfg.ColumnsBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.cfg.ColumnsBuilder
  super_class: java.lang.Object
{
  private org.hibernate.cfg.PropertyHolder propertyHolder;
    descriptor: Lorg/hibernate/cfg/PropertyHolder;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.annotations.Nullability nullability;
    descriptor: Lorg/hibernate/cfg/annotations/Nullability;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.annotations.common.reflection.XProperty property;
    descriptor: Lorg/hibernate/annotations/common/reflection/XProperty;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.PropertyData inferredData;
    descriptor: Lorg/hibernate/cfg/PropertyData;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.annotations.EntityBinder entityBinder;
    descriptor: Lorg/hibernate/cfg/annotations/EntityBinder;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.boot.spi.MetadataBuildingContext buildingContext;
    descriptor: Lorg/hibernate/boot/spi/MetadataBuildingContext;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3Column[] columns;
    descriptor: [Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.cfg.Ejb3JoinColumn[] joinColumns;
    descriptor: [Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.hibernate.cfg.PropertyHolder, org.hibernate.cfg.annotations.Nullability, org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.PropertyData, org.hibernate.cfg.annotations.EntityBinder, org.hibernate.boot.spi.MetadataBuildingContext);
    descriptor: (Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/annotations/Nullability;Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;Lorg/hibernate/cfg/annotations/EntityBinder;Lorg/hibernate/boot/spi/MetadataBuildingContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=7
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
        start local 1 // org.hibernate.cfg.PropertyHolder propertyHolder
        start local 2 // org.hibernate.cfg.annotations.Nullability nullability
        start local 3 // org.hibernate.annotations.common.reflection.XProperty property
        start local 4 // org.hibernate.cfg.PropertyData inferredData
        start local 5 // org.hibernate.cfg.annotations.EntityBinder entityBinder
        start local 6 // org.hibernate.boot.spi.MetadataBuildingContext buildingContext
         0: .line 47
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 54
            aload 0 /* this */
            aload 1 /* propertyHolder */
            putfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
         2: .line 55
            aload 0 /* this */
            aload 2 /* nullability */
            putfield org.hibernate.cfg.ColumnsBuilder.nullability:Lorg/hibernate/cfg/annotations/Nullability;
         3: .line 56
            aload 0 /* this */
            aload 3 /* property */
            putfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
         4: .line 57
            aload 0 /* this */
            aload 4 /* inferredData */
            putfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
         5: .line 58
            aload 0 /* this */
            aload 5 /* entityBinder */
            putfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
         6: .line 59
            aload 0 /* this */
            aload 6 /* buildingContext */
            putfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
         7: .line 60
            return
        end local 6 // org.hibernate.boot.spi.MetadataBuildingContext buildingContext
        end local 5 // org.hibernate.cfg.annotations.EntityBinder entityBinder
        end local 4 // org.hibernate.cfg.PropertyData inferredData
        end local 3 // org.hibernate.annotations.common.reflection.XProperty property
        end local 2 // org.hibernate.cfg.annotations.Nullability nullability
        end local 1 // org.hibernate.cfg.PropertyHolder propertyHolder
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/hibernate/cfg/ColumnsBuilder;
            0    8     1   propertyHolder  Lorg/hibernate/cfg/PropertyHolder;
            0    8     2      nullability  Lorg/hibernate/cfg/annotations/Nullability;
            0    8     3         property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0    8     4     inferredData  Lorg/hibernate/cfg/PropertyData;
            0    8     5     entityBinder  Lorg/hibernate/cfg/annotations/EntityBinder;
            0    8     6  buildingContext  Lorg/hibernate/boot/spi/MetadataBuildingContext;
    MethodParameters:
                 Name  Flags
      propertyHolder   
      nullability      
      property         
      inferredData     
      entityBinder     
      buildingContext  

  public org.hibernate.cfg.Ejb3Column[] getColumns();
    descriptor: ()[Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
         0: .line 63
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
            areturn
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/ColumnsBuilder;

  public org.hibernate.cfg.Ejb3JoinColumn[] getJoinColumns();
    descriptor: ()[Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
         0: .line 67
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            areturn
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/ColumnsBuilder;

  public org.hibernate.cfg.ColumnsBuilder extractMetadata();
    descriptor: ()Lorg/hibernate/cfg/ColumnsBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=1
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
         0: .line 71
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
         1: .line 72
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
            invokevirtual org.hibernate.cfg.ColumnsBuilder.buildExplicitJoinColumns:(Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            putfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
         2: .line 75
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/Column;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 3
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Formula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 15
         3: .line 76
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/Column;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.Column
            astore 1 /* ann */
        start local 1 // javax.persistence.Column ann
         4: .line 77
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Formula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Formula
            astore 2 /* formulaAnn */
        start local 2 // org.hibernate.annotations.Formula formulaAnn
         5: .line 78
            aload 0 /* this */
         6: .line 79
            iconst_1
            anewarray javax.persistence.Column
            dup
            iconst_0
            aload 1 /* ann */
            aastore
         7: .line 80
            aload 2 /* formulaAnn */
         8: .line 81
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.nullability:Lorg/hibernate/cfg/annotations/Nullability;
         9: .line 82
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        10: .line 83
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
        11: .line 84
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        12: .line 85
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        13: .line 78
            invokestatic org.hibernate.cfg.Ejb3Column.buildColumnFromAnnotation:([Ljavax/persistence/Column;Lorg/hibernate/annotations/Formula;Lorg/hibernate/cfg/annotations/Nullability;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;Ljava/util/Map;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3Column;
            putfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
        end local 2 // org.hibernate.annotations.Formula formulaAnn
        end local 1 // javax.persistence.Column ann
        14: .line 87
            goto 26
        15: .line 88
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Columns;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 26
        16: .line 89
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Columns;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.Columns
            astore 1 /* anns */
        start local 1 // org.hibernate.annotations.Columns anns
        17: .line 90
            aload 0 /* this */
        18: .line 91
            aload 1 /* anns */
            invokeinterface org.hibernate.annotations.Columns.columns:()[Ljavax/persistence/Column;
        19: .line 92
            aconst_null
        20: .line 93
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.nullability:Lorg/hibernate/cfg/annotations/Nullability;
        21: .line 94
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        22: .line 95
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
        23: .line 96
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        24: .line 97
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        25: .line 90
            invokestatic org.hibernate.cfg.Ejb3Column.buildColumnFromAnnotation:([Ljavax/persistence/Column;Lorg/hibernate/annotations/Formula;Lorg/hibernate/cfg/annotations/Nullability;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;Ljava/util/Map;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3Column;
            putfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
        end local 1 // org.hibernate.annotations.Columns anns
        26: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            ifnonnull 31
        27: .line 103
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ManyToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 29
        28: .line 104
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/OneToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 31
        29: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
            invokevirtual org.hibernate.cfg.ColumnsBuilder.buildDefaultJoinColumnsForXToOne:(Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            putfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
        30: .line 107
            goto 52
        31: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            ifnonnull 48
        32: .line 109
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 34
        33: .line 110
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ElementCollection;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 48
        34: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/OneToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.OneToMany
            astore 1 /* oneToMany */
        start local 1 // javax.persistence.OneToMany oneToMany
        35: .line 113
            aload 1 /* oneToMany */
            ifnull 37
        36: .line 114
            aload 1 /* oneToMany */
            invokeinterface javax.persistence.OneToMany.mappedBy:()Ljava/lang/String;
            goto 38
        37: .line 115
      StackMap locals: javax.persistence.OneToMany
      StackMap stack:
            ldc ""
        38: .line 113
      StackMap locals:
      StackMap stack: java.lang.String
            astore 2 /* mappedBy */
        start local 2 // java.lang.String mappedBy
        39: .line 116
            aload 0 /* this */
        40: .line 117
            aconst_null
        41: .line 118
            aload 2 /* mappedBy */
        42: .line 119
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        43: .line 120
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        44: .line 121
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
        45: .line 122
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        46: .line 116
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinColumns:([Ljavax/persistence/JoinColumn;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            putfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
        end local 2 // java.lang.String mappedBy
        end local 1 // javax.persistence.OneToMany oneToMany
        47: .line 124
            goto 52
        48: .line 125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.joinColumns:[Lorg/hibernate/cfg/Ejb3JoinColumn;
            ifnonnull 52
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Lorg/hibernate/annotations/Any;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 52
        49: .line 126
            new org.hibernate.AnnotationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "@Any requires an explicit @JoinColumn(s): "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        50: .line 127
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
            invokestatic org.hibernate.cfg.BinderHelper.getPath:(Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        51: .line 126
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        52: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
            ifnonnull 62
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            ldc Ljavax/persistence/ManyToMany;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 62
        53: .line 131
            aload 0 /* this */
        54: .line 132
            aconst_null
        55: .line 133
            aconst_null
        56: .line 134
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.nullability:Lorg/hibernate/cfg/annotations/Nullability;
        57: .line 135
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        58: .line 136
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.inferredData:Lorg/hibernate/cfg/PropertyData;
        59: .line 137
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        60: .line 138
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        61: .line 131
            invokestatic org.hibernate.cfg.Ejb3Column.buildColumnFromAnnotation:([Ljavax/persistence/Column;Lorg/hibernate/annotations/Formula;Lorg/hibernate/cfg/annotations/Nullability;Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;Ljava/util/Map;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3Column;
            putfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
        62: .line 142
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.nullability:Lorg/hibernate/cfg/annotations/Nullability;
            getstatic org.hibernate.cfg.annotations.Nullability.FORCED_NOT_NULL:Lorg/hibernate/cfg/annotations/Nullability;
            if_acmpne 68
        63: .line 144
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 67
      StackMap locals: org.hibernate.cfg.ColumnsBuilder top int int org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
        64: aload 4
            iload 2
            aaload
            astore 1 /* col */
        start local 1 // org.hibernate.cfg.Ejb3Column col
        65: .line 145
            aload 1 /* col */
            invokevirtual org.hibernate.cfg.Ejb3Column.forceNotNull:()V
        end local 1 // org.hibernate.cfg.Ejb3Column col
        66: .line 144
            iinc 2 1
      StackMap locals:
      StackMap stack:
        67: iload 2
            iload 3
            if_icmplt 64
        68: .line 148
      StackMap locals: org.hibernate.cfg.ColumnsBuilder
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   69     0        this  Lorg/hibernate/cfg/ColumnsBuilder;
            4   14     1         ann  Ljavax/persistence/Column;
            5   14     2  formulaAnn  Lorg/hibernate/annotations/Formula;
           17   26     1        anns  Lorg/hibernate/annotations/Columns;
           35   47     1   oneToMany  Ljavax/persistence/OneToMany;
           39   47     2    mappedBy  Ljava/lang/String;
           65   66     1         col  Lorg/hibernate/cfg/Ejb3Column;

  org.hibernate.cfg.Ejb3JoinColumn[] buildDefaultJoinColumnsForXToOne(org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.PropertyData);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
        start local 1 // org.hibernate.annotations.common.reflection.XProperty property
        start local 2 // org.hibernate.cfg.PropertyData inferredData
         0: .line 153
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 1 /* property */
            invokeinterface org.hibernate.cfg.PropertyHolder.getJoinTable:(Lorg/hibernate/annotations/common/reflection/XProperty;)Ljavax/persistence/JoinTable;
            astore 4 /* joinTableAnn */
        start local 4 // javax.persistence.JoinTable joinTableAnn
         1: .line 154
            aload 4 /* joinTableAnn */
            ifnull 15
         2: .line 156
            aload 4 /* joinTableAnn */
            invokeinterface javax.persistence.JoinTable.inverseJoinColumns:()[Ljavax/persistence/JoinColumn;
         3: .line 157
            aconst_null
         4: .line 158
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
         5: .line 159
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
         6: .line 160
            aload 2 /* inferredData */
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
         7: .line 161
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
         8: .line 155
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinColumns:([Ljavax/persistence/JoinColumn;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            astore 3 /* joinColumns */
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
         9: .line 163
            aload 4 /* joinTableAnn */
            invokeinterface javax.persistence.JoinTable.name:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isEmpty:(Ljava/lang/String;)Z
            ifeq 27
        10: .line 164
            new org.hibernate.AnnotationException
            dup
        11: .line 165
            new java.lang.StringBuilder
            dup
            ldc "JoinTable.name() on a @ToOne association has to be explicit: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        12: .line 166
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
            aload 2 /* inferredData */
            invokestatic org.hibernate.cfg.BinderHelper.getPath:(Lorg/hibernate/cfg/PropertyHolder;Lorg/hibernate/cfg/PropertyData;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 165
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 164
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        15: .line 171
      StackMap locals: org.hibernate.cfg.ColumnsBuilder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyData top javax.persistence.JoinTable
      StackMap stack:
            aload 1 /* property */
            ldc Ljavax/persistence/OneToOne;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.OneToOne
            astore 5 /* oneToOneAnn */
        start local 5 // javax.persistence.OneToOne oneToOneAnn
        16: .line 172
            aload 5 /* oneToOneAnn */
            ifnull 18
        17: .line 173
            aload 5 /* oneToOneAnn */
            invokeinterface javax.persistence.OneToOne.mappedBy:()Ljava/lang/String;
            goto 19
        18: .line 174
      StackMap locals: javax.persistence.OneToOne
      StackMap stack:
            aconst_null
        19: .line 172
      StackMap locals:
      StackMap stack: java.lang.String
            astore 6 /* mappedBy */
        start local 6 // java.lang.String mappedBy
        20: .line 176
            aconst_null
        21: .line 177
            aload 6 /* mappedBy */
        22: .line 178
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        23: .line 179
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        24: .line 180
            aload 2 /* inferredData */
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
        25: .line 181
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        26: .line 175
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinColumns:([Ljavax/persistence/JoinColumn;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            astore 3 /* joinColumns */
        end local 6 // java.lang.String mappedBy
        end local 5 // javax.persistence.OneToOne oneToOneAnn
        start local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        27: .line 184
      StackMap locals: org.hibernate.cfg.ColumnsBuilder org.hibernate.annotations.common.reflection.XProperty org.hibernate.cfg.PropertyData org.hibernate.cfg.Ejb3JoinColumn[] javax.persistence.JoinTable
      StackMap stack:
            aload 3 /* joinColumns */
            areturn
        end local 4 // javax.persistence.JoinTable joinTableAnn
        end local 3 // org.hibernate.cfg.Ejb3JoinColumn[] joinColumns
        end local 2 // org.hibernate.cfg.PropertyData inferredData
        end local 1 // org.hibernate.annotations.common.reflection.XProperty property
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Lorg/hibernate/cfg/ColumnsBuilder;
            0   28     1      property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   28     2  inferredData  Lorg/hibernate/cfg/PropertyData;
            9   15     3   joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
           27   28     3   joinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
            1   28     4  joinTableAnn  Ljavax/persistence/JoinTable;
           16   27     5   oneToOneAnn  Ljavax/persistence/OneToOne;
           20   27     6      mappedBy  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      property      
      inferredData  

  org.hibernate.cfg.Ejb3JoinColumn[] buildExplicitJoinColumns(org.hibernate.annotations.common.reflection.XProperty, org.hibernate.cfg.PropertyData);
    descriptor: (Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
    flags: (0x0000) 
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
        start local 1 // org.hibernate.annotations.common.reflection.XProperty property
        start local 2 // org.hibernate.cfg.PropertyData inferredData
         0: .line 189
            aconst_null
            astore 3 /* joinColumnAnnotations */
        start local 3 // javax.persistence.JoinColumn[] joinColumnAnnotations
         1: .line 191
            aload 1 /* property */
            ldc Ljavax/persistence/JoinColumn;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 4
         2: .line 192
            iconst_1
            anewarray javax.persistence.JoinColumn
            dup
            iconst_0
            aload 1 /* property */
            ldc Ljavax/persistence/JoinColumn;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.JoinColumn
            aastore
            astore 3 /* joinColumnAnnotations */
         3: .line 193
            goto 10
         4: .line 194
      StackMap locals: javax.persistence.JoinColumn[]
      StackMap stack:
            aload 1 /* property */
            ldc Ljavax/persistence/JoinColumns;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 10
         5: .line 195
            aload 1 /* property */
            ldc Ljavax/persistence/JoinColumns;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast javax.persistence.JoinColumns
            astore 4 /* joinColumnAnnotation */
        start local 4 // javax.persistence.JoinColumns joinColumnAnnotation
         6: .line 196
            aload 4 /* joinColumnAnnotation */
            invokeinterface javax.persistence.JoinColumns.value:()[Ljavax/persistence/JoinColumn;
            astore 3 /* joinColumnAnnotations */
         7: .line 197
            aload 3 /* joinColumnAnnotations */
            arraylength
            istore 5 /* length */
        start local 5 // int length
         8: .line 198
            iload 5 /* length */
            ifne 10
         9: .line 199
            new org.hibernate.AnnotationException
            dup
            ldc "Cannot bind an empty @JoinColumns"
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int length
        end local 4 // javax.persistence.JoinColumns joinColumnAnnotation
        10: .line 203
      StackMap locals:
      StackMap stack:
            aload 3 /* joinColumnAnnotations */
            ifnull 18
        11: .line 205
            aload 3 /* joinColumnAnnotations */
        12: .line 206
            aconst_null
        13: .line 207
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        14: .line 208
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        15: .line 209
            aload 2 /* inferredData */
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
        16: .line 210
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        17: .line 204
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinColumns:([Ljavax/persistence/JoinColumn;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            areturn
        18: .line 214
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* joinColumnOrFormulaAnnotations */
        start local 4 // org.hibernate.annotations.JoinColumnOrFormula[] joinColumnOrFormulaAnnotations
        19: .line 216
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/JoinColumnOrFormula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 24
        20: .line 217
            iconst_1
            anewarray org.hibernate.annotations.JoinColumnOrFormula
            dup
            iconst_0
        21: .line 218
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/JoinColumnOrFormula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.JoinColumnOrFormula
            aastore
        22: .line 217
            astore 4 /* joinColumnOrFormulaAnnotations */
        23: .line 219
            goto 32
        24: .line 220
      StackMap locals: org.hibernate.annotations.JoinColumnOrFormula[]
      StackMap stack:
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/JoinColumnsOrFormulas;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 32
        25: .line 221
            aload 1 /* property */
        26: .line 222
            ldc Lorg/hibernate/annotations/JoinColumnsOrFormulas;
        27: .line 221
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.JoinColumnsOrFormulas
            astore 5 /* joinColumnsOrFormulasAnnotations */
        start local 5 // org.hibernate.annotations.JoinColumnsOrFormulas joinColumnsOrFormulasAnnotations
        28: .line 223
            aload 5 /* joinColumnsOrFormulasAnnotations */
            invokeinterface org.hibernate.annotations.JoinColumnsOrFormulas.value:()[Lorg/hibernate/annotations/JoinColumnOrFormula;
            astore 4 /* joinColumnOrFormulaAnnotations */
        29: .line 224
            aload 4 /* joinColumnOrFormulaAnnotations */
            arraylength
            istore 6 /* length */
        start local 6 // int length
        30: .line 225
            iload 6 /* length */
            ifne 32
        31: .line 226
            new org.hibernate.AnnotationException
            dup
            ldc "Cannot bind an empty @JoinColumnsOrFormulas"
            invokespecial org.hibernate.AnnotationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // int length
        end local 5 // org.hibernate.annotations.JoinColumnsOrFormulas joinColumnsOrFormulasAnnotations
        32: .line 230
      StackMap locals:
      StackMap stack:
            aload 4 /* joinColumnOrFormulaAnnotations */
            ifnull 40
        33: .line 232
            aload 4 /* joinColumnOrFormulaAnnotations */
        34: .line 233
            aconst_null
        35: .line 234
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        36: .line 235
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        37: .line 236
            aload 2 /* inferredData */
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
        38: .line 237
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        39: .line 231
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinColumnsOrFormulas:([Lorg/hibernate/annotations/JoinColumnOrFormula;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            areturn
        40: .line 241
      StackMap locals:
      StackMap stack:
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/JoinFormula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 52
        41: .line 242
            aload 1 /* property */
            ldc Lorg/hibernate/annotations/JoinFormula;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.hibernate.annotations.JoinFormula
            astore 5 /* ann */
        start local 5 // org.hibernate.annotations.JoinFormula ann
        42: .line 243
            iconst_1
            anewarray org.hibernate.cfg.Ejb3JoinColumn
            astore 6 /* ejb3JoinColumns */
        start local 6 // org.hibernate.cfg.Ejb3JoinColumn[] ejb3JoinColumns
        43: .line 244
            aload 6 /* ejb3JoinColumns */
            iconst_0
        44: .line 245
            aload 5 /* ann */
        45: .line 246
            aconst_null
        46: .line 247
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.entityBinder:Lorg/hibernate/cfg/annotations/EntityBinder;
            invokevirtual org.hibernate.cfg.annotations.EntityBinder.getSecondaryTables:()Ljava/util/Map;
        47: .line 248
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
        48: .line 249
            aload 2 /* inferredData */
            invokeinterface org.hibernate.cfg.PropertyData.getPropertyName:()Ljava/lang/String;
        49: .line 250
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
        50: .line 244
            invokestatic org.hibernate.cfg.Ejb3JoinColumn.buildJoinFormula:(Lorg/hibernate/annotations/JoinFormula;Ljava/lang/String;Ljava/util/Map;Lorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)Lorg/hibernate/cfg/Ejb3JoinColumn;
            aastore
        51: .line 252
            aload 6 /* ejb3JoinColumns */
            areturn
        end local 6 // org.hibernate.cfg.Ejb3JoinColumn[] ejb3JoinColumns
        end local 5 // org.hibernate.annotations.JoinFormula ann
        52: .line 255
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 4 // org.hibernate.annotations.JoinColumnOrFormula[] joinColumnOrFormulaAnnotations
        end local 3 // javax.persistence.JoinColumn[] joinColumnAnnotations
        end local 2 // org.hibernate.cfg.PropertyData inferredData
        end local 1 // org.hibernate.annotations.common.reflection.XProperty property
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot                              Name  Signature
            0   53     0                              this  Lorg/hibernate/cfg/ColumnsBuilder;
            0   53     1                          property  Lorg/hibernate/annotations/common/reflection/XProperty;
            0   53     2                      inferredData  Lorg/hibernate/cfg/PropertyData;
            1   53     3             joinColumnAnnotations  [Ljavax/persistence/JoinColumn;
            6   10     4              joinColumnAnnotation  Ljavax/persistence/JoinColumns;
            8   10     5                            length  I
           19   53     4    joinColumnOrFormulaAnnotations  [Lorg/hibernate/annotations/JoinColumnOrFormula;
           28   32     5  joinColumnsOrFormulasAnnotations  Lorg/hibernate/annotations/JoinColumnsOrFormulas;
           30   32     6                            length  I
           42   52     5                               ann  Lorg/hibernate/annotations/JoinFormula;
           43   52     6                   ejb3JoinColumns  [Lorg/hibernate/cfg/Ejb3JoinColumn;
    MethodParameters:
              Name  Flags
      property      
      inferredData  

  org.hibernate.cfg.Ejb3Column[] overrideColumnFromMapperOrMapsIdProperty(boolean);
    descriptor: (Z)[Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
        start local 1 // boolean isId
         0: .line 259
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.columns:[Lorg/hibernate/cfg/Ejb3Column;
            astore 2 /* result */
        start local 2 // org.hibernate.cfg.Ejb3Column[] result
         1: .line 261
            iload 1 /* isId */
         2: .line 262
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.propertyHolder:Lorg/hibernate/cfg/PropertyHolder;
         3: .line 263
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.property:Lorg/hibernate/annotations/common/reflection/XProperty;
            invokeinterface org.hibernate.annotations.common.reflection.XProperty.getName:()Ljava/lang/String;
         4: .line 264
            aload 0 /* this */
            getfield org.hibernate.cfg.ColumnsBuilder.buildingContext:Lorg/hibernate/boot/spi/MetadataBuildingContext;
         5: .line 260
            invokestatic org.hibernate.cfg.BinderHelper.getPropertyOverriddenByMapperOrMapsId:(ZLorg/hibernate/cfg/PropertyHolder;Ljava/lang/String;Lorg/hibernate/boot/spi/MetadataBuildingContext;)Lorg/hibernate/cfg/PropertyData;
            astore 3 /* overridingProperty */
        start local 3 // org.hibernate.cfg.PropertyData overridingProperty
         6: .line 266
            aload 3 /* overridingProperty */
            ifnull 8
         7: .line 267
            aload 0 /* this */
            aload 3 /* overridingProperty */
            invokevirtual org.hibernate.cfg.ColumnsBuilder.buildExcplicitOrDefaultJoinColumn:(Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3Column;
            astore 2 /* result */
         8: .line 269
      StackMap locals: org.hibernate.cfg.Ejb3Column[] org.hibernate.cfg.PropertyData
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // org.hibernate.cfg.PropertyData overridingProperty
        end local 2 // org.hibernate.cfg.Ejb3Column[] result
        end local 1 // boolean isId
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    9     0                this  Lorg/hibernate/cfg/ColumnsBuilder;
            0    9     1                isId  Z
            1    9     2              result  [Lorg/hibernate/cfg/Ejb3Column;
            6    9     3  overridingProperty  Lorg/hibernate/cfg/PropertyData;
    MethodParameters:
      Name  Flags
      isId  

  org.hibernate.cfg.Ejb3Column[] buildExcplicitOrDefaultJoinColumn(org.hibernate.cfg.PropertyData);
    descriptor: (Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3Column;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.cfg.ColumnsBuilder this
        start local 1 // org.hibernate.cfg.PropertyData overridingProperty
         0: .line 277
            aload 0 /* this */
            aload 1 /* overridingProperty */
            invokeinterface org.hibernate.cfg.PropertyData.getProperty:()Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 1 /* overridingProperty */
            invokevirtual org.hibernate.cfg.ColumnsBuilder.buildExplicitJoinColumns:(Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            astore 2 /* result */
        start local 2 // org.hibernate.cfg.Ejb3Column[] result
         1: .line 278
            aload 2 /* result */
            ifnonnull 3
         2: .line 279
            aload 0 /* this */
            aload 1 /* overridingProperty */
            invokeinterface org.hibernate.cfg.PropertyData.getProperty:()Lorg/hibernate/annotations/common/reflection/XProperty;
            aload 1 /* overridingProperty */
            invokevirtual org.hibernate.cfg.ColumnsBuilder.buildDefaultJoinColumnsForXToOne:(Lorg/hibernate/annotations/common/reflection/XProperty;Lorg/hibernate/cfg/PropertyData;)[Lorg/hibernate/cfg/Ejb3JoinColumn;
            astore 2 /* result */
         3: .line 281
      StackMap locals: org.hibernate.cfg.Ejb3Column[]
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // org.hibernate.cfg.Ejb3Column[] result
        end local 1 // org.hibernate.cfg.PropertyData overridingProperty
        end local 0 // org.hibernate.cfg.ColumnsBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/hibernate/cfg/ColumnsBuilder;
            0    4     1  overridingProperty  Lorg/hibernate/cfg/PropertyData;
            1    4     2              result  [Lorg/hibernate/cfg/Ejb3Column;
    MethodParameters:
                    Name  Flags
      overridingProperty  
}
SourceFile: "ColumnsBuilder.java"