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 2009/06/24 18:06:59 UTC
svn commit: r788067 - in /camel/trunk:
camel-core/src/main/java/org/apache/camel/
camel-core/src/main/java/org/apache/camel/builder/
camel-core/src/main/java/org/apache/camel/impl/
camel-core/src/main/java/org/apache/camel/model/ camel-core/src/main/ja...
Author: davsclaus
Date: Wed Jun 24 16:06:58 2009
New Revision: 788067
URL: http://svn.apache.org/viewvc?rev=788067&view=rev
Log:
CAMEL-1127: A bit cleanup in the routes API. Routes renamed to RoutesBuilder and having a more precise interface. Also trace logging start/stop services. And letting RouteService handle the doStop as well.
Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java (contents, props changed)
- copied, changed from r787997, camel/trunk/camel-core/src/main/java/org/apache/camel/Routes.java
Removed:
camel/trunk/camel-core/src/main/java/org/apache/camel/Routes.java
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/RouteService.java
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteBuilderDefinition.java
camel/trunk/camel-core/src/main/java/org/apache/camel/util/ServiceHelper.java
camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/ProcessBuilder.java
camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModule.java
camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithMatchingRoutes.java
camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithRouteTypes.java
camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/GuiceCamelContext.java
camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/CollectionOfCustomRoutesTest.java
camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/EndpointInjectionTest.java
camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala
camel/trunk/components/camel-spring-javaconfig/src/main/java/org/apache/camel/spring/javaconfig/CamelConfiguration.java
camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/RouteBuilderFinder.java
camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/RouteRefCamelContextFactoryBeanTest.java
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java Wed Jun 24 16:06:58 2009
@@ -217,7 +217,7 @@
* @param builder the builder which will create the routes and add them to this context
* @throws Exception if the routes could not be created for whatever reason
*/
- void addRoutes(Routes builder) throws Exception;
+ void addRoutes(RoutesBuilder builder) throws Exception;
/**
* Adds a collection of route definitions to the context
Copied: camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java (from r787997, camel/trunk/camel-core/src/main/java/org/apache/camel/Routes.java)
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java?p2=camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java&p1=camel/trunk/camel-core/src/main/java/org/apache/camel/Routes.java&r1=787997&r2=788067&rev=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/Routes.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java Wed Jun 24 16:06:58 2009
@@ -14,28 +14,21 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.apache.camel;
-import java.util.List;
-
/**
- * Routes defined in the camel context.
+ * A routes builder is capable of building routes using the builder and model classes.
+ * <p/>
+ * Eventually the routes is added to a {@link org.apache.camel.CamelContext} where they
+ * run inside.
*/
-public interface Routes {
+public interface RoutesBuilder {
/**
- * Gets the Camel context used.
+ * Adds the routes from this Route Builder to the CamelContext.
+ *
+ * @param context the Camel context
*/
- CamelContext getContext();
+ void addRoutesToCamelContext(CamelContext context) throws Exception;
- /**
- * Sets the Camel context to use.
- */
- void setContext(CamelContext context);
-
- /**
- * Gets the list of routes currently in the camel context.
- */
- List<Route> getRouteList() throws Exception;
}
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: camel/trunk/camel-core/src/main/java/org/apache/camel/RoutesBuilder.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java Wed Jun 24 16:06:58 2009
@@ -23,7 +23,7 @@
import org.apache.camel.CamelContext;
import org.apache.camel.Endpoint;
import org.apache.camel.Route;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.impl.DefaultCamelContext;
import org.apache.camel.model.InterceptDefinition;
import org.apache.camel.model.InterceptFromDefinition;
@@ -39,7 +39,7 @@
*
* @version $Revision$
*/
-public abstract class RouteBuilder extends BuilderSupport implements Routes {
+public abstract class RouteBuilder extends BuilderSupport implements RoutesBuilder {
private AtomicBoolean initialized = new AtomicBoolean(false);
private RoutesDefinition routeCollection = new RoutesDefinition();
private List<Route> routes = new ArrayList<Route>();
@@ -236,12 +236,9 @@
return context;
}
- /**
- * Uses {@link org.apache.camel.CamelContext#getRoutes()} to return the routes in the context.
- */
- public List<Route> getRouteList() throws Exception {
+ public void addRoutesToCamelContext(CamelContext context) throws Exception {
+ setContext(context);
checkInitialized();
- return routes;
}
@Override
@@ -260,11 +257,11 @@
setErrorHandlerBuilder(camelContext.getErrorHandlerBuilder());
}
configure();
- populateRoutes(routes);
+ populateRoutes();
}
}
- protected void populateRoutes(List<Route> routes) throws Exception {
+ protected void populateRoutes() throws Exception {
CamelContext camelContext = getContext();
if (camelContext == null) {
throw new IllegalArgumentException("CamelContext has not been injected!");
@@ -297,7 +294,7 @@
*
* @throws Exception if the routes could not be created for whatever reason
*/
- protected void addRoutes(Routes routes) throws Exception {
+ protected void addRoutes(RoutesBuilder routes) throws Exception {
getContext().addRoutes(routes);
}
}
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java Wed Jun 24 16:06:58 2009
@@ -38,7 +38,7 @@
import org.apache.camel.ProducerTemplate;
import org.apache.camel.ResolveEndpointFailedException;
import org.apache.camel.Route;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.Service;
import org.apache.camel.ServiceStatus;
@@ -478,25 +478,15 @@
if (routes != null) {
this.routes.addAll(routes);
-/*
- TODO we should have notified the lifecycle strategy via the RouteService
-
- lifecycleStrategy.onRoutesAdd(routes);
- if (shouldStartRoutes()) {
- startRoutes(routes);
- }
-*/
}
}
- public void addRoutes(Routes builder) throws Exception {
- // lets now add the routes from the builder
- builder.setContext(this);
- List<Route> routeList = builder.getRouteList();
+ public void addRoutes(RoutesBuilder builder) throws Exception {
if (LOG.isDebugEnabled()) {
- LOG.debug("Adding routes from: " + builder + " routes: " + routeList);
+ LOG.debug("Adding routes from builder: " + builder);
}
- //addRouteCollection(routeList);
+ // lets now add the routes from the builder
+ builder.addRoutesToCamelContext(this);
}
public void addRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception {
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/RouteService.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/RouteService.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/RouteService.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/RouteService.java Wed Jun 24 16:06:58 2009
@@ -83,7 +83,15 @@
protected void doStop() throws Exception {
camelContext.removeRouteCollection(routes);
- // TODO should we stop the actual Route objects??
+
+ // there is no lifecycyle for routesRemove
+
+ for (Route route : routes) {
+ List<Service> services = route.getServicesForRoute();
+ for (Service service : services) {
+ stopChildService(service);
+ }
+ }
}
protected LifecycleStrategy getLifecycleStrategy() {
@@ -95,4 +103,10 @@
service.start();
addChildService(service);
}
+
+ protected void stopChildService(Service service) throws Exception {
+ service.stop();
+ removeChildService(service);
+ }
+
}
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteBuilderDefinition.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteBuilderDefinition.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteBuilderDefinition.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteBuilderDefinition.java Wed Jun 24 16:06:58 2009
@@ -22,7 +22,7 @@
import javax.xml.bind.annotation.XmlRootElement;
import org.apache.camel.CamelContext;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.util.CamelContextHelper;
import org.apache.camel.util.ObjectHelper;
@@ -64,9 +64,9 @@
return CamelContextHelper.lookup(camelContext, ref, RouteBuilder.class);
}
- public Routes createRoutes(CamelContext camelContext) {
+ public RoutesBuilder createRoutes(CamelContext camelContext) {
ObjectHelper.notNull(camelContext, "camelContext", this);
ObjectHelper.notNull(ref, "ref", this);
- return CamelContextHelper.lookup(camelContext, ref, Routes.class);
+ return CamelContextHelper.lookup(camelContext, ref, RoutesBuilder.class);
}
}
\ No newline at end of file
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/util/ServiceHelper.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ServiceHelper.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/util/ServiceHelper.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/util/ServiceHelper.java Wed Jun 24 16:06:58 2009
@@ -39,6 +39,9 @@
public static void startService(Object value) throws Exception {
if (value instanceof Service) {
Service service = (Service)value;
+ if (LOG.isTraceEnabled()) {
+ LOG.trace("Starting service: " + service);
+ }
service.start();
} else if (value instanceof Collection) {
startServices((Collection)value);
@@ -61,6 +64,9 @@
for (Object value : services) {
if (value instanceof Service) {
Service service = (Service)value;
+ if (LOG.isTraceEnabled()) {
+ LOG.trace("Starting service: " + service);
+ }
service.start();
}
}
@@ -75,6 +81,9 @@
if (value instanceof Service) {
Service service = (Service)value;
try {
+ if (LOG.isTraceEnabled()) {
+ LOG.trace("Stopping service: " + service);
+ }
service.stop();
} catch (Exception e) {
LOG.debug("Caught exception shutting down: " + e, e);
@@ -107,6 +116,9 @@
if (value instanceof Service) {
Service service = (Service)value;
try {
+ if (LOG.isTraceEnabled()) {
+ LOG.trace("Stopping service: " + service);
+ }
service.stop();
} catch (Exception e) {
LOG.debug("Caught exception shutting down: " + e, e);
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java Wed Jun 24 16:06:58 2009
@@ -82,10 +82,10 @@
context.addRoutes(builder);
}
startCamelContext();
+ log.debug("Routing Rules are: " + context.getRoutes());
} else {
- log.debug("Using route builder from the created context: " + context);
+ log.debug("isUseRouteBuilder() is false");
}
- log.debug("Routing Rules are: " + context.getRoutes());
}
@Override
Modified: camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/ProcessBuilder.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/ProcessBuilder.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/ProcessBuilder.java (original)
+++ camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/ProcessBuilder.java Wed Jun 24 16:06:58 2009
@@ -22,7 +22,6 @@
import org.apache.camel.CamelContext;
import org.apache.camel.Endpoint;
import org.apache.camel.Processor;
-import org.apache.camel.Route;
import org.apache.camel.bam.model.ActivityDefinition;
import org.apache.camel.bam.model.ProcessDefinition;
import org.apache.camel.bam.model.ProcessInstance;
@@ -139,7 +138,7 @@
// Implementation methods
// -------------------------------------------------------------------------
- protected void populateRoutes(List<Route> routes) throws Exception {
+ protected void populateRoutes() throws Exception {
// lets add the monitoring service - should there be an easier way??
if (engine == null) {
@@ -155,8 +154,8 @@
for (ActivityBuilder builder : activityBuilders) {
from(builder.getEndpoint()).process(builder.getProcessor());
}
- super.populateRoutes(routes);
+ super.populateRoutes();
}
// Implementation methods
Modified: camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModule.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModule.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModule.java (original)
+++ camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModule.java Wed Jun 24 16:06:58 2009
@@ -20,7 +20,6 @@
import org.apache.camel.Consume;
import org.apache.camel.EndpointInject;
import org.apache.camel.Produce;
-import org.apache.camel.Routes;
import org.apache.camel.guice.impl.ConsumerInjection;
import org.apache.camel.guice.impl.EndpointInjector;
import org.apache.camel.guice.impl.ProduceInjector;
@@ -37,10 +36,10 @@
* Set<Routes> routes(Injector injector) { ... }
* }
* </pre></code>
- * If you wish to bind all of the bound {@link Routes} implementations available - maybe with some filter applied - then
+ * If you wish to bind all of the bound {@link org.apache.camel.RoutesBuilder} implementations available - maybe with some filter applied - then
* please use the {@link org.apache.camel.guice.CamelModuleWithMatchingRoutes}.
* <p>
- * Otherwise if you wish to list all of the classes of the {@link Routes} implementations then use the
+ * Otherwise if you wish to list all of the classes of the {@link org.apache.camel.RoutesBuilder} implementations then use the
* {@link org.apache.camel.guice.CamelModuleWithRouteTypes} module instead.
*
* @version $Revision$
Modified: camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithMatchingRoutes.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithMatchingRoutes.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithMatchingRoutes.java (original)
+++ camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithMatchingRoutes.java Wed Jun 24 16:06:58 2009
@@ -22,15 +22,14 @@
import com.google.inject.Provides;
import com.google.inject.matcher.Matcher;
import com.google.inject.matcher.Matchers;
-
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.guiceyfruit.Injectors;
/**
* A Guice Module which injects the CamelContext with all available implementations
- * of {@link Routes} which are bound to Guice with an optional {@link Matcher} to filter out the classes required.
+ * of {@link org.apache.camel.RoutesBuilder} which are bound to Guice with an optional {@link Matcher} to filter out the classes required.
* <p>
- * Or if you would like to specify exactly which {@link Routes} to bind then use the {@link CamelModule} and create a provider
+ * Or if you would like to specify exactly which {@link org.apache.camel.RoutesBuilder} to bind then use the {@link CamelModule} and create a provider
* method annotated with @Provides and returning Set<Routes> such as
* <code><pre>
* public class MyModule extends CamelModule {
@@ -45,7 +44,7 @@
private final Matcher<Class> matcher;
public CamelModuleWithMatchingRoutes() {
- this(Matchers.subclassesOf(Routes.class));
+ this(Matchers.subclassesOf(RoutesBuilder.class));
}
public CamelModuleWithMatchingRoutes(Matcher<Class> matcher) {
@@ -53,7 +52,7 @@
}
@Provides
- Set<Routes> routes(Injector injector) {
+ Set<RoutesBuilder> routes(Injector injector) {
return Injectors.getInstancesOf(injector, matcher);
}
}
\ No newline at end of file
Modified: camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithRouteTypes.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithRouteTypes.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithRouteTypes.java (original)
+++ camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/CamelModuleWithRouteTypes.java Wed Jun 24 16:06:58 2009
@@ -23,16 +23,15 @@
import com.google.inject.Provides;
import com.google.inject.internal.Sets;
-import org.apache.camel.Routes;
-
+import org.apache.camel.RoutesBuilder;
/**
- * A Guice Module which injects the CamelContext with the specified {@link Routes} types - which are then injected by Guice.
+ * A Guice Module which injects the CamelContext with the specified {@link org.apache.camel.RoutesBuilder} types - which are then injected by Guice.
* <p>
- * If you wish to bind all of the bound {@link Routes} implementations available - maybe with some filter applied - then
+ * If you wish to bind all of the bound {@link org.apache.camel.RoutesBuilder} implementations available - maybe with some filter applied - then
* please use the {@link org.apache.camel.guice.CamelModuleWithMatchingRoutes}.
* <p>
- * Or if you would like to specify exactly which {@link Routes} to bind then use the {@link CamelModule} and create a provider
+ * Or if you would like to specify exactly which {@link org.apache.camel.RoutesBuilder} to bind then use the {@link CamelModule} and create a provider
* method annotated with @Provides and returning Set<Routes> such as
* <code><pre>
* public class MyModule extends CamelModule {
@@ -45,24 +44,24 @@
* @version $Revision$
*/
public class CamelModuleWithRouteTypes extends CamelModule {
- private Set<Class<? extends Routes>> routes;
+ private Set<Class<? extends RoutesBuilder>> routes;
- public CamelModuleWithRouteTypes(Class<? extends Routes>... routeTypes) {
- this.routes = new HashSet<Class<? extends Routes>>();
- for (Class<? extends Routes> route : routeTypes) {
+ public CamelModuleWithRouteTypes(Class<? extends RoutesBuilder>... routeTypes) {
+ this.routes = new HashSet<Class<? extends RoutesBuilder>>();
+ for (Class<? extends RoutesBuilder> route : routeTypes) {
routes.add(route);
}
}
- public CamelModuleWithRouteTypes(Set<Class<? extends Routes>> routes) {
+ public CamelModuleWithRouteTypes(Set<Class<? extends RoutesBuilder>> routes) {
this.routes = routes;
}
@Provides
- Set<Routes> routes(Injector injector) {
- Set<Routes> answer = Sets.newHashSet();
- for (Class<? extends Routes> type : routes) {
- Routes route = injector.getInstance(type);
+ Set<RoutesBuilder> routes(Injector injector) {
+ Set<RoutesBuilder> answer = Sets.newHashSet();
+ for (Class<? extends RoutesBuilder> type : routes) {
+ RoutesBuilder route = injector.getInstance(type);
answer.add(route);
}
return answer;
Modified: camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/GuiceCamelContext.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/GuiceCamelContext.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/GuiceCamelContext.java (original)
+++ camel/trunk/components/camel-guice/src/main/java/org/apache/camel/guice/GuiceCamelContext.java Wed Jun 24 16:06:58 2009
@@ -28,7 +28,7 @@
import com.google.inject.Inject;
import org.apache.camel.Route;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.TypeConverter;
import org.apache.camel.builder.ErrorHandlerBuilder;
@@ -73,9 +73,9 @@
}
@Inject
- public void setRouteBuilders(Set<Routes> routeBuilders) throws Exception {
- for (Routes routeBuilder : routeBuilders) {
- addRoutes(routeBuilder);
+ public void setRouteBuilders(Set<RoutesBuilder> routeBuilders) throws Exception {
+ for (RoutesBuilder builder : routeBuilders) {
+ addRoutes(builder);
}
}
Modified: camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/CollectionOfCustomRoutesTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/CollectionOfCustomRoutesTest.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/CollectionOfCustomRoutesTest.java (original)
+++ camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/CollectionOfCustomRoutesTest.java Wed Jun 24 16:06:58 2009
@@ -19,8 +19,6 @@
import java.util.Collection;
import java.util.List;
-import junit.framework.TestCase;
-
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Provides;
@@ -29,7 +27,7 @@
import org.apache.camel.CamelContext;
import org.apache.camel.Route;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.junit.Assert;
import org.junit.Test;
@@ -41,20 +39,17 @@
public class CollectionOfCustomRoutesTest extends Assert {
public static class MyModule extends CamelModuleWithMatchingRoutes {
-
@Provides
@Named("foo")
- protected Collection<? extends Routes> myRoutes() {
+ protected Collection<? extends RoutesBuilder> myRoutes() {
return Lists.newArrayList(new MyConfigurableRoute2("direct:a", "direct:b"), new MyConfigurableRoute2("direct:c", "direct:d"));
}
}
@Test
public void testDummy() throws Exception {
-
}
-
public void xtestGuice() throws Exception {
Injector injector = Guice.createInjector(new MyModule());
@@ -63,8 +58,6 @@
assertEquals("size of " + list, 2, list.size());
GuiceTest.assertCamelContextRunningThenCloseInjector(injector);
-
}
-
}
\ No newline at end of file
Modified: camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/EndpointInjectionTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/EndpointInjectionTest.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/EndpointInjectionTest.java (original)
+++ camel/trunk/components/camel-guice/src/test/java/org/apache/camel/guice/EndpointInjectionTest.java Wed Jun 24 16:06:58 2009
@@ -18,8 +18,6 @@
import java.util.Collection;
-import junit.framework.TestCase;
-
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Provides;
@@ -27,13 +25,11 @@
import com.google.inject.name.Named;
import org.apache.camel.EndpointInject;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.component.mock.MockEndpoint;
import org.junit.Assert;
import org.junit.Test;
-
-
/**
* Create a collection of routes via a provider method
*
@@ -46,13 +42,12 @@
@Override
protected void configure() {
super.configure();
-
bind(MyBean.class);
}
@Provides
@Named("foo")
- protected Collection<? extends Routes> myRoutes() {
+ protected Collection<? extends RoutesBuilder> myRoutes() {
return Lists.newArrayList(new MyConfigurableRoute2("direct:a", "direct:b"), new MyConfigurableRoute2("direct:c", "direct:d"));
}
}
@@ -71,8 +66,6 @@
assertEquals("bean.endpoint.uri", "mock:foo", bean.endpoint.getEndpointUri());
GuiceTest.assertCamelContextRunningThenCloseInjector(injector);
-
}
-
}
\ No newline at end of file
Modified: camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java (original)
+++ camel/trunk/components/camel-osgi/src/test/java/org/apache/camel/osgi/OsgiPackageScanClassResolverTest.java Wed Jun 24 16:06:58 2009
@@ -20,7 +20,7 @@
import java.util.Set;
import org.apache.camel.Converter;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.osgi.test.MyRouteBuilder;
import org.apache.camel.osgi.test.MyTypeConverter;
import org.junit.Test;
@@ -43,7 +43,7 @@
BundleContext context = getActivator().getBundle().getBundleContext();
OsgiPackageScanClassResolver resolver = new OsgiPackageScanClassResolver(context);
String[] packageNames = {"org.apache.camel.osgi.test"};
- Set<Class> classes = resolver.findImplementations(Routes.class, packageNames);
+ Set<Class> classes = resolver.findImplementations(RoutesBuilder.class, packageNames);
assertEquals("There should find a class", classes.size(), 1);
assertTrue("Find a wrong class", classes.contains(MyRouteBuilder.class));
}
Modified: camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala (original)
+++ camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala Wed Jun 24 16:06:58 2009
@@ -20,7 +20,7 @@
import org.apache.camel.model.DataFormatDefinition;
import org.apache.camel.spi.Policy
import org.apache.camel.processor.aggregate.AggregationStrategy
-import org.apache.camel.Routes
+import org.apache.camel.RoutesBuilder
import collection.mutable.Stack
import _root_.scala.reflect.Manifest
@@ -32,7 +32,7 @@
/**
* Scala RouteBuilder implementation
*/
-class RouteBuilder extends Preamble with DSL with Routes with Languages {
+class RouteBuilder extends Preamble with DSL with RoutesBuilder with Languages {
val builder = new org.apache.camel.builder.RouteBuilder {
override def configure() = {}
@@ -109,9 +109,7 @@
def aggregate(expression: Exchange => Any) = stack.top.aggregate(expression)
// implementing the Routes interface to allow RouteBuilder to be discovered by Spring
- def getRouteList : java.util.List[Route[_ <: org.apache.camel.Exchange]] = builder.getRouteList()
- def getContext = builder.getContext()
- def setContext(context: CamelContext) = builder.setContext(context)
+ def addRoutesToCamelContext(context: CamelContext) = builder.addRoutesToCamelContext(context)
val serialization = new org.apache.camel.model.dataformat.SerializationDataFormat
Modified: camel/trunk/components/camel-spring-javaconfig/src/main/java/org/apache/camel/spring/javaconfig/CamelConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring-javaconfig/src/main/java/org/apache/camel/spring/javaconfig/CamelConfiguration.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-spring-javaconfig/src/main/java/org/apache/camel/spring/javaconfig/CamelConfiguration.java (original)
+++ camel/trunk/components/camel-spring-javaconfig/src/main/java/org/apache/camel/spring/javaconfig/CamelConfiguration.java Wed Jun 24 16:06:58 2009
@@ -19,7 +19,7 @@
import java.util.List;
import org.apache.camel.CamelContext;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.spring.CamelBeanPostProcessor;
import org.apache.camel.spring.SpringCamelContext;
@@ -55,7 +55,7 @@
SpringCamelContext camelContext = new SpringCamelContext();
setupCamelContext(camelContext);
List<RouteBuilder> routes = routes();
- for (Routes route : routes) {
+ for (RoutesBuilder route : routes) {
camelContext.addRoutes(route);
}
return camelContext;
@@ -63,10 +63,8 @@
// maybe register the camel component, language here
public void setupCamelContext(CamelContext camelContext) throws Exception {
-
}
-
/**
* Returns the list of routes to use in this configuration
*/
Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java (original)
+++ camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java Wed Jun 24 16:06:58 2009
@@ -28,7 +28,7 @@
import javax.xml.bind.annotation.XmlTransient;
import org.apache.camel.CamelException;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.ErrorHandlerBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.impl.DefaultLifecycleStrategy;
@@ -140,7 +140,7 @@
@XmlTransient
private RouteBuilder routeBuilder;
@XmlTransient
- private List<Routes> additionalBuilders = new ArrayList<Routes>();
+ private List<RoutesBuilder> additionalBuilders = new ArrayList<RoutesBuilder>();
@XmlTransient
private ApplicationContext applicationContext;
@XmlTransient
@@ -169,7 +169,7 @@
return contextClassLoaderOnStart;
}
- public List<Routes> getAdditionalBuilders() {
+ public List<RoutesBuilder> getAdditionalBuilders() {
return additionalBuilders;
}
@@ -760,7 +760,7 @@
builders.add(builder);
} else {
// support to get the route here
- Routes routes = builderRef.createRoutes(getContext());
+ RoutesBuilder routes = builderRef.createRoutes(getContext());
if (routes != null) {
additionalBuilders.add(routes);
} else {
@@ -773,7 +773,7 @@
}
// install already configured routes
- for (Routes routeBuilder : additionalBuilders) {
+ for (RoutesBuilder routeBuilder : additionalBuilders) {
getContext().addRoutes(routeBuilder);
}
Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/RouteBuilderFinder.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/RouteBuilderFinder.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/RouteBuilderFinder.java (original)
+++ camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/RouteBuilderFinder.java Wed Jun 24 16:06:58 2009
@@ -21,7 +21,7 @@
import java.util.Map;
import java.util.Set;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.spi.PackageScanClassResolver;
import org.apache.commons.logging.Log;
@@ -65,14 +65,14 @@
/**
* Appends all the {@link RouteBuilder} instances that can be found on the classpath
*/
- public void appendBuilders(List<Routes> list) throws IllegalAccessException, InstantiationException {
- Set<Class> classes = resolver.findImplementations(Routes.class, packages);
+ public void appendBuilders(List<RoutesBuilder> list) throws IllegalAccessException, InstantiationException {
+ Set<Class> classes = resolver.findImplementations(RoutesBuilder.class, packages);
for (Class aClass : classes) {
if (shouldIgnoreBean(aClass)) {
continue;
}
if (isValidClass(aClass)) {
- Routes builder = instantiateBuilder(aClass);
+ RoutesBuilder builder = instantiateBuilder(aClass);
if (beanPostProcessor != null) {
// Inject the annotated resource
beanPostProcessor.postProcessBeforeInitialization(builder, builder.toString());
@@ -108,7 +108,7 @@
}
@SuppressWarnings("unchecked")
- protected Routes instantiateBuilder(Class type) throws IllegalAccessException, InstantiationException {
- return (Routes) camelContext.getInjector().newInstance(type);
+ protected RoutesBuilder instantiateBuilder(Class type) throws IllegalAccessException, InstantiationException {
+ return (RoutesBuilder) camelContext.getInjector().newInstance(type);
}
}
Modified: camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/RouteRefCamelContextFactoryBeanTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/RouteRefCamelContextFactoryBeanTest.java?rev=788067&r1=788066&r2=788067&view=diff
==============================================================================
--- camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/RouteRefCamelContextFactoryBeanTest.java (original)
+++ camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/RouteRefCamelContextFactoryBeanTest.java Wed Jun 24 16:06:58 2009
@@ -16,18 +16,15 @@
*/
package org.apache.camel.spring;
-import java.util.List;
-
import org.apache.camel.CamelContext;
-import org.apache.camel.Route;
-import org.apache.camel.Routes;
+import org.apache.camel.RoutesBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.springframework.context.support.AbstractXmlApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class RouteRefCamelContextFactoryBeanTest extends RoutingUsingCamelContextFactoryTest {
- public static class MyRoutes implements Routes {
+ public static class MyRoutes implements RoutesBuilder {
private RouteBuilder myRouteBuilder;
public MyRoutes() {
@@ -39,18 +36,9 @@
};
}
- public CamelContext getContext() {
- return myRouteBuilder.getContext();
- }
-
- public List<Route> getRouteList() throws Exception {
- return myRouteBuilder.getRouteList();
+ public void addRoutesToCamelContext(CamelContext camelContext) throws Exception {
+ camelContext.addRoutes(myRouteBuilder);
}
-
- public void setContext(CamelContext context) {
- myRouteBuilder.setContext(context);
- }
-
}
protected AbstractXmlApplicationContext createApplicationContext() {