Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister In directory sc8-pr-cvs1:/tmp/cvs-serv28888/sf/hibernate/persister Modified Files: EntityPersister.java Loadable.java NormalizedEntityPersister.java Queryable.java Log Message: fixed a problem with outerjoin fetching from queries with oracle-style syntax Index: EntityPersister.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister/EntityPersister.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** EntityPersister.java 20 Jan 2003 12:48:14 -0000 1.7 --- EntityPersister.java 24 Jan 2003 10:21:35 -0000 1.8 *************** *** 780,784 **** } ! public String getQueryWhereClause(String name, boolean includeSubclasses) throws MappingException { if ( isInherited() ) { --- 780,784 ---- } ! public String queryWhereFragment(String name, boolean includeSubclasses) throws MappingException { if ( isInherited() ) { *************** *** 791,795 **** ); } ! return frag.toFragmentString(); } else { --- 791,795 ---- ); } ! return " and " + frag.toFragmentString(); } else { Index: Loadable.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister/Loadable.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Loadable.java 20 Jan 2003 12:48:14 -0000 1.4 --- Loadable.java 24 Jan 2003 10:21:36 -0000 1.5 *************** *** 98,107 **** * (optional operation) */ ! public String propertySelectClauseFragment(String name, String suffix); /** * Get the from clause fragment, given a query alias * (optional operation) */ ! public String fromClauseFragment(String name, boolean innerJoin, boolean includeSubclasses); /** --- 98,107 ---- * (optional operation) */ ! public String propertySelectClauseFragment(String alias, String suffix); /** * Get the from clause fragment, given a query alias * (optional operation) */ ! public String fromClauseFragment(String alias, boolean innerJoin, boolean includeSubclasses); /** Index: NormalizedEntityPersister.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister/NormalizedEntityPersister.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** NormalizedEntityPersister.java 20 Jan 2003 18:45:18 -0000 1.1 --- NormalizedEntityPersister.java 24 Jan 2003 10:21:36 -0000 1.2 *************** *** 912,921 **** } ! public String fromClauseFragment(String name, boolean innerJoin, boolean includeSubclasses) { StringBuffer buf = new StringBuffer(100); buf.append( subclassTableNameClosure[0] ) .append(' ') ! .append(name) ! .append( outerjoin(name, innerJoin, includeSubclasses).toFromFragmentString() ); return buf.toString(); } --- 912,921 ---- } ! public String fromClauseFragment(String alias, boolean innerJoin, boolean includeSubclasses) { StringBuffer buf = new StringBuffer(100); buf.append( subclassTableNameClosure[0] ) .append(' ') ! .append(alias) ! .append( outerjoin(alias, innerJoin, includeSubclasses).toFromFragmentString() ); return buf.toString(); } *************** *** 937,944 **** } ! public String getQueryWhereClause(String alias, boolean includeSubclasses) throws MappingException { String ojw = outerjoin(alias, true, includeSubclasses).toWhereFragmentString(); - //remove leading " AND " - if ( ojw.toUpperCase().startsWith(" AND ") ) ojw = ojw.substring(5); return ( ojw.trim().length()==0 ) ? null : ojw; --- 937,942 ---- } ! public String queryWhereFragment(String alias, boolean includeSubclasses) throws MappingException { String ojw = outerjoin(alias, true, includeSubclasses).toWhereFragmentString(); return ( ojw.trim().length()==0 ) ? null : ojw; Index: Queryable.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister/Queryable.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Queryable.java 20 Jan 2003 12:48:14 -0000 1.4 --- Queryable.java 24 Jan 2003 10:21:36 -0000 1.5 *************** *** 44,48 **** * Get the where clause fragment, given a query alias */ ! public String getQueryWhereClause(String name, boolean includeSubclasses) throws MappingException; /** --- 44,48 ---- * Get the where clause fragment, given a query alias */ ! public String queryWhereFragment(String alias, boolean includeSubclasses) throws MappingException; /** *************** *** 50,54 **** * column name */ ! public String[] toColumns(String name, String property) throws QueryException; } --- 50,54 ---- * column name */ ! public String[] toColumns(String alias, String property) throws QueryException; } |