Update of /var/cvs/src/org/mmbase/bridge/util/xml/query
In directory james.mmbase.org:/tmp/cvs-serv14656
Modified Files:
Tag: MMBase-1_8
QueryReader.java
Log Message:
to fix MMB-1707, made it possible to explicitley make a query multilevel
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/bridge/util/xml/query
See also: http://www.mmbase.org/jira/browse/MMB-1707
Index: QueryReader.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/bridge/util/xml/query/QueryReader.java,v
retrieving revision 1.8.2.3
retrieving revision 1.8.2.4
diff -u -b -r1.8.2.3 -r1.8.2.4
--- QueryReader.java 23 Jan 2008 15:36:42 -0000 1.8.2.3
+++ QueryReader.java 18 Aug 2008 11:07:48 -0000 1.8.2.4
@@ -18,14 +18,16 @@
import org.mmbase.storage.search.*;
import org.mmbase.storage.search.implementation.BasicCompositeConstraint;
import org.mmbase.util.*;
+import org.mmbase.util.logging.*;
/**
*
* @author Pierre van Rooden
- * @version $Id: QueryReader.java,v 1.8.2.3 2008/01/23 15:36:42 pierre Exp $
+ * @version $Id: QueryReader.java,v 1.8.2.4 2008/08/18 11:07:48 michiel Exp $
* @since MMBase-1.8
**/
public class QueryReader {
+ private static final Logger log =
Logging.getLoggerInstance(QueryReader.class);
public static final String XSD_SEARCHQUERY_1_0 = "searchquery.xsd";
public static final String NAMESPACE_SEARCHQUERY_1_0 =
"http://www.mmbase.org/xmlns/searchquery";
@@ -174,8 +176,8 @@
}
StepField stepField = null;
String fieldName = "number";
- if (hasAttribute(constraintElement,"element")) {
- if (hasAttribute(constraintElement,"field")) {
+ if (hasAttribute(constraintElement, "element")) {
+ if (hasAttribute(constraintElement, "field")) {
throw new IllegalArgumentException("Can not specify both
'field' and 'element' attributes on ageconstraint");
}
fieldName = getAttribute(constraintElement,"element") + ".number";
@@ -412,12 +414,15 @@
queryDefinition.isMultiLevel = !path.equals(element);
- if (element != null) {
+ if (element != null && ! "".equals(element)) {
queryDefinition.elementManager = cloud.getNodeManager(element);
}
if (!path.equals(element)) /* (queryDefinition.isMultiLevel) */ {
queryDefinition.query = cloud.createQuery();
Queries.addPath(queryDefinition.query, path, searchDirs);
+ if (log.isDebugEnabled()) {
+ log.debug("" + queryDefinition.query.toSql());
+ }
} else {
queryDefinition.query =
queryDefinition.elementManager.createQuery();
}
@@ -433,7 +438,9 @@
// custom configurations to the query
queryDefinition.configure(queryElement);
-
+ if (log.isDebugEnabled()) {
+ log.debug("" + queryDefinition.query.toSql());
+ }
NodeList childNodes = queryElement.getChildNodes();
for (int k = 0; k < childNodes.getLength(); k++) {
if (childNodes.item(k) instanceof Element) {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs