Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/sql
In directory sc8-pr-cvs1:/tmp/cvs-serv25866/hibernate/sql
Modified Files:
SimpleSelect.java
Log Message:
applied Mark Woon's new patch for long column names
Index: SimpleSelect.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/sql/SimpleSelect.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** SimpleSelect.java 20 Jan 2003 18:45:18 -0000 1.1
--- SimpleSelect.java 2 Feb 2003 06:41:05 -0000 1.2
***************
*** 3,8 ****
--- 3,10 ----
import java.util.ArrayList;
+ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+ import java.util.Map;
import net.sf.hibernate.util.StringHelper;
***************
*** 17,22 ****
--- 19,32 ----
private List columns = new ArrayList();
+ private Map aliases = new HashMap();
private List whereTokens = new ArrayList();
+ public SimpleSelect addColumns(String[] columnNames, String[] aliases) {
+ for ( int i=0; i<columnNames.length; i++ ) {
+ addColumn( columnNames[i], aliases[i] );
+ }
+ return this;
+ }
+
public SimpleSelect addColumns(String[] columnNames) {
for ( int i=0; i<columnNames.length; i++ ) {
***************
*** 30,33 ****
--- 40,49 ----
}
+ public SimpleSelect addColumn(String columnName, String alias) {
+ columns.add(columnName);
+ aliases.put(columnName, alias);
+ return this;
+ }
+
public SimpleSelect setTableName(String tableName) {
this.tableName = tableName;
***************
*** 71,75 ****
Iterator iter = columns.iterator();
while ( iter.hasNext() ) {
! buf.append( iter.next() );
if ( iter.hasNext() ) buf.append(StringHelper.COMMA_SPACE);
}
--- 87,97 ----
Iterator iter = columns.iterator();
while ( iter.hasNext() ) {
! String col = (String) iter.next();
! buf.append(col);
! String alias = (String) aliases.get(col);
! if ( alias!=null && !alias.equals(col) ) {
! buf.append(" as ")
! .append(alias);
! }
if ( iter.hasNext() ) buf.append(StringHelper.COMMA_SPACE);
}
|