/src/elements/CompositeEvent.java

http://inequity.googlecode.com/ · Java · 41 lines · 22 code · 4 blank · 15 comment · 1 complexity · 863afc778efae9afb8e8e06b77e2a62d MD5 · raw file

  1. package elements;
  2. import java.util.ArrayList;
  3. /**
  4. * An single event that can contain multiple sub events
  5. * @author Joel Garboden
  6. */
  7. public class CompositeEvent extends BaseEvent
  8. {
  9. private ArrayList<BaseEvent> eventList;
  10. /**
  11. * Creates empty event list
  12. */
  13. public CompositeEvent()
  14. {
  15. eventList = new ArrayList<BaseEvent>();
  16. }
  17. /**
  18. * Function to execute events of an event
  19. * @param portfolio player's portfolio
  20. */
  21. @Override
  22. public final void execEvent(PlayerPortfolio portfolio)
  23. {
  24. for(BaseEvent event : eventList)
  25. {
  26. event.execEvent(portfolio);
  27. }
  28. }
  29. /**
  30. * Adds event to the event list
  31. * @param event event to add
  32. */
  33. public void addEvent(BaseEvent event)
  34. {
  35. eventList.add(event);
  36. }
  37. }