import org.simantics.graph.compiler.GraphCompilerPreferences;\r
import org.simantics.graph.compiler.internal.store.LocationStore;\r
import org.simantics.graph.compiler.internal.templates.TemplateDefinitionStore;\r
+import org.simantics.graph.query.Res;\r
import org.simantics.graph.store.GraphStore;\r
import org.simantics.graph.store.StatementCollision;\r
import org.simantics.ltk.Problem;\r
this.store = store;\r
}\r
\r
+ private static String abbreviateURI(Res res) {\r
+ if(res == null)\r
+ return "null";\r
+ String uri = res.toString();\r
+ return uri.replace("http://www.simantics.org/", "");\r
+ }\r
+ \r
@Override\r
public void run() {\r
LocationStore locations = store.getStore(LocationStore.class);\r
for(StatementCollision collision : store.statements.getCollisions()) {\r
problems.add(new Problem(\r
locations.getLocation(collision.subject), \r
- "The same statement is defined twice: " +\r
- store.idToRes(collision.predicate) + ", " +\r
- store.idToRes(collision.object)));\r
+ "The same statement is defined " + collision.count + " times: " +\r
+ abbreviateURI(store.idToRes(collision.subject)) + ", " +\r
+ abbreviateURI(store.idToRes(collision.predicate)) + ", " +\r
+ abbreviateURI(store.idToRes(collision.object))));\r
}\r
}\r
\r