@Override public void receiveResult(DispatchResultEvent resultEvent) { StateModel model; String owningProcess = resultEvent.getOwningProcess(); synchronized(stateMap) { model = stateMap.get(owningProcess); } if (model == null) { logger.warn("Error received for unknown owning process: " + owningProcess); return; } if (!resultEvent.isStreamingEvent()) { MonitorManager.getInstance().registerNode(resultEvent, owningProcess, new HashSet<MonitorableProperty<?>>()); } model.finishWith(resultEvent.getIndex()); getAbove().receiveResult(resultEvent); }