This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new b8328fef4e9 camel-jbang - Transform to load blueprint and ignore some blueprint stuff b8328fef4e9 is described below commit b8328fef4e9df2cd1ae896f6366eec34dbe64819 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon Oct 2 14:28:25 2023 +0200 camel-jbang - Transform to load blueprint and ignore some blueprint stuff --- .../main/java/org/apache/camel/reifier/ProcessorReifier.java | 4 ++-- .../org/apache/camel/dsl/jbang/core/commands/Transform.java | 1 + .../main/java/org/apache/camel/dsl/xml/io/XmlModelParser.java | 11 +++++++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/ProcessorReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/ProcessorReifier.java index 3901c54006b..886f25f2976 100644 --- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/ProcessorReifier.java +++ b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/ProcessorReifier.java @@ -126,8 +126,6 @@ import org.slf4j.LoggerFactory; public abstract class ProcessorReifier<T extends ProcessorDefinition<?>> extends AbstractReifier { - private static final Logger LOG = LoggerFactory.getLogger(ProcessorReifier.class); - /** * Global option on {@link CamelContext#getGlobalOptions()} that tooling can use to disable all route processors, * which allows to startup Camel without wiring up and initializing all route EIPs that may use custom processors, @@ -136,6 +134,8 @@ public abstract class ProcessorReifier<T extends ProcessorDefinition<?>> extends */ public static final String DISABLE_ALL_PROCESSORS = "DisableAllProcessors"; + private static final Logger LOG = LoggerFactory.getLogger(ProcessorReifier.class); + // for custom reifiers private static final Map<Class<?>, BiFunction<Route, ProcessorDefinition<?>, ProcessorReifier<? extends ProcessorDefinition<?>>>> PROCESSORS = new HashMap<>(0); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Transform.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Transform.java index ec17b149155..4439455a27b 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Transform.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Transform.java @@ -83,6 +83,7 @@ public class Transform extends CamelCommand { main.addInitialProperty("camel.main.dumpRoutesUriAsParameters", "" + uriAsParameters); main.addInitialProperty("camel.main.dumpRoutesOutput", target); main.addInitialProperty("camel.jbang.transform", "true"); + main.addInitialProperty("camel.component.properties.ignoreMissingProperty", "true"); if (ignoreLoadingError) { // turn off bean method validator if ignore loading error main.addInitialProperty("camel.language.bean.validate", "false"); diff --git a/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlModelParser.java b/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlModelParser.java index 1f38c614c02..5fe845c438e 100644 --- a/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlModelParser.java +++ b/dsl/camel-xml-io-dsl/src/main/java/org/apache/camel/dsl/xml/io/XmlModelParser.java @@ -45,7 +45,7 @@ public class XmlModelParser extends ModelParser { @Override protected boolean handleUnexpectedElement(String namespace, String name) throws XmlPullParserException { - if (isWithinCamelContext(namespace, name)) { + if (isWithinCamelContext(namespace, name) || isAriesBlueprint(namespace)) { return true; } return super.handleUnexpectedElement(namespace, name); @@ -53,12 +53,19 @@ public class XmlModelParser extends ModelParser { @Override protected boolean ignoreUnexpectedElement(String namespace, String name) throws XmlPullParserException { - if (isWithinCamelContext(namespace, name)) { + if (isWithinCamelContext(namespace, name) || isAriesBlueprint(namespace)) { return true; } return super.ignoreUnexpectedElement(namespace, name); } + private boolean isAriesBlueprint(String namespace) { + if (namespace != null && namespace.startsWith("http://aries.apache.org/blueprint/")) { + return true; + } + return false; + } + private boolean isWithinCamelContext(String namespace, String name) { // accept embedded <camelContext> inside Spring XML <beans> files or OSGi <blueprint> files, // so we can discover embedded <routes> inside this <camelContext>.