Synthia
Generic and flexible data structure generator
CompositeAction.java
Go to the documentation of this file.
1 /*
2  Synthia, a data structure generator
3  Copyright (C) 2019-2021 Laboratoire d'informatique formelle
4  Université du Québec à Chicoutimi, Canada
5 
6  This program is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Lesser General Public License as published
8  by the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Lesser General Public License for more details.
15 
16  You should have received a copy of the GNU Lesser General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18  */
19 package ca.uqac.lif.synthia.test;
20 
21 import java.util.ArrayList;
22 
23 /**
24  * A {@link Action} that is made of a sequence of elementary actions.
25  * @author Sylvain Hallé
26  * @ingroup API
27  */
28 public class CompositeAction extends ArrayList<Action> implements Action
29 {
30  /**
31  * Dummy UID.
32  */
33  private static final long serialVersionUID = 1L;
34 
35  @Override
36  public void doAction()
37  {
38  for (Action a : this)
39  {
40  a.doAction();
41  }
42  }
43 
44 }
ca.uqac.lif.synthia.test.CompositeAction
A Action that is made of a sequence of elementary actions.
Definition: CompositeAction.java:28
ca.uqac.lif.synthia.test.CompositeAction.doAction
void doAction()
Performs an action on a component.
Definition: CompositeAction.java:36
ca.uqac.lif.synthia.test.Action.doAction
void doAction()
Performs an action on a component.
ca.uqac.lif.synthia.test.Action
Interface signaling that an object can perform an "action".
Definition: Action.java:27