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

InvokeReleasePipeline() private method

private InvokeReleasePipeline ( int extensionIndex, Castle.MicroKernel.Handlers.ReleaseInvocation invocation ) : void
extensionIndex int
invocation Castle.MicroKernel.Handlers.ReleaseInvocation
return void
		private void InvokeReleasePipeline(int extensionIndex, ReleaseInvocation invocation)
		{
			if (extensionIndex >= releaseExtensions.Length)
			{
				invocation.ReturnValue = base.Release(invocation.Instance);
				return;
			}
			var nextIndex = extensionIndex + 1;
			invocation.SetProceedDelegate(() => InvokeReleasePipeline(nextIndex, invocation));
			releaseExtensions[extensionIndex].Intercept(invocation);
		}