private void AddProcessor(string processingGroup, bool multiprocessing) { BlockingCollection <RoutedContext> inputPipe = new BlockingCollection <RoutedContext>(); if (!multiprocessing) { HttpSimpleProcessor processor = new HttpSimpleProcessor(this); processor.ProcessingGroupName = processingGroup; processor.Name = "Tx_" + processingGroup; //HttpRouter ---<RoutedContext>---> HttpProcessor processor.InputPipe = inputPipe; //HttpProcessor ---<HttpContext>---> HttpOutboundAdapter processor.OutputPipe = _httpOutboundAdapter.InputPipe; _httpProcessors.Add(processingGroup, processor); } else { HttpLimitedMultiProcessor processor = new HttpLimitedMultiProcessor(this); processor.ProcessingGroupName = processingGroup; //HttpRouter ---<RoutedContext>---> HttpProcessor processor.InputPipe = inputPipe; //HttpProcessor ---<HttpContext>---> HttpOutboundAdapter processor.OutputPipe = _httpOutboundAdapter.InputPipe; _httpProcessors.Add(processingGroup, processor); } _httpRouter.AddOutputPipe(processingGroup, inputPipe); }