Castle.Facilities.WcfIntegration.Proxy.WcfRemotingInterceptor.ApplyChannelPipeline C# (CSharp) Method

ApplyChannelPipeline() private method

private ApplyChannelPipeline ( int policyIndex, WcfInvocation wcfInvocation, Action action ) : void
policyIndex int
wcfInvocation WcfInvocation
action Action
return void
		private void ApplyChannelPipeline(int policyIndex, WcfInvocation wcfInvocation, Action<WcfInvocation> action)
		{
			if (policyIndex >= pipeline.Length)
			{
				action(wcfInvocation);
				return;
			}
			var nextIndex = policyIndex + 1;
			wcfInvocation.SetProceedDelegate(() => ApplyChannelPipeline(nextIndex, wcfInvocation, action));
			pipeline[policyIndex].Apply(wcfInvocation);
		}