]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/templates/DiagramStructureWriter.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.document.linking.ui / src / org / simantics / document / linking / report / templates / DiagramStructureWriter.java
index 3b7ac15994d3824a92accba170080e8a3886b6c1..c7fa811e43fc27a89e97f312daec0317b5aab526 100644 (file)
-package org.simantics.document.linking.report.templates;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.Collections;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.layer0.adapter.Instances;\r
-import org.simantics.document.DocumentResource;\r
-import org.simantics.document.linking.ontology.DocumentLink;\r
-import org.simantics.document.linking.report.Document;\r
-import org.simantics.document.linking.report.DocumentTitlePage;\r
-import org.simantics.document.linking.report.RowContentProvider;\r
-import org.simantics.document.linking.report.Table;\r
-import org.simantics.document.linking.report.TextItem;\r
-import org.simantics.document.linking.utils.SourceLinkUtil;\r
-import org.simantics.modeling.ModelingResources;\r
-\r
-public class DiagramStructureWriter extends DocumentWriter<Resource>{\r
-       ReadGraph graph;\r
-       Resource model;\r
-       Map<Object, Object> context;\r
-       DocumentLink sl;\r
-       ModelingResources mod;\r
-       DocumentResource doc;\r
-       NestedComparator<Resource> diagramDocumentComparator;\r
-       ResourceNameComparator diagramComparator;\r
-       \r
-       @Override\r
-       public String getName() {\r
-               return "Diagram structure";\r
-       }\r
-       \r
-       @Override\r
-       public void start(ReadGraph graph, Resource model, Document lineWriter, Map<Object, Object> context)\r
-                       throws Exception {\r
-               super.start(graph, model, lineWriter, context);\r
-               this.context = context;\r
-               DocumentTitlePage titlePage = lineWriter.newElement(DocumentTitlePage.class);\r
-               titlePage.writeTitle(graph, context);\r
-               \r
-               Table table = lineWriter.newElement(Table.class);\r
-               table.addColumn("Name", 0.4);\r
-               table.addColumn("Document", 0.6);\r
-               \r
-               //lineWriter.nextPage();\r
-               \r
-               this.graph = graph;\r
-               this.sl = DocumentLink.getInstance(graph);\r
-               this.mod = ModelingResources.getInstance(graph);\r
-               this.doc = DocumentResource.getInstance(graph);\r
-               this.model = model;\r
-               \r
-               diagramComparator = new SourceParentDiagramComparator(graph,model);\r
-               diagramDocumentComparator = new NestedComparator<Resource>();\r
-               diagramDocumentComparator.addComparator(diagramComparator);\r
-               diagramDocumentComparator.addComparator(new SourceReferenceComparator(graph, model));\r
-               \r
-               clearProviders();\r
-               addCellProvider(new HierarchyContentProvider());\r
-               addCellProvider(new DocumentContentProvider());\r
-       }\r
-       \r
-       \r
-       @Override\r
-       public List<Resource> getReportItems(ReadGraph graph)   throws Exception {\r
-               Instances instancesQuery = graph.adapt(sl.Source, Instances.class);\r
-        Collection<Resource> found = instancesQuery.find(graph, model);\r
-        List<Resource> list = new ArrayList<Resource>();\r
-        for (Resource source : found) {\r
-               Resource parent = graph.getSingleObject(source, sl.hasSource_Inverse);\r
-               if (graph.hasStatement(parent, mod.CompositeToDiagram))\r
-                       list.add(source);\r
-        }\r
-        Collections.sort(list, diagramDocumentComparator);\r
-        return list;\r
-        \r
-       }\r
-\r
-       private class HierarchyContentProvider implements RowContentProvider<Resource> {\r
-               @Override\r
-               public void setText(Document writer, Resource previous,\r
-                               Resource current, Resource next, TextItem[] row) throws Exception {\r
-                       boolean writeHierarchy = false;\r
-                       if (previous == null)\r
-                               writeHierarchy = true;\r
-                       else  {\r
-                               if (diagramComparator.compare(previous, current) != 0)\r
-                                       writeHierarchy = true;\r
-                       }\r
-                       if (writeHierarchy) {\r
-//                             if (lineWriter.getCurrentLine() > 4)\r
-//                                     lineWriter.nextPage();\r
-                               Resource obj = graph.getPossibleObject(current, sl.hasSource_Inverse);\r
-                               row[0] = writer.newItem(TextItem.class);\r
-                               if (obj != null) {\r
-                                       List<Resource> path = SourceLinkUtil.getDiagramPath(graph, model, obj);\r
-                                       if (writer.getAvailableLines() < 2)\r
-                                               writer.nextPage();\r
-                                       String text = "";\r
-                                       for (int i = 0 ; i < path.size(); i++) {\r
-                                               Resource r = path.get(i);\r
-                                               text += diagramComparator.getText(r);\r
-                                               if (i < path.size()-1)\r
-                                                       text += "/";\r
-                                       }\r
-                                       row[0].setText(text);\r
-                               } else {\r
-                                       row[0].setText("Hierarchy missing");\r
-                               }\r
-                       }\r
-                       \r
-               }\r
-       }\r
-       \r
-       private class DocumentContentProvider implements RowContentProvider<Resource> {\r
-               @Override\r
-               public void setText(Document writer, Resource previous,\r
-                               Resource current, Resource next, TextItem[] row) throws Exception {\r
-                       Resource document = SourceLinkUtil.getReferredDocument(graph, current);\r
-                       if (document != null) {\r
-                               row[1] = getDocumentItem(document);\r
-                       } else {\r
-                               row[1] = getNonExistingDocumentItem();\r
-                       }\r
-                       \r
-               }\r
-       }\r
-       \r
-\r
-}\r
+package org.simantics.document.linking.report.templates;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.layer0.adapter.Instances;
+import org.simantics.document.DocumentResource;
+import org.simantics.document.linking.ontology.DocumentLink;
+import org.simantics.document.linking.report.Document;
+import org.simantics.document.linking.report.DocumentTitlePage;
+import org.simantics.document.linking.report.RowContentProvider;
+import org.simantics.document.linking.report.Table;
+import org.simantics.document.linking.report.TextItem;
+import org.simantics.document.linking.utils.SourceLinkUtil;
+import org.simantics.modeling.ModelingResources;
+
+public class DiagramStructureWriter extends DocumentWriter<Resource>{
+       ReadGraph graph;
+       Resource model;
+       Map<Object, Object> context;
+       DocumentLink sl;
+       ModelingResources mod;
+       DocumentResource doc;
+       NestedComparator<Resource> diagramDocumentComparator;
+       ResourceNameComparator diagramComparator;
+       
+       @Override
+       public String getName() {
+               return "Diagram structure";
+       }
+       
+       @Override
+       public void start(ReadGraph graph, Resource model, Document lineWriter, Map<Object, Object> context)
+                       throws Exception {
+               super.start(graph, model, lineWriter, context);
+               this.context = context;
+               DocumentTitlePage titlePage = lineWriter.newElement(DocumentTitlePage.class);
+               titlePage.writeTitle(graph, context);
+               
+               Table table = lineWriter.newElement(Table.class);
+               table.addColumn("Name", 0.4);
+               table.addColumn("Document", 0.6);
+               
+               //lineWriter.nextPage();
+               
+               this.graph = graph;
+               this.sl = DocumentLink.getInstance(graph);
+               this.mod = ModelingResources.getInstance(graph);
+               this.doc = DocumentResource.getInstance(graph);
+               this.model = model;
+               
+               diagramComparator = new SourceParentDiagramComparator(graph,model);
+               diagramDocumentComparator = new NestedComparator<Resource>();
+               diagramDocumentComparator.addComparator(diagramComparator);
+               diagramDocumentComparator.addComparator(new SourceReferenceComparator(graph, model));
+               
+               clearProviders();
+               addCellProvider(new HierarchyContentProvider());
+               addCellProvider(new DocumentContentProvider());
+       }
+       
+       
+       @Override
+       public List<Resource> getReportItems(ReadGraph graph)   throws Exception {
+               Instances instancesQuery = graph.adapt(sl.Source, Instances.class);
+        Collection<Resource> found = instancesQuery.find(graph, model);
+        List<Resource> list = new ArrayList<Resource>();
+        for (Resource source : found) {
+               Resource parent = graph.getSingleObject(source, sl.hasSource_Inverse);
+               if (graph.hasStatement(parent, mod.CompositeToDiagram))
+                       list.add(source);
+        }
+        Collections.sort(list, diagramDocumentComparator);
+        return list;
+        
+       }
+
+       private class HierarchyContentProvider implements RowContentProvider<Resource> {
+               @Override
+               public void setText(Document writer, Resource previous,
+                               Resource current, Resource next, TextItem[] row) throws Exception {
+                       boolean writeHierarchy = false;
+                       if (previous == null)
+                               writeHierarchy = true;
+                       else  {
+                               if (diagramComparator.compare(previous, current) != 0)
+                                       writeHierarchy = true;
+                       }
+                       if (writeHierarchy) {
+//                             if (lineWriter.getCurrentLine() > 4)
+//                                     lineWriter.nextPage();
+                               Resource obj = graph.getPossibleObject(current, sl.hasSource_Inverse);
+                               row[0] = writer.newItem(TextItem.class);
+                               if (obj != null) {
+                                       List<Resource> path = SourceLinkUtil.getDiagramPath(graph, model, obj);
+                                       if (writer.getAvailableLines() < 2)
+                                               writer.nextPage();
+                                       String text = "";
+                                       for (int i = 0 ; i < path.size(); i++) {
+                                               Resource r = path.get(i);
+                                               text += diagramComparator.getText(r);
+                                               if (i < path.size()-1)
+                                                       text += "/";
+                                       }
+                                       row[0].setText(text);
+                               } else {
+                                       row[0].setText("Hierarchy missing");
+                               }
+                       }
+                       
+               }
+       }
+       
+       private class DocumentContentProvider implements RowContentProvider<Resource> {
+               @Override
+               public void setText(Document writer, Resource previous,
+                               Resource current, Resource next, TextItem[] row) throws Exception {
+                       Resource document = SourceLinkUtil.getReferredDocument(graph, current);
+                       if (document != null) {
+                               row[1] = getDocumentItem(document);
+                       } else {
+                               row[1] = getNonExistingDocumentItem();
+                       }
+                       
+               }
+       }
+       
+
+}