]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/request/IsEnumeratedType.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.db.layer0 / src / org / simantics / db / layer0 / request / IsEnumeratedType.java
1 package org.simantics.db.layer0.request;\r
2 \r
3 import org.simantics.db.ReadGraph;\r
4 import org.simantics.db.Resource;\r
5 import org.simantics.db.common.request.ResourceRead;\r
6 import org.simantics.db.exception.DatabaseException;\r
7 import org.simantics.layer0.Layer0;\r
8 \r
9 public class IsEnumeratedType extends ResourceRead<Boolean> {\r
10 \r
11         public IsEnumeratedType(Resource resource) {\r
12                 super(resource);\r
13         }\r
14 \r
15         @Override\r
16         public Boolean perform(ReadGraph graph) throws DatabaseException {\r
17                 if(graph.hasStatement(resource, Layer0.getInstance(graph).Enumeration, resource)) return true;\r
18                 for(Resource st : graph.getSupertypes(resource)) {\r
19                         if(graph.syncRequest(new IsEnumeratedType(st))) return true;    \r
20                 }\r
21                 return false;\r
22         }\r
23     \r
24 }\r