From 5f91213ac18e49ab290e9c8d55c39bec6c540030 Mon Sep 17 00:00:00 2001 From: Antonin Stefanutti Date: Wed, 20 Jan 2016 11:10:33 +0100 Subject: [PATCH] Use lambda expressions --- .../cdi/se/expression/ExchangeExpression.java | 11 ++--------- .../apache/camel/cdi/se/RawEventEndpointTest.java | 11 +++-------- .../org/apache/camel/cdi/CdiCamelExtension.java | 12 ++---------- .../cdi/sample/metrics/SuccessRatioGauge.java | 15 ++++----------- 4 files changed, 11 insertions(+), 38 deletions(-) diff --git a/envs/se/src/main/java/org/apache/camel/cdi/se/expression/ExchangeExpression.java b/envs/se/src/main/java/org/apache/camel/cdi/se/expression/ExchangeExpression.java index 23f32c6..8ea9f6a 100644 --- a/envs/se/src/main/java/org/apache/camel/cdi/se/expression/ExchangeExpression.java +++ b/envs/se/src/main/java/org/apache/camel/cdi/se/expression/ExchangeExpression.java @@ -16,19 +16,12 @@ */ package org.apache.camel.cdi.se.expression; -import org.apache.camel.Exchange; import org.apache.camel.Expression; -import org.apache.camel.Predicate; import org.apache.camel.util.PredicateToExpressionAdapter; public final class ExchangeExpression { - public static Expression fromCamelContext(final String contextName) { - return new PredicateToExpressionAdapter(new Predicate() { - @Override - public boolean matches(Exchange exchange) { - return exchange.getContext().getName().equals(contextName); - } - }); + public static Expression fromCamelContext(String contextName) { + return new PredicateToExpressionAdapter(exchange -> exchange.getContext().getName().equals(contextName)); } } diff --git a/envs/se/src/test/java/org/apache/camel/cdi/se/RawEventEndpointTest.java b/envs/se/src/test/java/org/apache/camel/cdi/se/RawEventEndpointTest.java index 197a531..14994a5 100644 --- a/envs/se/src/test/java/org/apache/camel/cdi/se/RawEventEndpointTest.java +++ b/envs/se/src/test/java/org/apache/camel/cdi/se/RawEventEndpointTest.java @@ -16,8 +16,6 @@ */ package org.apache.camel.cdi.se; -import org.apache.camel.Exchange; -import org.apache.camel.Predicate; import org.apache.camel.ProducerTemplate; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.cdi.CdiCamelExtension; @@ -89,12 +87,9 @@ public void sendMessageToProducer(@Uri("direct:produce") ProducerTemplate produc produced.expectedMessageCount(1); produced.expectedBodiesReceived(random); - produced.message(0).predicate(new Predicate() { - @Override - public boolean matches(Exchange exchange) { - EventMetadata metadata = exchange.getIn().getHeader("metadata", EventMetadata.class); - return metadata.getType().equals(Long.class) && metadata.getQualifiers().equals(new HashSet<>(Arrays.asList(new AnnotationLiteral() {}, new AnnotationLiteral() {}))); - } + produced.message(0).predicate(exchange -> { + EventMetadata metadata = exchange.getIn().getHeader("metadata", EventMetadata.class); + return metadata.getType().equals(Long.class) && metadata.getQualifiers().equals(new HashSet<>(Arrays.asList(new AnnotationLiteral() {}, new AnnotationLiteral() {}))); }); consumed.expectedMessageCount(1); diff --git a/impl/src/main/java/org/apache/camel/cdi/CdiCamelExtension.java b/impl/src/main/java/org/apache/camel/cdi/CdiCamelExtension.java index 5794a1b..7862910 100755 --- a/impl/src/main/java/org/apache/camel/cdi/CdiCamelExtension.java +++ b/impl/src/main/java/org/apache/camel/cdi/CdiCamelExtension.java @@ -48,9 +48,7 @@ import javax.enterprise.inject.spi.DeploymentException; import javax.enterprise.inject.spi.Extension; import javax.enterprise.inject.spi.InjectionPoint; -import javax.enterprise.inject.spi.InjectionTarget; import javax.enterprise.inject.spi.InjectionTargetFactory; -import javax.enterprise.inject.spi.ObserverMethod; import javax.enterprise.inject.spi.ProcessAnnotatedType; import javax.enterprise.inject.spi.ProcessBean; import javax.enterprise.inject.spi.ProcessBeanAttributes; @@ -212,17 +210,11 @@ private void cdiCamelFactoryProducers(@Observes AfterBeanDiscovery abd, BeanMana private void addDefaultCamelContext(@Observes AfterBeanDiscovery abd, final BeanManager manager) { if (manager.getBeans(CamelContext.class, AnyLiteral.INSTANCE).isEmpty()) - abd.addBean(manager.createBean(new CamelContextBeanAttributes(manager), DefaultCamelContext.class, new InjectionTargetFactory() { - @Override - public InjectionTarget createInjectionTarget(Bean bean) { - return environment.camelContextInjectionTarget(new CamelContextDefaultProducer(), null, manager); - } - })); + abd.addBean(manager.createBean(new CamelContextBeanAttributes(manager), DefaultCamelContext.class, (InjectionTargetFactory) bean -> environment.camelContextInjectionTarget(new CamelContextDefaultProducer(), null, manager))); } private void addCdiEventObserverMethods(@Observes AfterBeanDiscovery abd) { - for (ObserverMethod method : cdiEventEndpoints.values()) - abd.addObserverMethod(method); + cdiEventEndpoints.values().forEach(abd::addObserverMethod); } private void createCamelContexts(@Observes AfterDeploymentValidation adv, BeanManager manager) { diff --git a/samples/metrics/src/main/java/org/apache/camel/cdi/sample/metrics/SuccessRatioGauge.java b/samples/metrics/src/main/java/org/apache/camel/cdi/sample/metrics/SuccessRatioGauge.java index 27617f1..9c433e7 100644 --- a/samples/metrics/src/main/java/org/apache/camel/cdi/sample/metrics/SuccessRatioGauge.java +++ b/samples/metrics/src/main/java/org/apache/camel/cdi/sample/metrics/SuccessRatioGauge.java @@ -18,23 +18,16 @@ import com.codahale.metrics.Gauge; import com.codahale.metrics.Meter; -import com.codahale.metrics.RatioGauge; +import com.codahale.metrics.RatioGauge.Ratio; import com.codahale.metrics.annotation.Metric; import javax.enterprise.inject.Produces; -import javax.inject.Inject; class SuccessRatioGauge { - @Inject - Meter generated, success; - @Produces @Metric(name = "success-ratio") - Gauge successRatio = new RatioGauge() { - @Override - protected Ratio getRatio() { - return Ratio.of(success.getOneMinuteRate(), generated.getOneMinuteRate()); - } - }; + Gauge successRatio(Meter generated, Meter success) { + return () -> Ratio.of(success.getOneMinuteRate(), generated.getOneMinuteRate()).getValue(); + } }