Beispiel #1
0
 public IHandler CreateChainOfResponsibility()
 {
     return(_handlers.Reverse().Aggregate(
                new List <ChainHandler>(),
                (chain, handler) => {
         ChainHandler last = null;
         if (chain.Count > 0)
         {
             last = chain.Last();
         }
         chain.Add(new ChainHandler(handler, last));
         return chain;
     }
                ).Last());
 }
Beispiel #2
0
 public ChainHandler SetNextHandler(ChainHandler nextHandler)
 {
     return(new ChainHandler(_handler, nextHandler));
 }
Beispiel #3
0
 public ChainHandler(IHandler handler, ChainHandler nextHandler)
 {
     _handler     = handler;
     _nextHandler = nextHandler;
 }
 public ChainHandler SetNextHandler(ChainHandler nextHandler)
 {
     return new ChainHandler(_handler, nextHandler);
 }
 public ChainHandler(IHandler handler, ChainHandler nextHandler)
 {
     _handler = handler;
     _nextHandler = nextHandler;
 }