public HandlerPipeline GetPipeline(MethodBase method) { HandlerPipelineKey key = HandlerPipelineKey.ForMethod(method); HandlerPipeline pipeline = EmptyPipeline; if (pipelines.ContainsKey(key)) { pipeline = pipelines[key]; } return(pipeline); }
private HandlerPipeline CreatePipeline(MethodInfo method, IEnumerable <ICallHandler> handlers) { HandlerPipelineKey key = HandlerPipelineKey.ForMethod(method); if (pipelines.ContainsKey(key)) { return(pipelines[key]); } if (method.GetBaseDefinition() == method) { pipelines[key] = new HandlerPipeline(handlers); return(pipelines[key]); } var basePipeline = CreatePipeline(method.GetBaseDefinition(), handlers); pipelines[key] = basePipeline; return(basePipeline); }
public void SetPipeline(MethodBase method, HandlerPipeline pipeline) { HandlerPipelineKey key = HandlerPipelineKey.ForMethod(method); pipelines[key] = pipeline; }