List of usage examples for org.springframework.aop.framework ProxyConfig ProxyConfig
ProxyConfig
From source file:com.ryantenney.metrics.spring.config.annotation.MetricsConfigurationSupport.java
@Override public void setImportMetadata(AnnotationMetadata importMetadata) { final AnnotationAttributes enableMetrics = AnnotationAttributes .fromMap(importMetadata.getAnnotationAttributes(EnableMetrics.class.getName(), false)); Assert.notNull(enableMetrics, "@" + EnableMetrics.class.getSimpleName() + " is not present on importing class " + importMetadata.getClassName()); this.proxyConfig = new ProxyConfig(); this.proxyConfig.setExposeProxy(enableMetrics.getBoolean("exposeProxy")); this.proxyConfig.setProxyTargetClass(enableMetrics.getBoolean("proxyTargetClass")); }
From source file:com.ryantenney.metrics.spring.config.AnnotationDrivenBeanDefinitionParser.java
@Override public BeanDefinition parse(Element element, ParserContext parserContext) { final Object source = parserContext.extractSource(element); final CompositeComponentDefinition compDefinition = new CompositeComponentDefinition(element.getTagName(), source);//from w ww. j a v a 2s . c o m parserContext.pushContainingComponent(compDefinition); String metricsBeanName = element.getAttribute("metric-registry"); if (!StringUtils.hasText(metricsBeanName)) { metricsBeanName = registerComponent(parserContext, build(MetricRegistry.class, source, ROLE_APPLICATION)); } String healthCheckBeanName = element.getAttribute("health-check-registry"); if (!StringUtils.hasText(healthCheckBeanName)) { healthCheckBeanName = registerComponent(parserContext, build(HealthCheckRegistry.class, source, ROLE_APPLICATION)); } final ProxyConfig proxyConfig = new ProxyConfig(); if (StringUtils.hasText(element.getAttribute("expose-proxy"))) { proxyConfig.setExposeProxy(Boolean.valueOf(element.getAttribute("expose-proxy"))); } if (StringUtils.hasText(element.getAttribute("proxy-target-class"))) { proxyConfig.setProxyTargetClass(Boolean.valueOf(element.getAttribute("proxy-target-class"))); } //@formatter:off registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE) .setFactoryMethod("exceptionMetered").addConstructorArgReference(metricsBeanName) .addConstructorArgValue(proxyConfig)); registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE) .setFactoryMethod("metered").addConstructorArgReference(metricsBeanName) .addConstructorArgValue(proxyConfig)); registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE).setFactoryMethod("timed") .addConstructorArgReference(metricsBeanName).addConstructorArgValue(proxyConfig)); registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE) .setFactoryMethod("gauge").addConstructorArgReference(metricsBeanName)); registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE) .setFactoryMethod("injectMetric").addConstructorArgReference(metricsBeanName)); registerComponent(parserContext, build(MetricsBeanPostProcessorFactory.class, source, ROLE_INFRASTRUCTURE) .setFactoryMethod("healthCheck").addConstructorArgReference(healthCheckBeanName)); //@formatter:on parserContext.popAndRegisterContainingComponent(); return null; }