[hibernate-commits] Hibernate SVN: r18794 - in core/trunk/annotations/src: main/java/org/hibernate/cfg/annotations and 1 other directories.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Fri Feb 12 12:22:48 EST 2010
Author: epbernard
Date: 2010-02-12 12:22:48 -0500 (Fri, 12 Feb 2010)
New Revision: 18794
Modified:
core/trunk/annotations/src/main/java/org/hibernate/cfg/BinderHelper.java
core/trunk/annotations/src/main/java/org/hibernate/cfg/CopyIdentifierComponentSecondPass.java
core/trunk/annotations/src/main/java/org/hibernate/cfg/Ejb3JoinColumn.java
core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/TableBinder.java
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/derivedidentities/e3/b/Dependent.java
Log:
HHH-4911 render referencedColumnName case insensitive
Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/BinderHelper.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/BinderHelper.java 2010-02-12 15:38:20 UTC (rev 18793)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/BinderHelper.java 2010-02-12 17:22:48 UTC (rev 18794)
@@ -275,7 +275,7 @@
List<Property> orderedProperties = new ArrayList<Property>();
for (Column column : orderedColumns) {
boolean found = false;
- for (Property property : columnsToProperty.get( column )) {
+ for (Property property : columnsToProperty.get( column ) ) {
if ( property.getColumnSpan() == 1 ) {
orderedProperties.add( property );
found = true;
@@ -439,7 +439,7 @@
return persistentClass; //shortcut for implicit referenced column names
}
PersistentClass current = persistentClass;
- Object result = null;
+ Object result;
boolean found = false;
do {
result = current;
Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/CopyIdentifierComponentSecondPass.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/CopyIdentifierComponentSecondPass.java 2010-02-12 15:38:20 UTC (rev 18793)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/CopyIdentifierComponentSecondPass.java 2010-02-12 17:22:48 UTC (rev 18794)
@@ -54,7 +54,8 @@
if ( referencedColumnName == null || BinderHelper.isDefault( referencedColumnName ) ) {
break;
}
- columnByReferencedName.put( referencedColumnName, joinColumn );
+ //JPA 2 requires referencedColumnNames to be case insensitive
+ columnByReferencedName.put( referencedColumnName.toLowerCase(), joinColumn );
}
//try default column orientation
int index = 0;
@@ -103,7 +104,8 @@
if ( isExplicitReference ) {
final String columnName = column.getName();
logicalColumnName = mappings.getLogicalColumnName( columnName, referencedPersistentClass.getTable() );
- joinColumn = columnByReferencedName.get( logicalColumnName );
+ //JPA 2 requires referencedColumnNames to be case insensitive
+ joinColumn = columnByReferencedName.get( logicalColumnName.toLowerCase() );
}
else {
joinColumn = columnByReferencedName.get( "" + index );
Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/Ejb3JoinColumn.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/Ejb3JoinColumn.java 2010-02-12 15:38:20 UTC (rev 18793)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/Ejb3JoinColumn.java 2010-02-12 17:22:48 UTC (rev 18794)
@@ -564,7 +564,7 @@
for (Ejb3JoinColumn ejb3Column : columns) {
String logicalReferencedColumnName = ejb3Column.getReferencedColumn();
if ( StringHelper.isNotEmpty( logicalReferencedColumnName ) ) {
- String referencedColumnName = null;
+ String referencedColumnName;
try {
referencedColumnName = mappings.getPhysicalColumnName( logicalReferencedColumnName, matchingTable );
}
Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/TableBinder.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/TableBinder.java 2010-02-12 15:38:20 UTC (rev 18793)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/TableBinder.java 2010-02-12 17:22:48 UTC (rev 18794)
@@ -443,7 +443,8 @@
for (Ejb3JoinColumn joinCol : columns) {
String referencedColumn = joinCol.getReferencedColumn();
referencedColumn = mappings.getPhysicalColumnName( referencedColumn, table );
- if ( referencedColumn.equals( col.getName() ) ) {
+ //In JPA 2 referencedColumnName is case insensitive
+ if ( referencedColumn.equalsIgnoreCase( col.getName() ) ) {
//proper join column
if ( joinCol.isNameDeferred() ) {
joinCol.linkValueUsingDefaultColumnNaming(
Modified: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/derivedidentities/e3/b/Dependent.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/derivedidentities/e3/b/Dependent.java 2010-02-12 15:38:20 UTC (rev 18793)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/derivedidentities/e3/b/Dependent.java 2010-02-12 17:22:48 UTC (rev 18794)
@@ -22,7 +22,7 @@
@MapsId("empPK")
@JoinColumns({
- @JoinColumn(name = "FK1", referencedColumnName = "firstName"),
+ @JoinColumn(name = "FK1", referencedColumnName = "FIRSTNAME"),
@JoinColumn(name = "FK2", referencedColumnName = "lastName")
})
@ManyToOne
More information about the hibernate-commits
mailing list