View Javadoc

1   /*
2    * @(#) RegionInterface.java May 9, 2005
3    * 
4    * Copyright (c) 2003-2005 Delft University of Technology, Jaffalaan 5, 2628 BX
5    * Delft, the Netherlands. All rights reserved.
6    * 
7    * See for project information <a href="http://www.simulation.tudelft.nl/">
8    * www.simulation.tudelft.nl </a>.
9    * 
10   * The source code and binary code of this software are proprietary information
11   * of Delft University of Technology.
12   */
13  package org.gscg.gameactors.statistics;
14  
15  import java.io.Serializable;
16  import java.util.List;
17  
18  import nl.tudelft.simulation.content.HandlerInterface;
19  import nl.tudelft.simulation.supplychain.actor.SupplyChainActor;
20  
21  /***
22   * The RegionInterface is used by regions. It requires that each region
23   * implementing this interface allows another object to add an actor to the
24   * region.
25   * <p>
26   * (c) copyright 2005 <a href="http://www.simulation.tudelft.nl">Delft
27   * University of Technology </a>, the Netherlands. <br>
28   * See for project information <a
29   * href="http://www.simulation.tudelft.nl">www.simulation.tudelft.nl </a> <br>
30   * 
31   * Copyright (c) 2003-2005 Delft University of Technology, Jaffalaan 5, 2628 BX
32   * Delft, the Netherlands. All rights reserved.
33   * 
34   * See for project information <a href="http://www.simulation.tudelft.nl/">
35   * www.simulation.tudelft.nl </a>.
36   * 
37   * The source code and binary code of this software are proprietary information
38   * of Delft University of Technology.
39   * 
40   * @author <a
41   *         href="http://www.tbm.tudelft.nl/webstaf/stijnh/index.htm">Stijn-Pieter
42   *         van Houten </a>
43   * @version $Revision: 1.1 $ $Date: 2005/08/03 08:52:49 $
44   * @since 1.1.3
45   */
46  public interface RegionInterface extends Serializable
47  {
48  	/***
49  	 * adds a supply chain actor to a region
50  	 * 
51  	 * @param actor the actor to add
52  	 * @return returns false if the actor is not contained by the region, or is
53  	 *         already
54  	 */
55  	boolean addSupplyChainActor(SupplyChainActor actor);
56  
57  	/***
58  	 * adds a statistic handler to a region
59  	 * 
60  	 * @param contentClass the class of the content to get statistics for
61  	 * @param handler the handler to process the content and compose statistics
62  	 */
63  	void addStatisticHandler(Class contentClass, HandlerInterface handler);
64  
65  	/***
66  	 * @return returns the name of the region
67  	 */
68  	String getName();
69  
70  	/***
71  	 * @return returns the list with statistic handlers
72  	 */
73  	List getStatisticHandlers();
74  }