1 package org.simantics.document.linking.views;
\r
3 import java.util.ArrayList;
\r
4 import java.util.Collection;
\r
5 import java.util.List;
\r
7 import org.simantics.NameLabelUtil;
\r
8 import org.simantics.db.ReadGraph;
\r
9 import org.simantics.db.Resource;
\r
10 import org.simantics.db.common.NamedResource;
\r
11 import org.simantics.db.common.request.ObjectsWithType;
\r
12 import org.simantics.db.common.request.ResourceRead;
\r
13 import org.simantics.db.exception.DatabaseException;
\r
14 import org.simantics.layer0.Layer0;
\r
15 import org.simantics.simulation.ontology.SimulationResource;
\r
17 public class ModelRead extends ResourceRead<Collection<NamedResource>> {
\r
20 public ModelRead(Resource project) {
\r
25 public Collection<NamedResource> perform(ReadGraph graph)
\r
26 throws DatabaseException {
\r
27 Layer0 l0 = Layer0.getInstance(graph);
\r
28 SimulationResource sr = SimulationResource.getInstance(graph);
\r
29 Collection<Resource> models = graph.syncRequest(new ObjectsWithType(resource,l0.ConsistsOf,sr.Model));
\r
30 List<NamedResource> result = new ArrayList<NamedResource>();
\r
31 for (Resource model : models) {
\r
32 String label = NameLabelUtil.modalName(graph, model);
\r
33 result.add(new NamedResource(label, model));
\r