Author: michiel Date: 2010-05-17 13:37:02 +0200 (Mon, 17 May 2010) New Revision: 42177
Modified: mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/bridge/util/Queries.java Log: sort orders of first step were not properly copied Modified: mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/bridge/util/Queries.java =================================================================== --- mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/bridge/util/Queries.java 2010-05-17 09:49:23 UTC (rev 42176) +++ mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/bridge/util/Queries.java 2010-05-17 11:37:02 UTC (rev 42177) @@ -630,16 +630,22 @@ */ public static void copySortOrders(List<SortOrder> sortOrders, Step sourceStep, Query query, Step step) { + log.info("Copying sortorders " + sortOrders); for (SortOrder sortOrder : sortOrders) { StepField sourceField = sortOrder.getField(); - if (! sourceField.getStep().equals(sourceStep)) continue; // for another step + if (! sourceField.getStep().equals(sourceStep)) { + log.info("Different step " + sourceField + " " + sourceStep); + continue; // for another step + } if (sortOrder instanceof DateSortOrder) { query.addSortOrder(query.createStepField(step, sourceField.getFieldName()), sortOrder.getDirection(), sortOrder.isCaseSensitive(), ((DateSortOrder)sortOrder).getPart()); } else { - query.addSortOrder(query.createStepField(step, sourceField.getFieldName()), sortOrder.getDirection(), - sortOrder.isCaseSensitive()); + SortOrder so = query.addSortOrder(query.createStepField(step, sourceField.getFieldName()), sortOrder.getDirection(), + sortOrder.isCaseSensitive()); + log.info("Copied " + so); + } } } @@ -2082,6 +2088,7 @@ addConstraint(subQuery, copyConstraint(q.getConstraint(), sourceStep, subQuery, destStep)); subQuery.setAlias(destStep, sourceStep.getAlias()); addConstraint(subQuery, copyConstraint(q.getConstraint(), sourceStep, subQuery, destStep)); + copySortOrders(q.getSortOrders(), sourceStep, subQuery, destStep); step += 2; } else { throw new IllegalArgumentException(); _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs