Update of /cvsroot/hibernate/Hibernate/cirrus/hibernate/query
In directory usw-pr-cvs1:/tmp/cvs-serv3657/cirrus/hibernate/query
Modified Files:
QueryTranslator.java
Log Message:
support for SQL quoted identifiers
Index: QueryTranslator.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/query/QueryTranslator.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -C2 -d -r1.38 -r1.39
*** QueryTranslator.java 27 Oct 2002 03:11:33 -0000 1.38
--- QueryTranslator.java 31 Oct 2002 14:06:00 -0000 1.39
***************
*** 747,753 ****
Loadable[] persisters = getPersisters();
int size = persisters.length;
! String[] suffixes = new String[size];
for ( int i=0; i<size; i++ ) {
! if ( size>1 ) suffixes[i] = Integer.toString(i);
}
ArrayList list = new ArrayList();
--- 747,755 ----
Loadable[] persisters = getPersisters();
int size = persisters.length;
! String[][] aliases = new String[size][];
for ( int i=0; i<size; i++ ) {
! String suffix = (size==1) ? null : Integer.toString(i);
! aliases[i] = StringHelper.suffix( persisters[i].getIdentifierColumnNames(), suffix );
! StringHelper.unQuoteInPlace( aliases[i] );
}
ArrayList list = new ArrayList();
***************
*** 762,766 ****
for ( int i=0; i<size; i++ ) {
id = (Serializable) persisters[i].getIdentifierType().nullSafeGet(
! rs, StringHelper.suffix( persisters[i].getIdentifierColumnNames(), suffixes[i] ), session, null
);
if (size>1) ids[i] = id;
--- 764,768 ----
for ( int i=0; i<size; i++ ) {
id = (Serializable) persisters[i].getIdentifierType().nullSafeGet(
! rs, aliases[i], session, null
);
if (size>1) ids[i] = id;
|