]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.issues.ui/src/org/simantics/issues/ui/SeverityChildRule.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.issues.ui / src / org / simantics / issues / ui / SeverityChildRule.java
1 package org.simantics.issues.ui;
2
3 import java.util.Collection;
4 import java.util.Collections;
5
6 import org.simantics.browsing.ui.model.children.ChildRule;
7 import org.simantics.db.ReadGraph;
8 import org.simantics.db.Resource;
9 import org.simantics.db.exception.DatabaseException;
10 import org.simantics.issues.common.IssuesOfSeverity;
11 import org.simantics.issues.ui.ontology.IssueUIResource;
12
13 public class SeverityChildRule implements ChildRule {
14
15         final Resource rule;
16         
17         public SeverityChildRule(Resource rule) {
18                 this.rule = rule;
19         }
20         
21     @Override
22     public boolean isCompatible(Class<?> contentType) {
23         return contentType.equals(Resource.class);
24     }
25
26     @Override
27     public Collection<?> getChildren(ReadGraph graph, Object parent) throws DatabaseException {
28
29         IssueUIResource UI = IssueUIResource.getInstance(graph);
30         Resource project = (Resource)parent;
31         Resource severity = graph.getSingleObject(rule, UI.IssueBrowseContext_SeverityChildRule_HasSeverity);
32         return graph.syncRequest(new IssuesOfSeverity(project, severity));
33         
34     }
35
36     @Override
37     public Collection<?> getParents(ReadGraph graph, Object child)
38             throws DatabaseException {
39         return Collections.singleton(child);
40     }
41
42
43 }