]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.district.network/src/org/simantics/district/network/profile/RuntimeDynamicVisualisationsRequest.java
05ed85bd47e4c90b31323fab0de19415b3562b53
[simantics/district.git] / org.simantics.district.network / src / org / simantics / district / network / profile / RuntimeDynamicVisualisationsRequest.java
1 package org.simantics.district.network.profile;
2
3 import org.simantics.db.ReadGraph;
4 import org.simantics.db.Resource;
5 import org.simantics.db.common.procedure.adapter.TransientCacheAsyncListener;
6 import org.simantics.db.common.request.ResourceRead;
7 import org.simantics.db.exception.DatabaseException;
8 import org.simantics.diagram.stubs.DiagramResource;
9 import org.simantics.district.network.visualisations.model.DynamicVisualisation;
10
11 /**
12  * @author Jani Simomaa
13  */
14 public class RuntimeDynamicVisualisationsRequest extends ResourceRead<DynamicVisualisation> {
15
16     public RuntimeDynamicVisualisationsRequest(Resource runtimeDiagram) {
17         super(runtimeDiagram);
18     }
19
20     @Override
21     public DynamicVisualisation perform(ReadGraph graph) throws DatabaseException {
22         DiagramResource DIA = DiagramResource.getInstance(graph);
23         Resource diagram = graph.getPossibleObject(resource, DIA.RuntimeDiagram_HasConfiguration);
24         if (diagram != null) {
25             return graph.syncRequest(new ActiveDynamicVisualisationsRequest(diagram), TransientCacheAsyncListener.instance());
26         }
27         return null;
28     }
29
30 }