]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.modeling.tests/src/org/simantics/modeling/tests/commands/ForAllDiagrams.java
Added missing org.simantics.modeling.tests plug-ins.
[simantics/platform.git] / bundles / org.simantics.modeling.tests / src / org / simantics / modeling / tests / commands / ForAllDiagrams.java
1 package org.simantics.modeling.tests.commands;
2
3 import org.simantics.Simantics;
4 import org.simantics.db.testing.common.Command;
5 import org.simantics.db.testing.common.CommandInvoker;
6 import org.simantics.modeling.requests.CollectionRequest;
7 import org.simantics.modeling.requests.CollectionResult;
8 import org.simantics.modeling.requests.Node;
9 import org.simantics.modeling.tests.cases.ModelingCommandSequenceTest;
10 import org.simantics.modeling.tests.traits.SingleModelTrait;
11 import org.simantics.modeling.tests.traits.SingleResourceTrait;
12 import org.simantics.modeling.tests.traits.SingleResourceTraitImpl;
13 import org.simantics.utils.page.PageDesc;
14
15 public class ForAllDiagrams extends Command<ModelingCommandSequenceTest> {
16
17         transient private SingleModelTrait model;
18         transient private CommandInvoker<SingleResourceTrait>[] invokers;
19         
20         public ForAllDiagrams(SingleModelTrait model, CommandInvoker<SingleResourceTrait> ... invokers) {
21                 this.model = model;
22                 this.invokers = invokers;
23         }
24         
25         @Override
26         public void run(ModelingCommandSequenceTest environment) throws Exception {
27         
28                 final CollectionResult result = Simantics.getSession().syncRequest(new CollectionRequest(null, PageDesc.DEFAULT, model.getResource()));
29                 for(Node diagramNode : result.diagramList) {
30                         for(CommandInvoker<SingleResourceTrait> invoker : invokers)
31                                 invoker.invoke(environment, new SingleResourceTraitImpl(diagramNode.getDiagramResource()));
32                 }
33                 
34         }
35
36 }