You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by js...@apache.org on 2007/08/02 13:52:52 UTC

svn commit: r562084 - in /activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component: bean/BeanComponent.java pojo/PojoComponent.java pojo/PojoEndpoint.java

Author: jstrachan
Date: Thu Aug  2 04:52:52 2007
New Revision: 562084

URL: http://svn.apache.org/viewvc?view=rev&rev=562084
Log:
further refactoring to unify POJO and bean

Modified:
    activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java
    activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoComponent.java
    activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoEndpoint.java

Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java?view=diff&rev=562084&r1=562083&r2=562084
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java Thu Aug  2 04:52:52 2007
@@ -57,14 +57,19 @@
     //-----------------------------------------------------------------------
 
     protected Endpoint createEndpoint(String uri, String remaining, Map parameters) throws Exception {
+        Object bean = getBean(remaining);
+        BeanProcessor processor = new BeanProcessor(bean, getInvocationStrategy());
+        IntrospectionSupport.setProperties(processor, parameters);
+        return new ProcessorEndpoint(uri, this, processor);
+    }
+
+    public Object getBean(String remaining) {
         Registry registry = getCamelContext().getRegistry();
         Object bean = registry.lookup(remaining);
         if (bean == null) {
             throw new IllegalArgumentException("No such bean: " + remaining + " in registry: " + registry);
         }
-        BeanProcessor processor = new BeanProcessor(bean, getInvocationStrategy());
-        IntrospectionSupport.setProperties(processor, parameters);
-        return new ProcessorEndpoint(uri, this, processor);
+        return bean;
     }
 
     protected MethodInvocationStrategy createInvocationStrategy() {

Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoComponent.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoComponent.java?view=diff&rev=562084&r1=562083&r2=562084
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoComponent.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoComponent.java Thu Aug  2 04:52:52 2007
@@ -18,10 +18,9 @@
 
 import org.apache.camel.Endpoint;
 import org.apache.camel.Producer;
-import org.apache.camel.impl.DefaultComponent;
+import org.apache.camel.component.bean.BeanComponent;
 
 import java.lang.reflect.Proxy;
-import java.util.Map;
 
 /**
  * Represents the component that manages {@link PojoEndpoint}.  It holds the
@@ -29,22 +28,21 @@
  *
  * @version $Revision: 519973 $
  */
-public class PojoComponent extends DefaultComponent<PojoExchange> {
+public class PojoComponent extends BeanComponent {
 
-    public Object getService(String uri) {
-        return getCamelContext().getRegistry().lookup(uri);
-    }
+/*
 
     @Override
     protected Endpoint<PojoExchange> createEndpoint(String uri, final String remaining, Map parameters) throws Exception {
         return new PojoEndpoint(uri, this, remaining);
     }
-    
+*/
+
     /**
      * Creates a Proxy which sends PojoExchange to the endpoint.
      * @throws Exception 
      */
-    static public Object createProxy(final Endpoint endpoint, ClassLoader cl, Class interfaces[]) throws Exception {
+    public static Object createProxy(final Endpoint endpoint, ClassLoader cl, Class interfaces[]) throws Exception {
     	final Producer producer = endpoint.createProducer();
         return Proxy.newProxyInstance(cl, interfaces, new CamelInvocationHandler(endpoint, producer));
     }
@@ -53,7 +51,7 @@
      * Creates a Proxy which sends PojoExchange to the endpoint.
      * @throws Exception 
      */
-    static public Object createProxy(Endpoint endpoint, Class interfaces[]) throws Exception {
+    public static Object createProxy(Endpoint endpoint, Class interfaces[]) throws Exception {
     	if( interfaces.length < 1 ) {
     		throw new IllegalArgumentException("You must provide at least 1 interface class.");
     	}
@@ -64,7 +62,7 @@
      * @throws Exception 
      */
     @SuppressWarnings("unchecked")
-	static public <T> T createProxy(Endpoint endpoint, ClassLoader cl, Class<T> interfaceClass) throws Exception {
+	public static <T> T createProxy(Endpoint endpoint, ClassLoader cl, Class<T> interfaceClass) throws Exception {
         return (T) createProxy(endpoint, cl, new Class[]{interfaceClass});
     }
     
@@ -73,7 +71,7 @@
      * @throws Exception 
      */
     @SuppressWarnings("unchecked")
-	static public <T> T createProxy(Endpoint endpoint, Class<T> interfaceClass) throws Exception {
+	public static <T> T createProxy(Endpoint endpoint, Class<T> interfaceClass) throws Exception {
         return (T) createProxy(endpoint, new Class[]{interfaceClass});
     }
 

Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoEndpoint.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoEndpoint.java?view=diff&rev=562084&r1=562083&r2=562084
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoEndpoint.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/component/pojo/PojoEndpoint.java Thu Aug  2 04:52:52 2007
@@ -96,6 +96,6 @@
     }
 
     protected Object lookupService() {
-        return getPojoComponent().getService(getPojoName());
+        return getPojoComponent().getBean(getPojoName());
     }
 }