Update of /var/cvs/src/org/mmbase/bridge/implementation
In directory james.mmbase.org:/tmp/cvs-serv12348
Modified Files:
AbstractNodeList.java
Log Message:
made 'convertMMObjectNodetoBridgeNode' method available to hackery on other
places
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/bridge/implementation
Index: AbstractNodeList.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/bridge/implementation/AbstractNodeList.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- AbstractNodeList.java 27 Feb 2008 11:46:52 -0000 1.9
+++ AbstractNodeList.java 13 Jun 2008 09:18:43 -0000 1.10
@@ -22,7 +22,7 @@
/**
* @since MMBase-1.9
- * @version $Id: AbstractNodeList.java,v 1.9 2008/02/27 11:46:52 michiel Exp $
+ * @version $Id: AbstractNodeList.java,v 1.10 2008/06/13 09:18:43 michiel Exp $
*/
public abstract class AbstractNodeList<E extends Node> extends BasicList<E> {
@@ -72,7 +72,7 @@
node =
cloud.getNodeManager(((MMObjectBuilder)o).getTableName());
} else {
MMObjectNode coreNode = (MMObjectNode) o;
- node = convertMMObjectNodetoBridgeNode(coreNode);
+ node = convertMMObjectNodetoBridgeNode(cloud, nodeManager,
coreNode);
}
//log.info("Found " + node.getClass() + " in " + getClass());
}
@@ -122,7 +122,9 @@
}
}
- protected Node convertMMObjectNodetoBridgeNode(MMObjectNode coreNode) {
+ public static Node convertMMObjectNodetoBridgeNode(Cloud cloud,
NodeManager nodeManager, Object o) {
+ if (o == null) return null;
+ MMObjectNode coreNode = (MMObjectNode) o;
Node node;
MMObjectBuilder coreBuilder = coreNode.getBuilder();
if (coreBuilder instanceof TypeDef) {
@@ -144,14 +146,14 @@
int rnumber = coreNode.getIntValue("rnumber");
NodeManager nm1;
if (cloud.hasNode(snumber)) {
- nm1 = castToNodeManager(cloud.getNode(snumber));
+ nm1 = castToNodeManager(cloud, cloud.getNode(snumber));
} else {
log.warn("Source of typerel " + coreNode.getNumber() + " is "
+ (coreNode.isNull("snumber") ? "NULL" : "" + snumber));
nm1 = cloud.getNodeManager("object");
}
NodeManager nm2;
if (cloud.hasNode(dnumber)) {
- nm2 = castToNodeManager(cloud.getNode(dnumber));
+ nm2 = castToNodeManager(cloud, cloud.getNode(dnumber));
} else {
log.warn("Destination of typerel " + coreNode.getNumber() + "
is " + (coreNode.isNull("dnumber") ? "NULL" : "" + dnumber));
nm2 = cloud.getNodeManager("object");
@@ -186,7 +188,7 @@
/**
* since MMBase 1.8
*/
- protected NodeManager castToNodeManager(Node n) {
+ protected static NodeManager castToNodeManager(Cloud cloud, Node n) {
if (n instanceof NodeManager) {
return (NodeManager) n;
} else {
@@ -198,7 +200,7 @@
/**
* @since MMBase-1.8.4
*/
- protected Node getNode(Cloud c, MMObjectNode coreNode) {
+ protected static Node getNode(Cloud cloud, MMObjectNode coreNode) {
int n = coreNode.getNumber();
if (n == -1) {
String[] na = coreNode.getStringValue("_number").split("_");
@@ -206,7 +208,7 @@
if (cloud.hasNode(na[1])) {
return cloud.getNode(na[1]);
} else {
- return new BasicNode(coreNode, (BasicCloud) c);
+ return new BasicNode(coreNode, (BasicCloud) cloud);
}
} else {
throw new RuntimeException("Could not make a Node of " +
coreNode);
@@ -215,7 +217,7 @@
if (cloud.hasNode(n)) {
return cloud.getNode(n);
} else {
- return new BasicNode(coreNode, (BasicCloud) c);
+ return new BasicNode(coreNode, (BasicCloud) cloud);
}
}
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs