1
2
3
4
5
6
7
8
9
10
11
12
13 package org.gscg.singleuser.interactionlayer;
14
15 import java.rmi.RemoteException;
16
17 import org.gscg.common.interactionlayer.GlobalInteractionLayerInterface;
18 import org.gscg.game.GameGlobalData;
19
20 import nl.tudelft.simulation.dsol.simulators.SimulatorInterface;
21 import nl.tudelft.simulation.event.EventInterface;
22 import nl.tudelft.simulation.event.EventListenerInterface;
23 import nl.tudelft.simulation.event.EventType;
24 import nl.tudelft.simulation.supplychain.actor.SupplyChainActor;
25
26 /***
27 * The interface for single user interaction layers.
28 * <p>
29 * (c) copyright 2005 <a href="http://www.simulation.tudelft.nl">Delft
30 * University of Technology </a>, the Netherlands. <br>
31 * See for project information <a
32 * href="http://www.simulation.tudelft.nl">www.simulation.tudelft.nl </a> <br>
33 *
34 * Copyright (c) 2003-2005 Delft University of Technology, Jaffalaan 5, 2628 BX
35 * Delft, the Netherlands. All rights reserved.
36 *
37 * See for project information <a href="http://www.simulation.tudelft.nl/">
38 * www.simulation.tudelft.nl </a>.
39 *
40 * The source code and binary code of this software are proprietary information
41 * of Delft University of Technology.
42 *
43 * @author <a
44 * href="http://www.tbm.tudelft.nl/webstaf/stijnh/index.htm">Stijn-Pieter
45 * van Houten </a>
46 * @version $Revision: 1.1 $ $Date: 2005/08/09 15:43:41 $
47 * @since 1.1.12
48 */
49 public interface SingleUserInteractionLayerInterface extends
50 EventListenerInterface, GlobalInteractionLayerInterface
51 {
52 /***
53 * Method addEventType Before an event is fired by the interaction layer, a
54 * check is performed whether the interaction layer should fire the event.
55 * The check is based upon a set with events which is filled by invoking
56 * this method.
57 *
58 * @param eventType the event type to add
59 * @throws RemoteException thrown in case of network failure
60 */
61 public void addEventType(EventType eventType) throws RemoteException;
62
63 /***
64 * Method addStatisticEventType adds an event to a set with event types only
65 * used for statistical updates. Upon initialization, a remote game leader
66 * graphical user interface asks for this set. EventTypes which are added to
67 * this set should follow the following convention ACTORROLE_ + description
68 * of eventtype. E.g. CUSTOMER_DEMAND_CHANGED_EVENT.
69 *
70 * @param eventType the event type to add
71 * @throws RemoteException thrown in case of network failure
72 */
73 public void addStatisticEventType(final EventType eventType)
74 throws RemoteException;
75
76 /***
77 * @return Returns the globalSupplyChainData.
78 * @throws RemoteException thrown in case of network failure
79 */
80 public GameGlobalData getGlobalSupplyChainData() throws RemoteException;
81
82 /***
83 * @return Returns the owner.
84 * @throws RemoteException thrown in case of network failure
85 */
86 public SupplyChainActor getOwner() throws RemoteException;
87
88 /***
89 * @return Returns the simulator.
90 * @throws RemoteException thrown in case of network failure
91 */
92 public SimulatorInterface getSimulator() throws RemoteException;
93
94 /***
95 * Method notifyAnnounced.
96 *
97 * @param event the event for the announce method
98 * @throws RemoteException thrown in case of network failure
99 */
100 public void notifyAnnounced(EventInterface event) throws RemoteException;
101 }