Fix NPE during export.

This commit is contained in:
Paulo Gustavo Veiga
2012-08-29 23:51:33 -03:00
parent 592886519e
commit 396ed9a147
3 changed files with 69 additions and 8 deletions

View File

@@ -91,17 +91,24 @@ public class FreemindExporter
List<RelationshipType> relationships = mindmapMap.getRelationship();
for (RelationshipType relationship : relationships) {
Node srcNode = nodesMap.get(relationship.getSrcTopicId());
Arrowlink arrowlink = objectFactory.createArrowlink();
Node dstNode = nodesMap.get(relationship.getDestTopicId());
arrowlink.setDESTINATION(dstNode.getID());
if (relationship.isEndArrow() != null && relationship.isEndArrow())
arrowlink.setENDARROW("Default");
if (relationship.isStartArrow() != null && relationship.isStartArrow())
arrowlink.setSTARTARROW("Default");
List<Object> cloudOrEdge = srcNode.getArrowlinkOrCloudOrEdge();
cloudOrEdge.add(arrowlink);
// Workaround for nodes without relationship associated ...
if (srcNode != null && dstNode != null) {
Arrowlink arrowlink = objectFactory.createArrowlink();
arrowlink.setDESTINATION(dstNode.getID());
if (relationship.isEndArrow() != null && relationship.isEndArrow())
arrowlink.setENDARROW("Default");
if (relationship.isStartArrow() != null && relationship.isStartArrow())
arrowlink.setSTARTARROW("Default");
List<Object> cloudOrEdge = srcNode.getArrowlinkOrCloudOrEdge();
cloudOrEdge.add(arrowlink);
}
}
JAXBUtils.saveMap(freemindMap, outputStream);