-package org.simantics.document.linking.report.templates;\r
-\r
-import java.util.Comparator;\r
-import java.util.List;\r
-\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.common.utils.NameUtils;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.document.linking.utils.SourceLinkUtil;\r
-import org.simantics.layer0.Layer0;\r
-import org.simantics.utils.strings.AlphanumComparator;\r
-\r
-\r
-class ResourceNameComparator implements Comparator<Resource> {\r
- protected ReadGraph graph;\r
- protected Layer0 l0;\r
- protected Resource model;\r
- \r
- public ResourceNameComparator(ReadGraph graph, Resource model) {\r
- this.graph = graph;\r
- this.l0 = Layer0.getInstance(graph);\r
- this.model = model;\r
- }\r
- \r
- @Override\r
- public int compare(Resource r1, Resource r2) {\r
- if (r1.equals(r2))\r
- return 0;\r
- try {\r
- String l1 = getText(r1);\r
- String l2 = getText(r2);\r
- int c = AlphanumComparator.COMPARATOR.compare(l1, l2);\r
- if (c == 0) {\r
- if (r1.getResourceId() > r2.getResourceId())\r
- return 1;\r
- if (r1.getResourceId() < r2.getResourceId())\r
- return -1;\r
- return 0;\r
- }\r
- return c;\r
- } catch (DatabaseException e) {\r
- return 0;\r
- }\r
- \r
- }\r
- \r
- public String getText(Resource r) throws DatabaseException {\r
- String l1 = NameUtils.getSafeLabel(graph, r);\r
- if (l1.length() == 0)\r
- l1 = NameUtils.getSafeName(graph, r);\r
- return l1;\r
- }\r
- \r
- public List<Resource> getPath(Resource obj) throws DatabaseException {\r
- return SourceLinkUtil.getPath(graph, model, obj);\r
- }\r
+package org.simantics.document.linking.report.templates;
+
+import java.util.Comparator;
+import java.util.List;
+
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.common.utils.NameUtils;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.document.linking.utils.SourceLinkUtil;
+import org.simantics.layer0.Layer0;
+import org.simantics.utils.strings.AlphanumComparator;
+
+
+class ResourceNameComparator implements Comparator<Resource> {
+ protected ReadGraph graph;
+ protected Layer0 l0;
+ protected Resource model;
+
+ public ResourceNameComparator(ReadGraph graph, Resource model) {
+ this.graph = graph;
+ this.l0 = Layer0.getInstance(graph);
+ this.model = model;
+ }
+
+ @Override
+ public int compare(Resource r1, Resource r2) {
+ if (r1.equals(r2))
+ return 0;
+ try {
+ String l1 = getText(r1);
+ String l2 = getText(r2);
+ int c = AlphanumComparator.COMPARATOR.compare(l1, l2);
+ if (c == 0) {
+ if (r1.getResourceId() > r2.getResourceId())
+ return 1;
+ if (r1.getResourceId() < r2.getResourceId())
+ return -1;
+ return 0;
+ }
+ return c;
+ } catch (DatabaseException e) {
+ return 0;
+ }
+
+ }
+
+ public String getText(Resource r) throws DatabaseException {
+ String l1 = NameUtils.getSafeLabel(graph, r);
+ if (l1.length() == 0)
+ l1 = NameUtils.getSafeName(graph, r);
+ return l1;
+ }
+
+ public List<Resource> getPath(Resource obj) throws DatabaseException {
+ return SourceLinkUtil.getPath(graph, model, obj);
+ }