You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2020/01/20 21:06:11 UTC

[camel-quarkus] 04/04: Do not register languages and dataformats so that they can be used in parallel with conflicting configs

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-quarkus.git

commit a2e1dc2984c484b817299e8cef0ac27ddd2511d2
Author: Peter Palaga <pp...@redhat.com>
AuthorDate: Fri Jan 17 17:47:26 2020 +0100

    Do not register languages and dataformats so that they can be used in parallel with conflicting configs
---
 .../quarkus/core/deployment/BuildProcessor.java    |  8 +++---
 .../camel/quarkus/core/FastCamelContext.java       | 33 +++-------------------
 2 files changed, 8 insertions(+), 33 deletions(-)

diff --git a/extensions/core/deployment/src/main/java/org/apache/camel/quarkus/core/deployment/BuildProcessor.java b/extensions/core/deployment/src/main/java/org/apache/camel/quarkus/core/deployment/BuildProcessor.java
index 63c6e8d..e4c2c46 100644
--- a/extensions/core/deployment/src/main/java/org/apache/camel/quarkus/core/deployment/BuildProcessor.java
+++ b/extensions/core/deployment/src/main/java/org/apache/camel/quarkus/core/deployment/BuildProcessor.java
@@ -133,9 +133,7 @@ class BuildProcessor {
             services.produce(new CamelServicePatternBuildItem(
                     CamelServiceDestination.REGISTRY,
                     true,
-                    "META-INF/services/org/apache/camel/component/*",
-                    "META-INF/services/org/apache/camel/language/*",
-                    "META-INF/services/org/apache/camel/dataformat/*"));
+                    "META-INF/services/org/apache/camel/component/*"));
 
             services.produce(new CamelServicePatternBuildItem(
                     CamelServiceDestination.DISCOVERY,
@@ -143,7 +141,9 @@ class BuildProcessor {
                     "META-INF/services/org/apache/camel/*",
                     "META-INF/services/org/apache/camel/management/*",
                     "META-INF/services/org/apache/camel/model/*",
-                    "META-INF/services/org/apache/camel/configurer/*"));
+                    "META-INF/services/org/apache/camel/configurer/*",
+                    "META-INF/services/org/apache/camel/language/*",
+                    "META-INF/services/org/apache/camel/dataformat/*"));
         }
 
         @BuildStep
diff --git a/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java b/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java
index 8e8ff03..1eb3d3d 100644
--- a/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java
+++ b/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/FastCamelContext.java
@@ -21,10 +21,8 @@ import java.util.Map;
 import java.util.concurrent.ExecutorService;
 
 import org.apache.camel.AsyncProcessor;
-import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.Endpoint;
-import org.apache.camel.NoSuchLanguageException;
 import org.apache.camel.PollingConsumer;
 import org.apache.camel.Processor;
 import org.apache.camel.Producer;
@@ -41,9 +39,11 @@ import org.apache.camel.impl.engine.DefaultBeanIntrospection;
 import org.apache.camel.impl.engine.DefaultCamelBeanPostProcessor;
 import org.apache.camel.impl.engine.DefaultCamelContextNameStrategy;
 import org.apache.camel.impl.engine.DefaultClassResolver;
+import org.apache.camel.impl.engine.DefaultDataFormatResolver;
 import org.apache.camel.impl.engine.DefaultEndpointRegistry;
 import org.apache.camel.impl.engine.DefaultInflightRepository;
 import org.apache.camel.impl.engine.DefaultInjector;
+import org.apache.camel.impl.engine.DefaultLanguageResolver;
 import org.apache.camel.impl.engine.DefaultMessageHistoryFactory;
 import org.apache.camel.impl.engine.DefaultNodeIdFactory;
 import org.apache.camel.impl.engine.DefaultPackageScanClassResolver;
@@ -74,7 +74,6 @@ import org.apache.camel.spi.CamelBeanPostProcessor;
 import org.apache.camel.spi.CamelContextNameStrategy;
 import org.apache.camel.spi.ClassResolver;
 import org.apache.camel.spi.ComponentResolver;
-import org.apache.camel.spi.DataFormat;
 import org.apache.camel.spi.DataFormatResolver;
 import org.apache.camel.spi.EndpointRegistry;
 import org.apache.camel.spi.ExecutorServiceManager;
@@ -82,7 +81,6 @@ import org.apache.camel.spi.FactoryFinderResolver;
 import org.apache.camel.spi.HeadersMapFactory;
 import org.apache.camel.spi.InflightRepository;
 import org.apache.camel.spi.Injector;
-import org.apache.camel.spi.Language;
 import org.apache.camel.spi.LanguageResolver;
 import org.apache.camel.spi.ManagementNameStrategy;
 import org.apache.camel.spi.MessageHistoryFactory;
@@ -174,35 +172,12 @@ public class FastCamelContext extends AbstractCamelContext {
 
     @Override
     protected LanguageResolver createLanguageResolver() {
-        // languages are automatically discovered by build steps so we can reduce the
-        // operations done by the standard resolver by looking them up directly from the
-        // registry
-        return (name, context) -> {
-            Language answer = context.getRegistry().lookupByNameAndType(name, Language.class);
-            if (answer == null) {
-                throw new NoSuchLanguageException(name);
-            }
-
-            return answer;
-        };
+        return new DefaultLanguageResolver();
     }
 
     @Override
     protected DataFormatResolver createDataFormatResolver() {
-        return new DataFormatResolver() {
-            @Override
-            public DataFormat resolveDataFormat(String name, CamelContext context) {
-                return createDataFormat(name, context);
-            }
-
-            @Override
-            public DataFormat createDataFormat(String name, CamelContext context) {
-                // data formats are automatically discovered by build steps so we can reduce the
-                // operations done by the standard resolver by looking them up directly from the
-                // registry
-                return context.getRegistry().lookupByNameAndType(name, DataFormat.class);
-            }
-        };
+        return new DefaultDataFormatResolver();
     }
 
     @Override