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-k-runtime.git

commit 8d7322356ba1b0bf038907b6d0a84bf119d1ffaf
Author: Luca Burgazzoli <lburgazz...@gmail.com>
AuthorDate: Mon Dec 14 14:34:47 2020 +0100

    api(SourceLoader): remove dependency on org.apache.camel.k.Runtime
---
 .../main/java/org/apache/camel/k/SourceLoader.java |  9 ++++----
 .../org/apache/camel/k/support/SourcesSupport.java |  2 +-
 .../java/org/apache/camel/k/cron/CronTest.java     |  2 +-
 .../k/loader/groovy/GroovySourceLoader.groovy      |  6 +++---
 .../camel/k/loader/java/JavaSourceLoader.java      | 24 ++++++++++------------
 .../camel/k/loader/js/JavaScriptSourceLoader.java  |  7 +++----
 .../camel/k/loader/kotlin/KotlinSourceLoader.kt    |  6 +++---
 .../apache/camel/k/loader/xml/XmlSourceLoader.java | 14 ++++++-------
 .../camel/k/loader/yaml/YamlSourceLoader.java      |  8 ++++----
 .../camel/k/loader/yaml/support/TestSupport.groovy |  5 ++---
 .../k/quarkus/cron/deployment/Application.java     |  2 +-
 .../camel/k/quarkus/it/webhook/Application.java    |  2 +-
 .../camel/k/loader/support/LoaderSupport.java      |  2 +-
 13 files changed, 43 insertions(+), 46 deletions(-)

diff --git 
a/camel-k-core/api/src/main/java/org/apache/camel/k/SourceLoader.java 
b/camel-k-core/api/src/main/java/org/apache/camel/k/SourceLoader.java
index 602de98..a7c0045 100644
--- a/camel-k-core/api/src/main/java/org/apache/camel/k/SourceLoader.java
+++ b/camel-k-core/api/src/main/java/org/apache/camel/k/SourceLoader.java
@@ -16,8 +16,9 @@
  */
 package org.apache.camel.k;
 
-import java.util.List;
+import java.util.Collection;
 
