//Edge intro
stringBuilder.append("edgedef> node1,node2,");
//Edge settings helper
HierarchicalGraph hg = (HierarchicalGraph) graph;
for (Edge e : hg.getEdgesAndMetaEdges()) {
edgeColors = edgeColors || e.getEdgeData().r() != -1;
edgeLabels = edgeLabels || (e.getEdgeData().getLabel() != null && !e.getEdgeData().getLabel().isEmpty());
}
//Edge columns title
for (EdgeColumnsGDF c : defaultEdgeColumnsGDFs) {
if (c.isEnable()) {
stringBuilder.append(c.getTitle());
stringBuilder.append(" ");
stringBuilder.append(c.getType().toString().toUpperCase());
if (c.getDefaultValue() != null) {
stringBuilder.append(" default ");
stringBuilder.append(c.getDefaultValue().toString());
}
stringBuilder.append(",");
}
}
//Attributes Edge columns
for (AttributeColumn c : edgeColumns) {
if (!c.getOrigin().equals(AttributeOrigin.PROPERTY)) {
stringBuilder.append(c.getTitle());
stringBuilder.append(" ");
DataTypeGDF dataTypeGDF = getDataTypeGDF(c.getType());
stringBuilder.append(dataTypeGDF.toString().toUpperCase());
if (c.getDefaultValue() != null) {
stringBuilder.append(" default ");
stringBuilder.append(c.getDefaultValue().toString());
}
stringBuilder.append(",");
}
}
//Remove last coma
stringBuilder.setLength(stringBuilder.length() - 1);
stringBuilder.append("\n");
//MetaEdges
EdgeIterable edgeIterable;
if (graph.getGraphModel().isHierarchical()) {
HierarchicalGraph hierarchicalGraph = (HierarchicalGraph) graph;
edgeIterable = hierarchicalGraph.getEdgesAndMetaEdges();
} else {
edgeIterable = graph.getEdges();
}
//Edge lines