提交 a3e26216 编写于 作者: D Dustin Spicuzza

Import GraphML files correctly (Issue #149)

- Default edge type needs to be 'MIXED', as default edge type is a misnomer
上级 a6665e6f
...@@ -96,6 +96,7 @@ public class ImporterGraphML implements FileImporter, LongTask { ...@@ -96,6 +96,7 @@ public class ImporterGraphML implements FileImporter, LongTask {
//Architecture //Architecture
private Reader reader; private Reader reader;
private ContainerLoader container; private ContainerLoader container;
private EdgeDraft.EdgeType edgeDefault;
private boolean cancel; private boolean cancel;
private Report report; private Report report;
private ProgressTicket progress; private ProgressTicket progress;
...@@ -198,11 +199,18 @@ public class ImporterGraphML implements FileImporter, LongTask { ...@@ -198,11 +199,18 @@ public class ImporterGraphML implements FileImporter, LongTask {
} }
//Edge Type //Edge Type
// Container edge type should NOT be set to default edge type, as this is
// not what it really means. Mixed is the appropriate type, as GraphML supports
// mixed edge types.
container.setEdgeDefault(EdgeDefault.MIXED);
edgeDefault = EdgeDraft.EdgeType.DIRECTED;
if (!defaultEdgeType.isEmpty()) { if (!defaultEdgeType.isEmpty()) {
if (defaultEdgeType.equalsIgnoreCase("undirected")) { if (defaultEdgeType.equalsIgnoreCase("undirected")) {
container.setEdgeDefault(EdgeDefault.UNDIRECTED); edgeDefault = EdgeDraft.EdgeType.UNDIRECTED;
} else if (defaultEdgeType.equalsIgnoreCase("directed")) { } else if (defaultEdgeType.equalsIgnoreCase("directed")) {
container.setEdgeDefault(EdgeDefault.DIRECTED); edgeDefault = EdgeDraft.EdgeType.DIRECTED;
} else { } else {
report.logIssue(new Issue(NbBundle.getMessage(ImporterGraphML.class, "importerGraphML_error_defaultedgetype", defaultEdgeType), Issue.Level.SEVERE)); report.logIssue(new Issue(NbBundle.getMessage(ImporterGraphML.class, "importerGraphML_error_defaultedgetype", defaultEdgeType), Issue.Level.SEVERE));
} }
...@@ -396,7 +404,10 @@ public class ImporterGraphML implements FileImporter, LongTask { ...@@ -396,7 +404,10 @@ public class ImporterGraphML implements FileImporter, LongTask {
edge.setType(EdgeDraft.EdgeType.UNDIRECTED); edge.setType(EdgeDraft.EdgeType.UNDIRECTED);
} else { } else {
report.logIssue(new Issue(NbBundle.getMessage(ImporterGraphML.class, "importerGraphML_error_edgetype", directed, edge), Issue.Level.SEVERE)); report.logIssue(new Issue(NbBundle.getMessage(ImporterGraphML.class, "importerGraphML_error_edgetype", directed, edge), Issue.Level.SEVERE));
edge.setType(edgeDefault);
} }
} else {
edge.setType(edgeDefault);
} }
//Id //Id
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册