X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.document.linking.ui%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Flinking%2Freport%2Ftemplates%2FDiagramStructureWithDependenciesWriter.java;h=806cc47fb336d952faa7bbb14dc3f46658d14860;hp=400cb32b3e68329359d65091bd50e95030a96968;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hpb=24e2b34260f219f0d1644ca7a138894980e25b14 diff --git a/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/templates/DiagramStructureWithDependenciesWriter.java b/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/templates/DiagramStructureWithDependenciesWriter.java index 400cb32b3..806cc47fb 100644 --- a/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/templates/DiagramStructureWithDependenciesWriter.java +++ b/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/templates/DiagramStructureWithDependenciesWriter.java @@ -1,45 +1,45 @@ -package org.simantics.document.linking.report.templates; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; - -import org.simantics.db.ReadGraph; -import org.simantics.db.Resource; -import org.simantics.db.layer0.adapter.Instances; -import org.simantics.document.linking.utils.SourceLinkUtil; -import org.simantics.utils.datastructures.MapList; - - -public class DiagramStructureWithDependenciesWriter extends DiagramStructureWriter{ - - @Override - public String getName() { - return "Diagram structure with dependencies"; - } - - @Override - public List getReportItems(ReadGraph graph) throws Exception { - Instances instancesQuery = graph.adapt(sl.Source, Instances.class); - Collection found = instancesQuery.find(graph, model); - List list = new ArrayList(); - MapList diagramToReference = new MapList(); - for (Resource source : found) { - Resource parent = graph.getSingleObject(source, sl.hasSource_Inverse); - List path = SourceLinkUtil.getPath(graph, model, parent); - for (Resource r : path) { - if (graph.hasStatement(r, mod.CompositeToDiagram)){ - Resource doc = SourceLinkUtil.getReferredDocument(graph, source); - if (doc != null && !diagramToReference.contains(r, doc)) { - diagramToReference.add(r,doc); - list.add(source); - } - } - } - } - Collections.sort(list, diagramDocumentComparator); - return list; - } - -} +package org.simantics.document.linking.report.templates; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.List; + +import org.simantics.db.ReadGraph; +import org.simantics.db.Resource; +import org.simantics.db.layer0.adapter.Instances; +import org.simantics.document.linking.utils.SourceLinkUtil; +import org.simantics.utils.datastructures.MapList; + + +public class DiagramStructureWithDependenciesWriter extends DiagramStructureWriter{ + + @Override + public String getName() { + return "Diagram structure with dependencies"; + } + + @Override + public List getReportItems(ReadGraph graph) throws Exception { + Instances instancesQuery = graph.adapt(sl.Source, Instances.class); + Collection found = instancesQuery.find(graph, model); + List list = new ArrayList(); + MapList diagramToReference = new MapList(); + for (Resource source : found) { + Resource parent = graph.getSingleObject(source, sl.hasSource_Inverse); + List path = SourceLinkUtil.getPath(graph, model, parent); + for (Resource r : path) { + if (graph.hasStatement(r, mod.CompositeToDiagram)){ + Resource doc = SourceLinkUtil.getReferredDocument(graph, source); + if (doc != null && !diagramToReference.contains(r, doc)) { + diagramToReference.add(r,doc); + list.add(source); + } + } + } + } + Collections.sort(list, diagramDocumentComparator); + return list; + } + +}