+import org.apache.camel.CamelContext;
 import org.apache.camel.RoutesBuilder;
 
 public interface SourceLoader {
@@ -26,16 +27,16 @@ public interface SourceLoader {
      *
      * @return the supported languages.
      */
-    List<String> getSupportedLanguages();
+    Collection<String> getSupportedLanguages();
 
     /**
      * Creates a camel {@link RoutesBuilder} from the given resource.
      *
-     * @param runtime the runtime.
+     * @param camelContext the runtime.
      * @param source the source to load.
      * @return the RoutesBuilder.
      */
-    RoutesBuilder load(Runtime runtime, Source source);
+    RoutesBuilder load(CamelContext camelContext, Source source);
 
     /**
      * Define some entry point to intercept the creation fo routes from a 
{@link Source}
diff --git 
a/camel-k-core/support/src/main/java/org/apache/camel/k/support/SourcesSupport.java
 
b/camel-k-core/support/src/main/java/org/apache/camel/k/support/SourcesSupport.java
index 968ff95..34215d4 100644
--- 
a/camel-k-core/support/src/main/java/org/apache/camel/k/support/SourcesSupport.java
+++ 
b/camel-k-core/support/src/main/java/org/apache/camel/k/support/SourcesSupport.java
@@ -100,7 +100,7 @@ public final class SourcesSupport {
                 interceptor.beforeLoad(loader, source);
             }
 
-            RoutesBuilder result = loader.load(runtime, source);
+            RoutesBuilder result = loader.load(runtime.getCamelContext(), 
source);
 
             for (SourceLoader.Interceptor interceptor: interceptors) {
                 result = interceptor.afterLoad(loader, source, result);
diff --git 
a/camel-k-cron/impl/src/test/java/org/apache/camel/k/cron/CronTest.java 
b/camel-k-cron/impl/src/test/java/org/apache/camel/k/cron/CronTest.java
index 1be90e4..83c9d09 100644
--- a/camel-k-cron/impl/src/test/java/org/apache/camel/k/cron/CronTest.java
+++ b/camel-k-cron/impl/src/test/java/org/apache/camel/k/cron/CronTest.java
@@ -53,7 +53,7 @@ public class CronTest {
         RoutesBuilder builder = interceptor.afterLoad(
             loader,
             source,
-            loader.load(runtime, source));
+            loader.load(runtime.getCamelContext(), source));
 
         runtime.getCamelContext().addRoutes(builder);
 
diff --git 
a/camel-k-loader-groovy/impl/src/main/groovy/org/apache/camel/k/loader/groovy/GroovySourceLoader.groovy
 
b/camel-k-loader-groovy/impl/src/main/groovy/org/apache/camel/k/loader/groovy/GroovySourceLoader.groovy
index d5b09aa..a635ab7 100644
--- 
a/camel-k-loader-groovy/impl/src/main/groovy/org/apache/camel/k/loader/groovy/GroovySourceLoader.groovy
+++ 
b/camel-k-loader-groovy/impl/src/main/groovy/org/apache/camel/k/loader/groovy/GroovySourceLoader.groovy
@@ -16,8 +16,8 @@
  */
 package org.apache.camel.k.loader.groovy
 
+import org.apache.camel.CamelContext
 import org.apache.camel.RoutesBuilder
-import org.apache.camel.k.Runtime
 import org.apache.camel.k.Source
 import org.apache.camel.k.SourceLoader
 import org.apache.camel.k.loader.groovy.dsl.IntegrationConfiguration
@@ -27,12 +27,12 @@ import 
org.codehaus.groovy.control.customizers.ImportCustomizer
 
 class GroovySourceLoader implements SourceLoader {
     @Override
-    List<String> getSupportedLanguages() {
+    Collection<String> getSupportedLanguages() {
         return Collections.singletonList('groovy')
     }
 
     @Override
-    RoutesBuilder load(Runtime runtime, Source source) {
+    RoutesBuilder load(CamelContext camelContext, Source source) {
         return RouteBuilders.endpoint(source, { reader, builder ->
             def ic = new ImportCustomizer()
             ic.addStarImports('org.apache.camel')
diff --git 
a/camel-k-loader-java/impl/src/main/java/org/apache/camel/k/loader/java/JavaSourceLoader.java
 
b/camel-k-loader-java/impl/src/main/java/org/apache/camel/k/loader/java/JavaSourceLoader.java
index 5286090..b3e7f8d 100644
--- 
a/camel-k-loader-java/impl/src/main/java/org/apache/camel/k/loader/java/JavaSourceLoader.java
+++ 
b/camel-k-loader-java/impl/src/main/java/org/apache/camel/k/loader/java/JavaSourceLoader.java
@@ -18,14 +18,14 @@ package org.apache.camel.k.loader.java;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.Collection;
 import java.util.Collections;
-import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import org.apache.camel.CamelContext;
 import org.apache.camel.RoutesBuilder;
 import org.apache.camel.k.CompositeClassloader;
-import org.apache.camel.k.Runtime;
 import org.apache.camel.k.Source;
 import org.apache.camel.k.SourceLoader;
 import org.apache.camel.k.annotation.Loader;
@@ -38,13 +38,13 @@ public class JavaSourceLoader implements SourceLoader {
     private static final Pattern PACKAGE_PATTERN = 
Pattern.compile("^\\s*package\\s+([a-zA-Z][\\.\\w]*)\\s*;.*$", 
Pattern.MULTILINE);
 
     @Override
-    public List<String> getSupportedLanguages() {
+    public Collection<String> getSupportedLanguages() {
         return Collections.singletonList("java");
     }
 
     @Override
-    public RoutesBuilder load(Runtime runtime, Source source) {
-        try (InputStream is = 
source.resolveAsInputStream(runtime.getCamelContext())) {
+    public RoutesBuilder load(CamelContext camelContext, Source source) {
+        try (InputStream is = source.resolveAsInputStream(camelContext)) {
             final String content = IOHelper.loadText(is);
             final String name = determineQualifiedName(source, content);
             final Reflect compiled = Reflect.compile(name, content);
@@ -53,7 +53,7 @@ public class JavaSourceLoader implements SourceLoader {
             // The given source may contains additional nested classes which 
are unknown to Camel
             // as they are associated to the ClassLoader used to compile the 
source thus we need
             // to add it to the ApplicationContextClassLoader.
-            final ClassLoader loader = 
runtime.getCamelContext().getApplicationContextClassLoader();
+            final ClassLoader loader = 
camelContext.getApplicationContextClassLoader();
             if (loader instanceof CompositeClassloader) {
                 ((CompositeClassloader) 
loader).addClassLoader(instance.getClass().getClassLoader());
             }
@@ -65,13 +65,11 @@ public class JavaSourceLoader implements SourceLoader {
     }
 
     private static String determineQualifiedName(Source source, String 
content) {
-        String name = StringSupport.substringBefore(source.getName(), ".java");
-        Matcher matcher = PACKAGE_PATTERN.matcher(content);
+        final String name = StringSupport.substringBefore(source.getName(), 
".java");
+        final Matcher matcher = PACKAGE_PATTERN.matcher(content);
 
-        if (matcher.find()) {
-            name = matcher.group(1) + "." + name;
-        }
-
-        return name;
+        return matcher.find()
+            ? matcher.group(1) + "." + name
+            : name;
     }
 }
diff --git 
a/camel-k-loader-js/impl/src/main/java/org/apache/camel/k/loader/js/JavaScriptSourceLoader.java
 
b/camel-k-loader-js/impl/src/main/java/org/apache/camel/k/loader/js/JavaScriptSourceLoader.java
index 031bbb5..bf4fe6f 100644
--- 
a/camel-k-loader-js/impl/src/main/java/org/apache/camel/k/loader/js/JavaScriptSourceLoader.java
+++ 
b/camel-k-loader-js/impl/src/main/java/org/apache/camel/k/loader/js/JavaScriptSourceLoader.java
@@ -17,13 +17,12 @@
 package org.apache.camel.k.loader.js;
 
 import java.io.Reader;
+import java.util.Collection;
 import java.util.Collections;
-import java.util.List;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.RoutesBuilder;
 import org.apache.camel.builder.endpoint.EndpointRouteBuilder;
-import org.apache.camel.k.Runtime;
 import org.apache.camel.k.Source;
 import org.apache.camel.k.SourceLoader;
 import org.apache.camel.k.annotation.Loader;
@@ -40,12 +39,12 @@ public class JavaScriptSourceLoader implements SourceLoader 
{
     private static final String LANGUAGE_ID = "js";
 
     @Override
-    public List<String> getSupportedLanguages() {
+    public Collection<String> getSupportedLanguages() {
         return Collections.singletonList(LANGUAGE_ID);
     }
 
     @Override
-    public RoutesBuilder load(Runtime runtime, Source source) {
+    public RoutesBuilder load(CamelContext camelContext, Source source) {
         return RouteBuilders.endpoint(source, JavaScriptSourceLoader::doLoad);
     }
 
diff --git 
a/camel-k-loader-kotlin/impl/src/main/kotlin/org/apache/camel/k/loader/kotlin/KotlinSourceLoader.kt
 
b/camel-k-loader-kotlin/impl/src/main/kotlin/org/apache/camel/k/loader/kotlin/KotlinSourceLoader.kt
index 4b21c18..2b718f4 100644
--- 
a/camel-k-loader-kotlin/impl/src/main/kotlin/org/apache/camel/k/loader/kotlin/KotlinSourceLoader.kt
+++ 
b/camel-k-loader-kotlin/impl/src/main/kotlin/org/apache/camel/k/loader/kotlin/KotlinSourceLoader.kt
@@ -16,11 +16,11 @@
  */
 package org.apache.camel.k.loader.kotlin
 
+import org.apache.camel.CamelContext
 import org.apache.camel.Experimental
 import org.apache.camel.RoutesBuilder
 import org.apache.camel.RuntimeCamelException
 import org.apache.camel.builder.endpoint.EndpointRouteBuilder
-import org.apache.camel.k.Runtime
 import org.apache.camel.k.Source
 import org.apache.camel.k.SourceLoader
 import org.apache.camel.k.loader.kotlin.dsl.IntegrationConfiguration
@@ -38,11 +38,11 @@ import 
kotlin.script.experimental.jvmhost.createJvmCompilationConfigurationFromT
 
 @Experimental
 class KotlinSourceLoader : SourceLoader {
-    override fun getSupportedLanguages(): List<String> {
+    override fun getSupportedLanguages(): Collection<String>? {
         return listOf("kts")
     }
 
-    override fun load(runtime: Runtime, source: Source): RoutesBuilder {
+    override fun load(camelContext: CamelContext, source: Source): 
RoutesBuilder? {
         return RouteBuilders.endpoint(source) {
             reader, builder -> doLoad(reader, builder)
         }
diff --git 
a/camel-k-loader-xml/impl/src/main/java/org/apache/camel/k/loader/xml/XmlSourceLoader.java
 
b/camel-k-loader-xml/impl/src/main/java/org/apache/camel/k/loader/xml/XmlSourceLoader.java
index eb601f9..18c6479 100644
--- 
a/camel-k-loader-xml/impl/src/main/java/org/apache/camel/k/loader/xml/XmlSourceLoader.java
+++ 
b/camel-k-loader-xml/impl/src/main/java/org/apache/camel/k/loader/xml/XmlSourceLoader.java
@@ -17,13 +17,13 @@
 package org.apache.camel.k.loader.xml;
 
 import java.io.InputStream;
+import java.util.Collection;
 import java.util.Collections;
-import java.util.List;
 
+import org.apache.camel.CamelContext;
 import org.apache.camel.ExtendedCamelContext;
 import org.apache.camel.RoutesBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.k.Runtime;
 import org.apache.camel.k.Source;
 import org.apache.camel.k.SourceLoader;
 import org.apache.camel.k.annotation.Loader;
@@ -39,18 +39,18 @@ public class XmlSourceLoader implements SourceLoader {
     private static final Logger LOGGER = 
LoggerFactory.getLogger(XmlSourceLoader.class);
 
     @Override
-    public List<String> getSupportedLanguages() {
+    public Collection<String> getSupportedLanguages() {
         return Collections.singletonList("xml");
     }
 
     @Override
-    public RoutesBuilder load(Runtime runtime, Source source) {
+    public RoutesBuilder load(CamelContext camelContext, Source source) {
+        final ExtendedCamelContext context = 
camelContext.adapt(ExtendedCamelContext.class);
+        final XMLRoutesDefinitionLoader loader = 
context.getXMLRoutesDefinitionLoader();
+
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                final ExtendedCamelContext context = 
getContext().adapt(ExtendedCamelContext.class);
-                final XMLRoutesDefinitionLoader loader = 
context.getXMLRoutesDefinitionLoader();
-
                 try (InputStream is = 
source.resolveAsInputStream(getContext())) {
                     try {
                         Object result = 
loader.loadRoutesDefinition(getContext(), is);
diff --git 
a/camel-k-loader-yaml/impl/src/main/java/org/apache/camel/k/loader/yaml/YamlSourceLoader.java
 
b/camel-k-loader-yaml/impl/src/main/java/org/apache/camel/k/loader/yaml/YamlSourceLoader.java
index ce014b5..eae3568 100644
--- 
a/camel-k-loader-yaml/impl/src/main/java/org/apache/camel/k/loader/yaml/YamlSourceLoader.java
+++ 
b/camel-k-loader-yaml/impl/src/main/java/org/apache/camel/k/loader/yaml/YamlSourceLoader.java
@@ -16,8 +16,8 @@
  */
 package org.apache.camel.k.loader.yaml;
 
+import java.util.Collection;
 import java.util.Collections;
-import java.util.List;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.databind.DeserializationFeature;
@@ -27,8 +27,8 @@ import com.fasterxml.jackson.databind.PropertyNamingStrategy;
 import com.fasterxml.jackson.databind.SerializationFeature;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
 import com.fasterxml.jackson.dataformat.yaml.YAMLGenerator;
+import org.apache.camel.CamelContext;
 import org.apache.camel.RoutesBuilder;
-import org.apache.camel.k.Runtime;
 import org.apache.camel.k.Source;
 import org.apache.camel.k.SourceLoader;
 import org.apache.camel.k.annotation.Loader;
@@ -59,12 +59,12 @@ public class YamlSourceLoader implements SourceLoader {
     }
 
     @Override
-    public List<String> getSupportedLanguages() {
+    public Collection<String> getSupportedLanguages() {
         return Collections.singletonList("yaml");
     }
 
     @Override
-    public RoutesBuilder load(Runtime runtime, Source source) {
+    public RoutesBuilder load(CamelContext camelContext, Source source) {
         return RouteBuilders.route(source, (reader, builder) -> {
             final StepParser.Resolver resolver = 
StepParser.Resolver.caching(new YamlStepResolver());
 
diff --git 
a/camel-k-loader-yaml/impl/src/test/groovy/org/apache/camel/k/loader/yaml/support/TestSupport.groovy
 
b/camel-k-loader-yaml/impl/src/test/groovy/org/apache/camel/k/loader/yaml/support/TestSupport.groovy
index 5612a6e..0a19076 100644
--- 
a/camel-k-loader-yaml/impl/src/test/groovy/org/apache/camel/k/loader/yaml/support/TestSupport.groovy
+++ 
b/camel-k-loader-yaml/impl/src/test/groovy/org/apache/camel/k/loader/yaml/support/TestSupport.groovy
@@ -23,7 +23,6 @@ import org.apache.camel.FluentProducerTemplate
 import org.apache.camel.builder.RouteBuilder
 import org.apache.camel.component.mock.MockEndpoint
 import org.apache.camel.impl.DefaultCamelContext
-import org.apache.camel.k.Runtime
 import org.apache.camel.k.Source
 import org.apache.camel.k.loader.yaml.YamlSourceLoader
 import org.apache.camel.k.loader.yaml.YamlStepResolver
@@ -76,7 +75,7 @@ class TestSupport extends Specification {
             Source source,
             @DelegatesTo(CamelContext) Closure closure) {
         def context = new DefaultCamelContext()
-        def builder = new YamlSourceLoader().load(Runtime.on(context), source)
+        def builder = new YamlSourceLoader().load(context, source)
 
         assert builder != null
 
@@ -138,7 +137,7 @@ class TestSupport extends Specification {
 
     static def load(CamelContext context, String content) {
         def source = Sources.fromBytes('yaml', 
content.stripMargin().getBytes(StandardCharsets.UTF_8))
-        def builder = new YamlSourceLoader().load(Runtime.on(context), source)
+        def builder = new YamlSourceLoader().load(context, source)
 
         assert builder != null
 
diff --git 
a/itests/camel-k-itests-cron/src/main/java/org/apache/camel/k/quarkus/cron/deployment/Application.java
 
b/itests/camel-k-itests-cron/src/main/java/org/apache/camel/k/quarkus/cron/deployment/Application.java
index 874b320..35ddba3 100644
--- 
a/itests/camel-k-itests-cron/src/main/java/org/apache/camel/k/quarkus/cron/deployment/Application.java
+++ 
b/itests/camel-k-itests-cron/src/main/java/org/apache/camel/k/quarkus/cron/deployment/Application.java
@@ -86,7 +86,7 @@ public class Application {
         RoutesBuilder builder = interceptor.afterLoad(
             loader,
             source,
-            loader.load(rt, source));
+            loader.load(rt.getCamelContext(), source));
 
         try {
             context.addRoutes(builder);
diff --git 
a/itests/camel-k-itests-webhook/src/main/java/org/apache/camel/k/quarkus/it/webhook/Application.java
 
b/itests/camel-k-itests-webhook/src/main/java/org/apache/camel/k/quarkus/it/webhook/Application.java
index 0ca8d24..fa23348 100644
--- 
a/itests/camel-k-itests-webhook/src/main/java/org/apache/camel/k/quarkus/it/webhook/Application.java
+++ 
b/itests/camel-k-itests-webhook/src/main/java/org/apache/camel/k/quarkus/it/webhook/Application.java
@@ -68,7 +68,7 @@ public class Application {
 
         try {
             runtime.getCamelContext().addRoutes(
-                loader.load(org.apache.camel.k.Runtime.on(runtime), source)
+                loader.load(runtime.getCamelContext(), source)
             );
 
             return Response.status(Response.Status.OK).build();
diff --git 
a/support/camel-k-itests-support/camel-k-itests-loader-inspector/src/main/java/org/apache/camel/k/loader/support/LoaderSupport.java
 
b/support/camel-k-itests-support/camel-k-itests-loader-inspector/src/main/java/org/apache/camel/k/loader/support/LoaderSupport.java
index 9642872..6b5578b 100644
--- 
a/support/camel-k-itests-support/camel-k-itests-loader-inspector/src/main/java/org/apache/camel/k/loader/support/LoaderSupport.java
+++ 
b/support/camel-k-itests-support/camel-k-itests-loader-inspector/src/main/java/org/apache/camel/k/loader/support/LoaderSupport.java
@@ -37,7 +37,7 @@ public final class LoaderSupport {
         final SourceLoader loader = 
context.getRegistry().lookupByNameAndType(loaderId, SourceLoader.class);
         final Runtime runtime = Runtime.on(context);
         final Source source = Sources.fromBytes(name, loaderId, null, code);
-        final RoutesBuilder builder = loader.load(Runtime.on(context), source);
+        final RoutesBuilder builder = loader.load(context, source);
 
         runtime.addRoutes(builder);
 

Reply via email to