Castle.MicroKernel.Handlers.ExtendedHandler.InvokeResolvePipeline C# (CSharp) Method

InvokeResolvePipeline() private method

private InvokeResolvePipeline ( int extensionIndex, Castle.MicroKernel.Handlers.ResolveInvocation invocation ) : void
extensionIndex int
invocation Castle.MicroKernel.Handlers.ResolveInvocation
return void
		private void InvokeResolvePipeline(int extensionIndex, ResolveInvocation invocation)
		{
			if (extensionIndex >= resolveExtensions.Length)
			{
				invocation.ReturnValue = ResolveCore(invocation.Context, invocation.DecommissionRequired,
				                                     invocation.InstanceRequired);
				return;
			}
			var nextIndex = extensionIndex + 1;
			invocation.SetProceedDelegate(() => InvokeResolvePipeline(nextIndex, invocation));
			resolveExtensions[extensionIndex].Intercept(invocation);
		}
	}