package at.ac.univie.mminf.qskos4j.issues.relations;
import at.ac.univie.mminf.qskos4j.result.CollectionResult;
import at.ac.univie.mminf.qskos4j.result.Result;
import at.ac.univie.mminf.qskos4j.util.Tuple;
import org.openrdf.model.Resource;
import java.io.BufferedWriter;
import java.io.IOException;
import java.util.Map;
public class UnidirectionallyRelatedConceptsResult extends Result<Map<Tuple<Resource>, String>> {
protected UnidirectionallyRelatedConceptsResult(Map<Tuple<Resource>, String> data) {
super(data);
}
@Override
protected void generateTextReport(BufferedWriter writer, ReportStyle style) throws IOException
{
switch (style) {
case SHORT:
new CollectionResult<Tuple<Resource>>(getData().keySet()).generateReport(writer, ReportFormat.TXT, ReportStyle.SHORT);
break;
case EXTENSIVE:
writer.write(generateExtensiveReport());
break;
}
}
private String generateExtensiveReport()
{
StringBuilder extensiveReport = new StringBuilder();
for (Tuple<Resource> concepts : getData().keySet()) {
extensiveReport.append("concepts: ").append(concepts.toString()).append(", related by: '").append(getData().get(concepts)).append("'\n");
}
return extensiveReport.toString();
}
@Override
public long occurrenceCount() {
return getData().size();
}
}