public void eventReceived(AntEventSummary event) {
    latestEvent = event;

    final AntBuildEvent type = AntBuildEvent.valueOf(event.getType());

    switch (type) {
      case TARGET_STARTED:
        pushTarget(event.getTargetName(), true);
        break;
      case TARGET_FINISHED:
        popTarget();
        break;
      case TASK_STARTED:
        pushTarget(event.getTaskName(), false);
        break;
      case TASK_FINISHED:
        popTask();
        break;
    }

    parseMessage(event);
  }