From: <one...@us...> - 2003-01-09 12:24:54
|
Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/loader In directory sc8-pr-cvs1:/tmp/cvs-serv16192/net/sf/hibernate/loader Modified Files: OuterJoinLoader.java Log Message: redesigned id generator package applied Mark Woon's patch for generated alias lengths minor refactoring of Transaction package Index: OuterJoinLoader.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/loader/OuterJoinLoader.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** OuterJoinLoader.java 5 Jan 2003 02:11:21 -0000 1.4 --- OuterJoinLoader.java 9 Jan 2003 12:24:51 -0000 1.5 *************** *** 73,77 **** if ( autoEager( persister.enableJoinedFetch(), etype, session ) ) { // fetch many-to-many by outerjoin depending value of outer-join in mapping ! walkTree(etype, columns, persister, alias, associations, new HashSet(), session); } } --- 73,77 ---- if ( autoEager( persister.enableJoinedFetch(), etype, session ) ) { // fetch many-to-many by outerjoin depending value of outer-join in mapping ! walkTree(etype, columns, persister, associations, new HashSet(), session); } } *************** *** 112,116 **** } ! walkTree(etype, columns, persister, alias, associations, classPersisters, session); } } --- 112,116 ---- } ! walkTree(etype, columns, persister, associations, classPersisters, session); } } *************** *** 139,143 **** EntityType etype = (EntityType) types[i]; if ( autoEager( act.enableJoinedFetch(i), etype, session ) ) ! walkTree(etype, range, persister, alias, associations, classPersisters, session); } else if ( types[i].isComponentType() ) { --- 139,143 ---- EntityType etype = (EntityType) types[i]; if ( autoEager( act.enableJoinedFetch(i), etype, session ) ) ! walkTree(etype, range, persister, associations, classPersisters, session); } else if ( types[i].isComponentType() ) { *************** *** 158,162 **** * Add on association (one-to-one or many-to-one) to a list of associations be fetched by outerjoin (if necessary) */ ! private void walkTree(EntityType type, String[] columns, Object persister, String alias, List associations, Set classPersisters, SessionFactoryImplementor session) throws MappingException { Loadable subpersister = (Loadable) session.getPersister( type.getPersistentClass() ); --- 158,162 ---- * Add on association (one-to-one or many-to-one) to a list of associations be fetched by outerjoin (if necessary) */ ! private void walkTree(EntityType type, String[] columns, Object persister, List associations, Set classPersisters, SessionFactoryImplementor session) throws MappingException { Loadable subpersister = (Loadable) session.getPersister( type.getPersistentClass() ); *************** *** 222,226 **** .append( keyCols[j] ) .append(" AS ") ! .append( aliasColumn( keyCols[j], suffix ) ); if ( j != keyCols.length-1 ) buf.append(", "); } --- 222,226 ---- .append( keyCols[j] ) .append(" AS ") ! .append( StringHelper.suffix( keyCols[j], suffix ) ); if ( j != keyCols.length-1 ) buf.append(", "); } *************** *** 276,307 **** tableName = StringHelper.unqualify(tableName); ! return aliasCore(tableName.length() <=5 ? ! tableName : ! tableName.substring(0, 5), ! Integer.toString(n) ! ); ! } ! ! protected static String aliasColumn(String columnName, String suffix) { ! return aliasCore(columnName, suffix); ! } - //TODO: refactor! this is a duplicate of a method in the Loader heirarchy - private static String aliasCore(String name, String suffix) { - - char quote = name.charAt(0); - boolean nameEscaped = Dialect.QUOTE.indexOf(quote) > -1; - - if (nameEscaped) name = name.substring(1, name.length()-1); - - StringBuffer aliasBuilder = new StringBuffer(name.length()); - - if (nameEscaped) aliasBuilder.append(quote); - aliasBuilder.append(name); - aliasBuilder.append(suffix); - if (nameEscaped) aliasBuilder.append(quote); - - return aliasBuilder.toString(); - } } --- 276,285 ---- tableName = StringHelper.unqualify(tableName); ! return StringHelper.suffix( ! tableName.length() <=5 ? tableName : tableName.substring(0, 5), ! Integer.toString(n) ! ); ! } } |