package at.ac.univie.mminf.qskos4j.issues.clusters;
import at.ac.univie.mminf.qskos4j.result.ResourceCollectionsResult;
import at.ac.univie.mminf.qskos4j.util.graph.GraphExporter;
import at.ac.univie.mminf.qskos4j.util.graph.NamedEdge;
import org.jgrapht.DirectedGraph;
import org.openrdf.model.Resource;
import java.io.BufferedWriter;
import java.io.IOException;
import java.util.Collection;
public class ClustersResult extends ResourceCollectionsResult
{
private DirectedGraph<Resource, NamedEdge> graph;
ClustersResult(Collection<Collection<Resource>> data, DirectedGraph<Resource, NamedEdge> graph) {
super(data, "Cluster");
// one disconnected cluster is not an error, so no need to report
if (data.size() == 1) data.clear();
this.graph = graph;
}
@Override
public void generateDotReport(BufferedWriter writer) throws IOException {
for (String dotGraph : new GraphExporter(graph).exportDotGraphs(getData())) {
writer.write(dotGraph);
writer.newLine();
}
}
}