Example #1
0
  public void update() {
    messenger.refreshEvents();
    final int filterSize = filters.size();
    if (filterSize > 0) {
      for (int i = 0; i < filterSize; ++i) {
        filters.get(i).filter(messenger, optimisedEvents);
      }
    } else {
      final ArrayList<Event<?>> events = messenger.getEvents();
      final int size = events.size();
      if (size > 0) {
        optimisedEvents.addAll(events);
      }
    }

    final int handlerSize = handlers.size();
    while (optimisedEvents.size() > 0) // Reduce chance of sending the same event twice.
    {
      final Event<?> event = optimisedEvents.get(0);
      optimisedEvents.remove(0);
      for (int j = 0; j < handlerSize; ++j) {
        handlers.get(j).processEvent(event);
      }
    }
  }
Example #2
0
 public boolean hasEvents() {
   return messenger.hasEvents();
 }
Example #3
0
 public void clearEvents() {
   messenger.clearEvents();
   optimisedEvents.clear();
 }
Example #4
0
 public int size() {
   return messenger.size();
 }
Example #5
0
 public void addEvent(final Event<?> _event) {
   messenger.addEvent(_event);
 }