private function _applyAspects(BeanDefinition $definition)
    {
        $class = $definition->getClass();
        $dispatcher = clone $this->_dispatcherTemplate;
        $this->_applySpecificAspects($definition, $dispatcher);
        $this->_applyGlobalAspects($definition, $dispatcher);
        if ($dispatcher->hasMethodsIntercepted()) {
            $definition->setProxyClassName(
                $this->_proxyFactory->create($class, $dispatcher)
            );
        }
    }