Repository: camel
Updated Branches:
  refs/heads/master d2defc15e -> 12e62a0ee


CAMEL-7452: Polished


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/12e62a0e
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/12e62a0e
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/12e62a0e

Branch: refs/heads/master
Commit: 12e62a0ee8c5f993804adeca58f9f0f0794620f3
Parents: d2defc1
Author: Claus Ibsen <davscl...@apache.org>
Authored: Mon Sep 1 22:08:37 2014 +0200
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Mon Sep 1 22:08:37 2014 +0200

----------------------------------------------------------------------
 .../org/apache/camel/component/bean/BeanProcessor.java   |  4 ++--
 .../component/bean/ConstantStaticTypeBeanHolder.java     | 11 ++---------
 .../camel/component/bean/ConstantTypeBeanHolder.java     |  7 +------
 .../org/apache/camel/component/bean/RegistryBean.java    |  2 +-
 .../camel/model/language/MethodCallExpression.java       |  4 ++--
 5 files changed, 8 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/12e62a0e/camel-core/src/main/java/org/apache/camel/component/bean/BeanProcessor.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/component/bean/BeanProcessor.java 
b/camel-core/src/main/java/org/apache/camel/component/bean/BeanProcessor.java
index 80dd138..055ebfb 100644
--- 
a/camel-core/src/main/java/org/apache/camel/component/bean/BeanProcessor.java
+++ 
b/camel-core/src/main/java/org/apache/camel/component/bean/BeanProcessor.java
@@ -90,8 +90,8 @@ public class BeanProcessor extends ServiceSupport implements 
AsyncProcessor {
         // do we have a custom adapter for this POJO to a Processor
         // but only do this if allowed
         if (allowProcessor(explicitMethodName, beanInfo)) {
-            // see if there is a processor for the given bean
-            Processor processor = 
exchange.getContext().getTypeConverter().convertTo(Processor.class, exchange, 
bean);
+            // so if there is a custom type converter for the bean to processor
+            Processor processor = 
exchange.getContext().getTypeConverter().tryConvertTo(Processor.class, 
exchange, bean);
             if (processor != null) {
                 LOG.trace("Using a custom adapter as bean invocation: {}", 
processor);
                 try {

http://git-wip-us.apache.org/repos/asf/camel/blob/12e62a0e/camel-core/src/main/java/org/apache/camel/component/bean/ConstantStaticTypeBeanHolder.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/component/bean/ConstantStaticTypeBeanHolder.java
 
b/camel-core/src/main/java/org/apache/camel/component/bean/ConstantStaticTypeBeanHolder.java
index f052a54..c6e20da 100644
--- 
a/camel-core/src/main/java/org/apache/camel/component/bean/ConstantStaticTypeBeanHolder.java
+++ 
b/camel-core/src/main/java/org/apache/camel/component/bean/ConstantStaticTypeBeanHolder.java
@@ -21,24 +21,17 @@ import org.apache.camel.Processor;
 import org.apache.camel.util.ObjectHelper;
 
 /**
- * A constant (singleton) bean implementation of {@link BeanTypeHolder}
+ * A constant {@link org.apache.camel.component.bean.BeanHolder} for a class 
or static class
+ * where the intention is to only invoke static methods, without the need for 
creating an instance of the type.
  *
  * @version
  */
 public class ConstantStaticTypeBeanHolder extends ConstantTypeBeanHolder {
 
-    public ConstantStaticTypeBeanHolder(Class<?> type, BeanInfo beanInfo) {
-        super(type, beanInfo);
-    }
-
     public ConstantStaticTypeBeanHolder(Class<?> type, CamelContext context) {
         super(type, context);
     }
 
-    public ConstantStaticTypeBeanHolder(Class<?> type, CamelContext context, 
ParameterMappingStrategy parameterMappingStrategy) {
-        super(type, context, parameterMappingStrategy);
-    }
-
     @Override
     public Object getBean() {
         // we cannot create a bean as there is no default constructor

http://git-wip-us.apache.org/repos/asf/camel/blob/12e62a0e/camel-core/src/main/java/org/apache/camel/component/bean/ConstantTypeBeanHolder.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/component/bean/ConstantTypeBeanHolder.java
 
b/camel-core/src/main/java/org/apache/camel/component/bean/ConstantTypeBeanHolder.java
index 800b88c..b0b0694 100644
--- 
a/camel-core/src/main/java/org/apache/camel/component/bean/ConstantTypeBeanHolder.java
+++ 
b/camel-core/src/main/java/org/apache/camel/component/bean/ConstantTypeBeanHolder.java
@@ -61,12 +61,7 @@ public class ConstantTypeBeanHolder implements 
BeanTypeHolder {
     }
 
     public Object getBean()  {
-        // create a new bean
-        if (ObjectHelper.hasDefaultPublicNoArgConstructor(type)) {
-            return 
getBeanInfo().getCamelContext().getInjector().newInstance(type);
-        } else {
-            return null;
-        }
+        return getBeanInfo().getCamelContext().getInjector().newInstance(type);
     }
 
     public Processor getProcessor() {

http://git-wip-us.apache.org/repos/asf/camel/blob/12e62a0e/camel-core/src/main/java/org/apache/camel/component/bean/RegistryBean.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/component/bean/RegistryBean.java 
b/camel-core/src/main/java/org/apache/camel/component/bean/RegistryBean.java
index 72d1c2a..84fd994 100644
--- a/camel-core/src/main/java/org/apache/camel/component/bean/RegistryBean.java
+++ b/camel-core/src/main/java/org/apache/camel/component/bean/RegistryBean.java
@@ -57,7 +57,7 @@ public class RegistryBean implements BeanHolder {
      *
      * @return a new {@link org.apache.camel.component.bean.BeanHolder} that 
has cached the lookup of the bean.
      */
-    public ConstantBeanHolder createCacheHolder() throws Exception {
+    public ConstantBeanHolder createCacheHolder() {
         Object bean = getBean();
         BeanInfo info = createBeanInfo(bean);
         return new ConstantBeanHolder(bean, info);

http://git-wip-us.apache.org/repos/asf/camel/blob/12e62a0e/camel-core/src/main/java/org/apache/camel/model/language/MethodCallExpression.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/model/language/MethodCallExpression.java
 
b/camel-core/src/main/java/org/apache/camel/model/language/MethodCallExpression.java
index d888755..3d3df76 100644
--- 
a/camel-core/src/main/java/org/apache/camel/model/language/MethodCallExpression.java
+++ 
b/camel-core/src/main/java/org/apache/camel/model/language/MethodCallExpression.java
@@ -29,7 +29,7 @@ import org.apache.camel.Predicate;
 import org.apache.camel.component.bean.BeanHolder;
 import org.apache.camel.component.bean.BeanInfo;
 import org.apache.camel.component.bean.ConstantBeanHolder;
-import org.apache.camel.component.bean.ConstantTypeBeanHolder;
+import org.apache.camel.component.bean.ConstantStaticTypeBeanHolder;
 import org.apache.camel.component.bean.MethodNotFoundException;
 import org.apache.camel.component.bean.RegistryBean;
 import org.apache.camel.language.bean.BeanExpression;
@@ -171,7 +171,7 @@ public class MethodCallExpression extends 
ExpressionDefinition {
                 instance = camelContext.getInjector().newInstance(beanType);
                 holder = new ConstantBeanHolder(instance, camelContext);
             } else {
-                holder = new ConstantTypeBeanHolder(beanType, camelContext);
+                holder = new ConstantStaticTypeBeanHolder(beanType, 
camelContext);
             }
         } else if (instance != null) {
             holder = new ConstantBeanHolder(instance, camelContext);

Reply via email to