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 2022/08/03 11:15:08 UTC
[camel] branch main updated: camel-jbang - Hot reload of beans in yaml-dsl
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 06deb217e76 camel-jbang - Hot reload of beans in yaml-dsl
06deb217e76 is described below
commit 06deb217e76fc2f5dce7f7b6ad0568ceb168acbb
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Aug 3 13:14:55 2022 +0200
camel-jbang - Hot reload of beans in yaml-dsl
---
.../org/apache/camel/dsl/yaml/deserializers/BeansDeserializer.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/BeansDeserializer.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/BeansDeserializer.java
index 7432d2f38e7..c29a6fc66d7 100644
--- a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/BeansDeserializer.java
+++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/BeansDeserializer.java
@@ -60,8 +60,11 @@ public class BeansDeserializer extends YamlDeserializerSupport implements Constr
@Override
public void configure(CamelContext camelContext) {
try {
+ // to support hot reloading of beans then we need to unbind old existing first
+ String name = bean.getName();
+ camelContext.getRegistry().unbind(name);
camelContext.getRegistry().bind(
- bean.getName(),
+ name,
bean.newInstance(camelContext));
} catch (Exception e) {
throw new RuntimeException(e);