]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/request/GlobalOntologies.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.db.layer0 / src / org / simantics / db / layer0 / request / GlobalOntologies.java
1 package org.simantics.db.layer0.request;\r
2 \r
3 import java.util.ArrayList;\r
4 import java.util.List;\r
5 \r
6 import org.simantics.databoard.Bindings;\r
7 import org.simantics.db.ReadGraph;\r
8 import org.simantics.db.Resource;\r
9 import org.simantics.db.common.request.ResourceRead;\r
10 import org.simantics.db.exception.DatabaseException;\r
11 import org.simantics.db.layer0.util.Layer0Utils;\r
12 import org.simantics.layer0.Layer0;\r
13 \r
14 public class GlobalOntologies extends ResourceRead<List<Resource>> {\r
15 \r
16         public GlobalOntologies(Resource root) {\r
17                 super(root);\r
18         }\r
19 \r
20         @Override\r
21         public List<Resource> perform(ReadGraph graph) throws DatabaseException {\r
22                 Layer0 L0 = Layer0.getInstance(graph);\r
23                 ArrayList<Resource> result = new ArrayList<Resource>();\r
24                 for(Resource ontology : Layer0Utils.listOntologies(graph)) {\r
25                         Boolean global = graph.getPossibleRelatedValue(ontology, L0.Ontology_global, Bindings.BOOLEAN);\r
26                         if(global != null && global) result.add(ontology);\r
27                 }\r
28                 return result;\r
29         }\r
30 \r
31 }\r