You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/07/17 09:34:00 UTC
[camel] branch master updated: Use lambda
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new dc8c20d Use lambda
dc8c20d is described below
commit dc8c20d12ffe3a15187980b88f3df7face738500
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Jul 17 11:32:55 2019 +0200
Use lambda
---
.../impl/engine/DefaultCamelBeanPostProcessor.java | 72 ++++++++++------------
.../org/apache/camel/util/ReflectionHelper.java | 3 +
2 files changed, 35 insertions(+), 40 deletions(-)
diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultCamelBeanPostProcessor.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultCamelBeanPostProcessor.java
index 72019f7..ade05e4 100644
--- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultCamelBeanPostProcessor.java
+++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultCamelBeanPostProcessor.java
@@ -162,42 +162,38 @@ public class DefaultCamelBeanPostProcessor implements CamelBeanPostProcessor {
* @param bean the bean to be injected
*/
protected void injectFields(final Object bean, final String beanName) {
- ReflectionHelper.doWithFields(bean.getClass(), new ReflectionHelper.FieldCallback() {
- public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException {
- PropertyInject propertyInject = field.getAnnotation(PropertyInject.class);
- if (propertyInject != null && getPostProcessorHelper().matchContext(propertyInject.context())) {
- injectFieldProperty(field, propertyInject.value(), propertyInject.defaultValue(), bean, beanName);
- }
+ ReflectionHelper.doWithFields(bean.getClass(), field -> {
+ PropertyInject propertyInject = field.getAnnotation(PropertyInject.class);
+ if (propertyInject != null && getPostProcessorHelper().matchContext(propertyInject.context())) {
+ injectFieldProperty(field, propertyInject.value(), propertyInject.defaultValue(), bean, beanName);
+ }
- BeanInject beanInject = field.getAnnotation(BeanInject.class);
- if (beanInject != null && getPostProcessorHelper().matchContext(beanInject.context())) {
- injectFieldBean(field, beanInject.value(), bean, beanName);
- }
+ BeanInject beanInject = field.getAnnotation(BeanInject.class);
+ if (beanInject != null && getPostProcessorHelper().matchContext(beanInject.context())) {
+ injectFieldBean(field, beanInject.value(), bean, beanName);
+ }
- EndpointInject endpointInject = field.getAnnotation(EndpointInject.class);
- if (endpointInject != null && getPostProcessorHelper().matchContext(endpointInject.context())) {
- @SuppressWarnings("deprecation")
- String uri = endpointInject.value().isEmpty() ? endpointInject.uri() : endpointInject.value();
- injectField(field, uri, endpointInject.property(), bean, beanName);
- }
+ EndpointInject endpointInject = field.getAnnotation(EndpointInject.class);
+ if (endpointInject != null && getPostProcessorHelper().matchContext(endpointInject.context())) {
+ @SuppressWarnings("deprecation")
+ String uri = endpointInject.value().isEmpty() ? endpointInject.uri() : endpointInject.value();
+ injectField(field, uri, endpointInject.property(), bean, beanName);
+ }
- Produce produce = field.getAnnotation(Produce.class);
- if (produce != null && getPostProcessorHelper().matchContext(produce.context())) {
- @SuppressWarnings("deprecation")
- String uri = produce.value().isEmpty() ? produce.uri() : produce.value();
- injectField(field, uri, produce.property(), bean, beanName, produce.binding());
- }
+ Produce produce = field.getAnnotation(Produce.class);
+ if (produce != null && getPostProcessorHelper().matchContext(produce.context())) {
+ @SuppressWarnings("deprecation")
+ String uri = produce.value().isEmpty() ? produce.uri() : produce.value();
+ injectField(field, uri, produce.property(), bean, beanName, produce.binding());
}
});
}
protected void injectBindToRegistryFields(final Object bean, final String beanName) {
- ReflectionHelper.doWithFields(bean.getClass(), new ReflectionHelper.FieldCallback() {
- public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException {
- BindToRegistry bind = field.getAnnotation(BindToRegistry.class);
- if (bind != null && getPostProcessorHelper().matchContext(bind.context())) {
- bindToRegistry(field, bind.value(), bean, beanName, bind.beanPostProcess());
- }
+ ReflectionHelper.doWithFields(bean.getClass(), field -> {
+ BindToRegistry bind = field.getAnnotation(BindToRegistry.class);
+ if (bind != null && getPostProcessorHelper().matchContext(bind.context())) {
+ bindToRegistry(field, bind.value(), bean, beanName, bind.beanPostProcess());
}
});
}
@@ -226,11 +222,9 @@ public class DefaultCamelBeanPostProcessor implements CamelBeanPostProcessor {
}
protected void injectMethods(final Object bean, final String beanName) {
- ReflectionHelper.doWithMethods(bean.getClass(), new ReflectionHelper.MethodCallback() {
- public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException {
- setterInjection(method, bean, beanName);
- getPostProcessorHelper().consumerInjection(method, bean, beanName);
- }
+ ReflectionHelper.doWithMethods(bean.getClass(), method -> {
+ setterInjection(method, bean, beanName);
+ getPostProcessorHelper().consumerInjection(method, bean, beanName);
});
}
@@ -292,13 +286,11 @@ public class DefaultCamelBeanPostProcessor implements CamelBeanPostProcessor {
}
protected void injectNestedClasses(final Object bean, final String beanName) {
- ReflectionHelper.doWithClasses(bean.getClass(), new ReflectionHelper.ClassCallback() {
- public void doWith(Class clazz) throws IllegalArgumentException, IllegalAccessException {
- BindToRegistry ann = (BindToRegistry) clazz.getAnnotation(BindToRegistry.class);
- if (ann != null && getPostProcessorHelper().matchContext(ann.context())) {
- // its a nested class so we dont have a bean instance for it
- bindToRegistry(clazz, ann.value(), null, null, ann.beanPostProcess());
- }
+ ReflectionHelper.doWithClasses(bean.getClass(), clazz -> {
+ BindToRegistry ann = (BindToRegistry) clazz.getAnnotation(BindToRegistry.class);
+ if (ann != null && getPostProcessorHelper().matchContext(ann.context())) {
+ // its a nested class so we dont have a bean instance for it
+ bindToRegistry(clazz, ann.value(), null, null, ann.beanPostProcess());
}
});
}
diff --git a/core/camel-util/src/main/java/org/apache/camel/util/ReflectionHelper.java b/core/camel-util/src/main/java/org/apache/camel/util/ReflectionHelper.java
index 15ab434..b22f9d0 100644
--- a/core/camel-util/src/main/java/org/apache/camel/util/ReflectionHelper.java
+++ b/core/camel-util/src/main/java/org/apache/camel/util/ReflectionHelper.java
@@ -35,6 +35,7 @@ public final class ReflectionHelper {
/**
* Callback interface invoked on each field in the hierarchy.
*/
+ @FunctionalInterface
public interface FieldCallback {
/**
@@ -48,6 +49,7 @@ public final class ReflectionHelper {
/**
* Action to take on each method.
*/
+ @FunctionalInterface
public interface MethodCallback {
/**
@@ -61,6 +63,7 @@ public final class ReflectionHelper {
/**
* Action to take on each class.
*/
+ @FunctionalInterface
public interface ClassCallback {
/**