Update of /var/cvs/src/org/mmbase/bridge/util
In directory james.mmbase.org:/tmp/cvs-serv5806
Modified Files:
Tag: MMBase-1_8
Queries.java
Log Message:
made addToQuery commit the new relations, and also return them
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/bridge/util
Index: Queries.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/bridge/util/Queries.java,v
retrieving revision 1.77.2.7
retrieving revision 1.77.2.8
diff -u -b -r1.77.2.7 -r1.77.2.8
--- Queries.java 25 Mar 2008 16:48:00 -0000 1.77.2.7
+++ Queries.java 1 Apr 2008 12:00:02 -0000 1.77.2.8
@@ -27,7 +27,7 @@
* methods are put here.
*
* @author Michiel Meeuwissen
- * @version $Id: Queries.java,v 1.77.2.7 2008/03/25 16:48:00 michiel Exp $
+ * @version $Id: Queries.java,v 1.77.2.8 2008/04/01 12:00:02 michiel Exp $
* @see org.mmbase.bridge.Query
* @since MMBase-1.7
*/
@@ -1303,12 +1303,14 @@
* @throw UnsupportedOperationException If it cannot be determined how the
node should be related.
*
* @since MMBase-1.8.6
+ * @returns Newly created node(s)
*/
- public static void addToResult(Query q, Node n) {
+ public static NodeList addToResult(Query q, Node n) {
List steps = q.getSteps();
if (steps.size() < 3) throw new UnsupportedOperationException();
+ NodeList result = q.getCloud().createNodeList();
// First, try if the node can be related to a startNode.
int start = 0;
Step startStep = (Step) steps.get(start);
@@ -1320,13 +1322,19 @@
RelationStep rel = (RelationStep) steps.get(start + 1);
String role =
cloud.getNode(rel.getRole().intValue()).getStringValue("sname");
switch(rel.getDirectionality()) {
- case RelationStep.DIRECTIONS_SOURCE:
- cloud.getRelationManager(n.getNodeManager(),
startNode.getNodeManager(), role).createRelation(startNode, n);
+ case RelationStep.DIRECTIONS_SOURCE: {
+ Relation newRel = cloud.getRelationManager(n.getNodeManager(),
startNode.getNodeManager(), role).createRelation(startNode, n);
+ newRel.commit();
+ result.add(newRel);
break;
- default:
- cloud.getRelationManager(startNode.getNodeManager(),
n.getNodeManager(), role).createRelation(startNode, n);
}
- return;
+ default: {
+ Relation newRel =
cloud.getRelationManager(startNode.getNodeManager(), n.getNodeManager(),
role).createRelation(startNode, n);
+ newRel.commit();
+ result.add(newRel);
+ }
+ }
+ return result;
} else {
throw new UnsupportedOperationException();
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs