private function _callInterceptors(
        MethodInvocation $invocation, array $interceptors
    ) {
        $total = count($interceptors) - 1;
        $invocationChain = $invocation;
        for ($i = $total; $i >= 0; $i--) {
            $newInvocation = new MethodInvocation(
                get_class($interceptors[$i]->getInterceptor()),
                $interceptors[$i]->getInterceptorMethod(),
                array($invocationChain),
                $interceptors[$i]->getInterceptor(),
                $this->reflectionFactory,
                $invocation
            );
            $invocationChain = $newInvocation;
        }
        return $invocationChain->proceed();
    }