You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2017/02/06 17:16:23 UTC
camel git commit: CAMEL-10682: AbstractCamelContextFactorybean : add
specific methods for servicecall/hystrix configuration
Repository: camel
Updated Branches:
refs/heads/master da3e2ea7d -> 40e177b50
CAMEL-10682: AbstractCamelContextFactorybean : add specific methods for servicecall/hystrix configuration
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/40e177b5
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/40e177b5
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/40e177b5
Branch: refs/heads/master
Commit: 40e177b504f7bf7c289d2dabfc7d4178ca68c674
Parents: da3e2ea
Author: lburgazzoli <lb...@gmail.com>
Authored: Mon Feb 6 18:15:36 2017 +0100
Committer: lburgazzoli <lb...@gmail.com>
Committed: Mon Feb 6 18:15:36 2017 +0100
----------------------------------------------------------------------
.../blueprint/CamelContextFactoryBean.java | 27 ++++++++++++++--
.../camel/cdi/xml/CamelContextFactoryBean.java | 29 +++++++++++++++--
.../xml/AbstractCamelContextFactoryBean.java | 15 ++++-----
.../camel/spring/CamelContextFactoryBean.java | 33 ++++++++++++++++++--
.../spring/handler/CamelNamespaceHandler.java | 2 ++
5 files changed, 90 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/40e177b5/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java
index cf8a9e1..717665a 100644
--- a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java
+++ b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java
@@ -155,10 +155,12 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Blu
@XmlElement(name = "errorHandler", type = CamelErrorHandlerFactoryBean.class)})
private List<AbstractCamelFactoryBean<?>> beansFactory;
@XmlElements({
- @XmlElement(name = "export", type = CamelServiceExporterDefinition.class),
- @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class),
- @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)})
+ @XmlElement(name = "export", type = CamelServiceExporterDefinition.class) })
private List<?> beans;
+ @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class)
+ private List<ServiceCallConfigurationDefinition> serviceCallConfigurations;
+ @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)
+ private List<HystrixConfigurationDefinition> hystrixConfigurations;
@XmlElement(name = "routeBuilder")
private List<RouteBuilderDefinition> builderRefs = new ArrayList<RouteBuilderDefinition>();
@XmlElement(name = "routeContextRef")
@@ -626,6 +628,7 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Blu
this.camelStreamCachingStrategy = camelStreamCachingStrategy;
}
+ @Override
public List<AbstractCamelFactoryBean<?>> getBeansFactory() {
return beansFactory;
}
@@ -643,6 +646,24 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Blu
this.beans = beans;
}
+ @Override
+ public List<ServiceCallConfigurationDefinition> getServiceCallConfigurations() {
+ return serviceCallConfigurations;
+ }
+
+ public void setServiceCallConfigurations(List<ServiceCallConfigurationDefinition> serviceCallConfigurations) {
+ this.serviceCallConfigurations = serviceCallConfigurations;
+ }
+
+ @Override
+ public List<HystrixConfigurationDefinition> getHystrixConfigurations() {
+ return hystrixConfigurations;
+ }
+
+ public void setHystrixConfigurations(List<HystrixConfigurationDefinition> hystrixConfigurations) {
+ this.hystrixConfigurations = hystrixConfigurations;
+ }
+
public List<RouteBuilderDefinition> getBuilderRefs() {
return builderRefs;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/40e177b5/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java b/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
index 455f091..d5336ed 100644
--- a/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
+++ b/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
@@ -169,11 +169,15 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Def
})
private List<AbstractCamelFactoryBean<?>> beansFactory;
- @XmlElements({
- @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class),
- @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)})
+ @XmlTransient
private List<?> beans;
+ @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class)
+ private List<ServiceCallConfigurationDefinition> serviceCallConfigurations;
+
+ @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)
+ private List<HystrixConfigurationDefinition> hystrixConfigurations;
+
@XmlElement(name = "errorHandler", type = ErrorHandlerDefinition.class)
private List<ErrorHandlerDefinition> errorHandlers;
@@ -314,6 +318,7 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Def
return context;
}
+ @Override
public List<AbstractCamelFactoryBean<?>> getBeansFactory() {
return beansFactory;
}
@@ -331,6 +336,24 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Def
this.beans = beans;
}
+ @Override
+ public List<ServiceCallConfigurationDefinition> getServiceCallConfigurations() {
+ return serviceCallConfigurations;
+ }
+
+ public void setServiceCallConfigurations(List<ServiceCallConfigurationDefinition> serviceCallConfigurations) {
+ this.serviceCallConfigurations = serviceCallConfigurations;
+ }
+
+ @Override
+ public List<HystrixConfigurationDefinition> getHystrixConfigurations() {
+ return hystrixConfigurations;
+ }
+
+ public void setHystrixConfigurations(List<HystrixConfigurationDefinition> hystrixConfigurations) {
+ this.hystrixConfigurations = hystrixConfigurations;
+ }
+
public List<RouteDefinition> getRoutes() {
return routes;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/40e177b5/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
index e2c1892..0c2c8b9 100644
--- a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
+++ b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
@@ -52,6 +52,7 @@ import org.apache.camel.management.ManagedManagementStrategy;
import org.apache.camel.model.ContextScanDefinition;
import org.apache.camel.model.FromDefinition;
import org.apache.camel.model.GlobalOptionsDefinition;
+import org.apache.camel.model.HystrixConfigurationDefinition;
import org.apache.camel.model.IdentifiedType;
import org.apache.camel.model.InterceptDefinition;
import org.apache.camel.model.InterceptFromDefinition;
@@ -791,6 +792,10 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
public abstract List<?> getBeans();
+ public abstract List<HystrixConfigurationDefinition> getHystrixConfigurations();
+
+ public abstract List<ServiceCallConfigurationDefinition> getServiceCallConfigurations();
+
// Implementation methods
// -------------------------------------------------------------------------
@@ -867,13 +872,9 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
if (getRestConfiguration() != null) {
ctx.setRestConfiguration(getRestConfiguration().asRestConfiguration(ctx));
}
- if (getBeans() != null) {
- for (Object bean : getBeans()) {
- if (bean instanceof ServiceCallConfigurationDefinition) {
- @SuppressWarnings("unchecked")
- ServiceCallConfigurationDefinition configuration = (ServiceCallConfigurationDefinition)bean;
- ctx.addServiceCallConfiguration(configuration.getId(), configuration);
- }
+ if (getServiceCallConfigurations() != null) {
+ for (ServiceCallConfigurationDefinition bean : getServiceCallConfigurations()) {
+ ctx.addServiceCallConfiguration(bean.getId(), bean);
}
}
}
http://git-wip-us.apache.org/repos/asf/camel/blob/40e177b5/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
index a05b4f0..6c2f2d0 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
@@ -164,10 +164,12 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Spr
@XmlElements({
@XmlElement(name = "proxy", type = CamelProxyFactoryDefinition.class),
@XmlElement(name = "export", type = CamelServiceExporterDefinition.class),
- @XmlElement(name = "errorHandler", type = ErrorHandlerDefinition.class),
- @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class),
- @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)})
+ @XmlElement(name = "errorHandler", type = ErrorHandlerDefinition.class) })
private List<?> beans;
+ @XmlElement(name = "serviceCallConfiguration", type = ServiceCallConfigurationDefinition.class)
+ private List<ServiceCallConfigurationDefinition> serviceCallConfigurations;
+ @XmlElement(name = "hystrixConfiguration", type = HystrixConfigurationDefinition.class)
+ private List<HystrixConfigurationDefinition> hystrixConfigurations;
@XmlElement(name = "routeBuilder")
private List<RouteBuilderDefinition> builderRefs = new ArrayList<RouteBuilderDefinition>();
@XmlElement(name = "routeContextRef")
@@ -912,6 +914,7 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Spr
this.redeliveryPolicies = redeliveryPolicies;
}
+ @Override
public List<AbstractCamelFactoryBean<?>> getBeansFactory() {
return beansFactory;
}
@@ -935,6 +938,30 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Spr
this.beans = beans;
}
+ @Override
+ public List<ServiceCallConfigurationDefinition> getServiceCallConfigurations() {
+ return serviceCallConfigurations;
+ }
+
+ /**
+ * ServiceCall configurations
+ */
+ public void setServiceCallConfigurations(List<ServiceCallConfigurationDefinition> serviceCallConfigurations) {
+ this.serviceCallConfigurations = serviceCallConfigurations;
+ }
+
+ @Override
+ public List<HystrixConfigurationDefinition> getHystrixConfigurations() {
+ return hystrixConfigurations;
+ }
+
+ /**
+ * hystrix configurations
+ */
+ public void setHystrixConfigurations(List<HystrixConfigurationDefinition> hystrixConfigurations) {
+ this.hystrixConfigurations = hystrixConfigurations;
+ }
+
/**
* Configuration of error handlers that triggers on exceptions thrown.
*/
http://git-wip-us.apache.org/repos/asf/camel/blob/40e177b5/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java b/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
index ff17b4d..e0ef322 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
@@ -402,6 +402,8 @@ public class CamelNamespaceHandler extends NamespaceHandlerSupport {
builder.addPropertyValue("threadPoolProfiles", factoryBean.getThreadPoolProfiles());
builder.addPropertyValue("beansFactory", factoryBean.getBeansFactory());
builder.addPropertyValue("beans", factoryBean.getBeans());
+ builder.addPropertyValue("serviceCallConfigurations", factoryBean.getServiceCallConfigurations());
+ builder.addPropertyValue("hystrixConfigurations", factoryBean.getHystrixConfigurations());
// add any depends-on
addDependsOn(factoryBean, builder);
}