This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit 6d39724f34f68da07ad4a705e45a189e3f32aeff Author: Claus Ibsen <[email protected]> AuthorDate: Fri Jan 22 16:57:23 2021 +0100 CAMEL-15844: Camel components creating consumer should not do init/start logic in their constructors. --- .../camel/component/ehcache/EhcacheConsumer.java | 24 +++++++++++++--------- .../guava/eventbus/GuavaEventBusEndpoint.java | 4 ++-- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/components/camel-ehcache/src/main/java/org/apache/camel/component/ehcache/EhcacheConsumer.java b/components/camel-ehcache/src/main/java/org/apache/camel/component/ehcache/EhcacheConsumer.java index b7551c5..7bf5f70 100644 --- a/components/camel-ehcache/src/main/java/org/apache/camel/component/ehcache/EhcacheConsumer.java +++ b/components/camel-ehcache/src/main/java/org/apache/camel/component/ehcache/EhcacheConsumer.java @@ -26,15 +26,24 @@ import org.ehcache.event.CacheEventListener; public class EhcacheConsumer extends DefaultConsumer implements CacheEventListener<Object, Object> { private final EhcacheConfiguration configuration; - private final EhcacheManager manager; - private final Cache cache; + private final String cacheName; + private Cache cache; public EhcacheConsumer(EhcacheEndpoint endpoint, String cacheName, EhcacheConfiguration configuration, Processor processor) throws Exception { super(endpoint, processor); - this.configuration = configuration; - this.manager = endpoint.getManager(); + this.cacheName = cacheName; + } + + @Override + public EhcacheEndpoint getEndpoint() { + return (EhcacheEndpoint) super.getEndpoint(); + } + + @Override + protected void doStart() throws Exception { + super.doStart(); Class<?> kt = null; if (configuration.getKeyType() != null) { @@ -44,12 +53,7 @@ public class EhcacheConsumer extends DefaultConsumer implements CacheEventListen if (configuration.getValueType() != null) { vt = getEndpoint().getCamelContext().getClassResolver().resolveClass(configuration.getValueType()); } - this.cache = manager.getCache(cacheName, kt, vt); - } - - @Override - protected void doStart() throws Exception { - super.doStart(); + this.cache = getEndpoint().getManager().getCache(cacheName, kt, vt); this.cache.getRuntimeConfiguration().registerCacheEventListener( this, diff --git a/components/camel-guava-eventbus/src/main/java/org/apache/camel/component/guava/eventbus/GuavaEventBusEndpoint.java b/components/camel-guava-eventbus/src/main/java/org/apache/camel/component/guava/eventbus/GuavaEventBusEndpoint.java index f8b0619..d246eb6 100644 --- a/components/camel-guava-eventbus/src/main/java/org/apache/camel/component/guava/eventbus/GuavaEventBusEndpoint.java +++ b/components/camel-guava-eventbus/src/main/java/org/apache/camel/component/guava/eventbus/GuavaEventBusEndpoint.java @@ -125,8 +125,8 @@ public class GuavaEventBusEndpoint extends DefaultEndpoint implements MultipleCo } @Override - protected void doStart() throws Exception { - super.doStart(); + protected void doInit() throws Exception { + super.doInit(); if (eventBusRef != null && eventBus == null) { eventBus = CamelContextHelper.mandatoryLookup(getCamelContext(), eventBusRef, EventBus.class);
