This is an automated email from the ASF dual-hosted git repository. lburgazzoli pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit d96c2c85cfa09bb5aec6f3cbcc4af59a2bc95707 Author: lburgazzoli <lburgazz...@gmail.com> AuthorDate: Wed Sep 2 11:24:49 2020 +0200 CAMEL-14672: cleanup component resolution --- .../apache/camel/impl/engine/AbstractCamelContext.java | 18 +++++------------- .../camel/impl/engine/DefaultComponentResolver.java | 7 ------- 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java index 5a6a30f..960a946 100644 --- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java +++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java @@ -611,7 +611,11 @@ public abstract class AbstractCamelContext extends BaseService // See https://issues.apache.org/jira/browse/CAMEL-11225 componentsInCreation.get().add(name); - component = getComponentResolver().resolveComponent(name, getCamelContextReference()); + component = ResolverHelper.lookupComponentInRegistryWithFallback(getCamelContextReference(), name); + if (component == null) { + component = getComponentResolver().resolveComponent(name, getCamelContextReference()); + } + if (component != null) { component.setCamelContext(getCamelContextReference()); component.build(); @@ -640,18 +644,6 @@ public abstract class AbstractCamelContext extends BaseService } } - public Component resolveComponent(String name) { - Component answer = hasComponent(name); - if (answer == null) { - try { - answer = getComponentResolver().resolveComponent(name, this); - } catch (Exception e) { - throw new RuntimeCamelException("Cannot resolve component: " + name, e); - } - } - return answer; - } - // Endpoint Management Methods // ----------------------------------------------------------------------- diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultComponentResolver.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultComponentResolver.java index c4c4371..c46c22d 100644 --- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultComponentResolver.java +++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultComponentResolver.java @@ -24,7 +24,6 @@ import org.apache.camel.ExtendedCamelContext; import org.apache.camel.NoFactoryAvailableException; import org.apache.camel.spi.ComponentResolver; import org.apache.camel.spi.FactoryFinder; -import org.apache.camel.support.ResolverHelper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,12 +42,6 @@ public class DefaultComponentResolver implements ComponentResolver { @Override public Component resolveComponent(String name, CamelContext context) { - // lookup in registry first - Component componentReg = ResolverHelper.lookupComponentInRegistryWithFallback(context, name); - if (componentReg != null) { - return componentReg; - } - // not in registry then use component factory Class<?> type; try {