Example #1
0
  private void notifyListener1(Event event) throws EntityException {

    EventTypeEnum type = event.getType();

    if (type instanceof MapLink) {
      switch ((MapLink) type) {
        case ACTION_LOGS:
          createPercepts(event.<ItemMap<ActionLog>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case ACTION_MENUS:
          createPercepts(
              event.<ItemMap<ActionMenu>>getContent(MapLink.COMPLETE_COLLECTION), type, "actions");
          break;
        case BUILDINGS:
          createPercepts(event.<ItemMap<Building>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case FUNCTIONS:
          createPercepts(event.<ItemMap<Function>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case SETTINGS:
          createPercepts(event.<ItemMap<Setting>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case STAKEHOLDERS:
          createPercepts(event.<ItemMap<Stakeholder>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case ZONES:
          createPercepts(event.<ItemMap<Zone>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case LANDS:
          createPercepts(event.<ItemMap<Land>>getContent(MapLink.COMPLETE_COLLECTION), type);
          break;
        case POPUPS:
          // TODO filter out only popups for the entity.
          createPercepts(
              event.<ItemMap<PopupData>>getContent(MapLink.COMPLETE_COLLECTION), type, "requests");
          break;
        default:
          TLogger.warning("EntityEventHandler received unknown event:" + event);
          return;
      }
    } else if (type == Network.ConnectionEvent.FIRST_UPDATE_FINISHED) {
      // entity is ready to run! Report to EIS
      entity.notifyReady(ENTITY);
    }
  }