private static void _readBean(ListableBeanFactory listableBeanFactory, String name)
      throws Exception {

    Object bean = listableBeanFactory.getBean(name);

    if (bean instanceof AspectJPointcutAdvisor) {
      AspectJPointcutAdvisor aspectJPointcutAdvisor = (AspectJPointcutAdvisor) bean;

      Pointcut pointcut = aspectJPointcutAdvisor.getPointcut();

      ClassFilter classFilter = pointcut.getClassFilter();

      if (classFilter instanceof AspectJExpressionPointcut) {
        AspectJExpressionPointcut aspectJExpressionPointcut =
            (AspectJExpressionPointcut) classFilter;

        _beanFactoryAwares.add(aspectJExpressionPointcut);
        _aspectJExpressionPointcuts.add(aspectJExpressionPointcut);
      }
    } else if (bean instanceof BeanFactoryAware) {
      _beanFactoryAwares.add((BeanFactoryAware) bean);
    }
  }