code: private void registerInterceptor(Node source,
                                       String beanName,
                                       BeanDefinitionRegistry registry) {
          List<String> methodList = buildMethodList(source);
  
          BeanDefinitionBuilder initializer =
              BeanDefinitionBuilder.rootBeanDefinition(SingleServiceWrapperInterceptor.class);
          initializer.addPropertyValue("methods", methodList);
  
          String perfMonitorName = beanName + "PerformanceMonitor";
          initializer.addPropertyReference("serviceWrapper", perfMonitorName);
  
          String interceptorName = beanName + "PerformanceMonitorInterceptor";
          registry.registerBeanDefinition(interceptorName, initializer.getBeanDefinition());
      }
docs: Register a new SingleServiceWrapperInterceptor for the bean being
  wrapped, associate it with the PerformanceMonitor and tell it which methods
  to intercept.
  
  @param source An Attribute node from the spring configuration
  @param beanName The name of the bean that this performance monitor is wrapped around
  @param registry The registry where all the spring beans are registered