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());
}
}