public override void ProcessHandler(RChainHandler <T> handler, T dataToHandle) { RChainHandler <T> currentHandler = handler; while (currentHandler != null) { if (handler.Handle(dataToHandle)) { return; } else { currentHandler = currentHandler.NextHandlerInChain; } } }
public override void ProcessHandler(RChainHandler <T> handler, T dataToHandle) { RChainHandler <T> currentHandler = handler; while (currentHandler != null) { handler.Handle(dataToHandle); currentHandler = currentHandler.NextHandlerInChain; watchdogCounter++; if (watchdogCounter > WATCHDOG_PROCESS_WARNING) { NaaraLogger.LogError(WATCHDOG_PROCESS_WARNING_MESSAGE); return; } } }
public void Handle(RChainHandler <T> chainHandler, T dataToHandle) { this.chainProcessor.ProcessHandler(chainHandler, dataToHandle); }
public RChainHandler(RChainHandler <T> nextChainHandler) { this.nextChainHandler = nextChainHandler; }
public abstract void ProcessHandler(RChainHandler <T> handler, T dataToHandle);