Skip to content
Snippets Groups Projects

issues that were discovered during biohackathon 2019 in Paris

Merged Piotr Gawron requested to merge wikipathways-issues into master
1 file
+ 2
4
Compare changes
  • Side-by-side
  • Inline
@@ -11,6 +11,8 @@ import lcsb.mapviewer.common.Pair;
import lcsb.mapviewer.common.exception.InvalidArgumentException;
import lcsb.mapviewer.common.exception.NotImplementedException;
import lcsb.mapviewer.converter.ConverterException;
import lcsb.mapviewer.model.LogMarker;
import lcsb.mapviewer.model.ProjectLogEntryType;
import lcsb.mapviewer.model.map.MiriamData;
import lcsb.mapviewer.wikipathway.model.*;
@@ -33,6 +35,8 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
*/
private final ReferenceParser referenceParser;
private int counter = 0;
public DataNodeParser(String mapName) {
super(mapName);
referenceParser = new ReferenceParser(mapName);
@@ -43,7 +47,14 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
if (!eElement.getNodeName().equals("DataNode")) {
throw new InvalidArgumentException(ShapeParser.class.getSimpleName() + " can parse only DataNode xml nodes");
}
DataNode node = new DataNode(eElement.getAttribute("GraphId"), getMapName());
String id = eElement.getAttribute("GraphId");
if (id == null || id.isEmpty()) {
id = "gen_dn_" + counter++;
logger.warn(new LogMarker(ProjectLogEntryType.PARSING_ISSUE, "DataNode", null, getMapName()),
"Empty GraphId found. Replacing with: " + id);
}
DataNode node = new DataNode(id, getMapName());
for (Pair<String, String> entry : getAttributes(eElement)) {
switch (entry.getLeft()) {
@@ -59,7 +70,7 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
node.setType(entry.getRight());
break;
default:
logger.warn("Unknown attribute of " + eElement.getNodeName() + " node: " + entry.getLeft());
logger.warn(node.getLogMarker(), "Unknown attribute: " + entry.getLeft());
break;
}
}
@@ -77,7 +88,7 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
node.addBiopaxReference(eTmp.getTextContent());
break;
case ("Xref"):
MiriamData data = referenceParser.parse(eTmp);
MiriamData data = referenceParser.parse(eTmp, node.getLogMarker());
if (data != null) {
node.addReference(data);
}
@@ -89,7 +100,8 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
parseAttribute(eTmp, node);
break;
default:
logger.warn("Unknown sub-node of " + eElement.getNodeName() + " node: " + eTmp.getNodeName());
logger.warn(node.getLogMarker(),
"Unknown sub-node of " + eElement.getNodeName() + " node: " + eTmp.getNodeName());
break;
}
}
@@ -189,12 +201,12 @@ public class DataNodeParser extends GraphicalPathwayElementParser<DataNode> {
case ("org.pathvisio.model.GenMAPP-Xref"):
// skip it when it's empty
if (!value.isEmpty()) {
logger.warn(shape.getLogMarker() + "Unknown attribute of node. Key: " + key + "; value: " + value);
logger.warn(shape.getLogMarker(), "Unknown attribute of node. Key: " + key + "; value: " + value);
break;
}
break;
default:
logger.warn(shape.getLogMarker() + "Unknown attribute of node. Key: " + key + "; value: " + value);
logger.warn(shape.getLogMarker(), "Unknown attribute of node. Key: " + key + "; value: " + value);
break;
}
}
Loading