]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.issues.common/src/org/simantics/issues/common/AllBatchIssueSources.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.issues.common / src / org / simantics / issues / common / AllBatchIssueSources.java
1 package org.simantics.issues.common;
2
3 import java.util.ArrayList;
4 import java.util.Collection;
5
6 import org.simantics.db.ReadGraph;
7 import org.simantics.db.Resource;
8 import org.simantics.db.common.request.ObjectsWithType;
9 import org.simantics.db.common.request.Queries;
10 import org.simantics.db.common.request.ResourceRead;
11 import org.simantics.db.exception.DatabaseException;
12 import org.simantics.issues.ontology.IssueResource;
13 import org.simantics.layer0.Layer0;
14
15 public class AllBatchIssueSources extends ResourceRead<Collection<BatchIssueSource>> {
16         public AllBatchIssueSources(Resource model) {
17                 super(model);
18         }
19
20         @Override
21         public Collection<BatchIssueSource> perform(ReadGraph graph) throws DatabaseException {
22                 Layer0 L0 = Layer0.getInstance(graph);
23                 Collection<BatchIssueSource> result = new ArrayList<BatchIssueSource>();
24                 for (Resource source : graph.sync(new ObjectsWithType(resource, L0.ConsistsOf, IssueResource.getInstance(graph).IssueSource))) {
25                         BatchIssueSource bis = graph.syncRequest(Queries.adapt(source, BatchIssueSource.class, true));
26                         if(bis != null)
27                                 result.add(bis);
28                 }
29                 return result;
30         }
31 }