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 2023/02/03 14:08:07 UTC
[camel] branch camel-3.x updated: CAMEL-19004: parse routeConfigurations with XML namespace (#9293)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.x by this push:
new c09d3a54681 CAMEL-19004: parse routeConfigurations with XML namespace (#9293)
c09d3a54681 is described below
commit c09d3a546812d42c176db68c9fe3aa3dcab367e1
Author: Tomáš Turek <tt...@redhat.com>
AuthorDate: Fri Feb 3 15:06:08 2023 +0100
CAMEL-19004: parse routeConfigurations with XML namespace (#9293)
Signed-off-by: Tomas Turek <tt...@redhat.com>
---
.../camel/dsl/xml/io/XmlRoutesBuilderLoader.java | 3 +++
.../dsl/xml/io/XmlRoutesBuilderLoaderTest.java | 21 +++++++++++++++++++++
2 files changed, 24 insertions(+)
diff --git a/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoader.java b/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoader.java
index 5bd01a9af45..6c95443e2ee 100644
--- a/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoader.java
+++ b/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoader.java
@@ -71,6 +71,9 @@ public class XmlRoutesBuilderLoader extends RouteBuilderLoaderSupport {
@Override
public void configuration() throws Exception {
+ new ModelParser(resource, NAMESPACE)
+ .parseRouteConfigurationsDefinition()
+ .ifPresent(this::addConfigurations);
new ModelParser(resource)
.parseRouteConfigurationsDefinition()
.ifPresent(this::addConfigurations);
diff --git a/dsl/camel-xml-io-dsl/src/test/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoaderTest.java b/dsl/camel-xml-io-dsl/src/test/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoaderTest.java
index ff760c23395..a0e6d565631 100644
--- a/dsl/camel-xml-io-dsl/src/test/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoaderTest.java
+++ b/dsl/camel-xml-io-dsl/src/test/java/org/apache/camel/dsl/xml/io/XmlRoutesBuilderLoaderTest.java
@@ -87,4 +87,25 @@ public class XmlRoutesBuilderLoaderTest {
assertFalse(builder.getRouteTemplateCollection().getRouteTemplates().isEmpty());
}
+
+ @Test
+ public void canLoadRouteConfigurations() throws Exception {
+ String content = ""
+ + "<routeConfigurations xmlns=\"http://camel.apache.org/schema/spring\">"
+ + " <routeConfiguration>"
+ + " <onException>"
+ + " <exception>java.lang.Exception</exception>"
+ + " <handled><constant>true</constant></handled>"
+ + " <log message=\"XML WARN: ${exception.message}\"/>"
+ + " </onException>"
+ + " </routeConfiguration>"
+ + "</routeConfigurations>";
+ Resource resource = ResourceHelper.fromString("in-memory.xml", content);
+ RouteBuilder builder = (RouteBuilder) new XmlRoutesBuilderLoader().loadRoutesBuilder(resource);
+ DefaultCamelContext camelContext = new DefaultCamelContext();
+ builder.setCamelContext(camelContext);
+ builder.configuration();
+
+ assertFalse(camelContext.getRouteConfigurationDefinitions().isEmpty());
+ }
}