Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
3.11.0
-
None
-
Unknown
Description
The MainBootstrapCloseable clears and sets to null initial properties, override properties wildcard properties and main configuration properties on bootstrap of Camel context. Adding a route that depends on those properties after bootstrap is therefore no longer possible.
The value MainBootstrapCloseable has in static route configurations is at odds in dynamic route configurations.
Example (obviously not production code):
final Main main = new Main();main.addInitialProperty("prop", "value"); try (MainConfigurationProperties conf = main.configure()) { conf.addRoutesBuilder(new RouteBuilder() { @Override public void configure() throws Exception { from("timer:one").log("{{prop}}").process(e -> e.getContext().addRoutes(new RouteBuilder() { @Override public void configure() throws Exception { from("timer:two").log("{{prop}}"); } })); } }); main.run(); }
Should the MainBootstrapCloseable be removed, or should the properties component be configured to incorporate these properties?