This is an automated email from the ASF dual-hosted git repository. jiriondrusek pushed a commit to branch camel-main in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit 3a074ca0cabfc2ae538c5eb2fd11b9ed76a6a0f6 Author: James Netherton <jamesnether...@gmail.com> AuthorDate: Wed Sep 18 08:15:24 2024 +0100 Upgrade Camel to 4.9.0 --- catalog/pom.xml | 26 --- docs/antora.yml | 8 +- docs/modules/ROOT/examples/components/jms.yml | 2 +- docs/modules/ROOT/examples/others/kotlin-dsl.yml | 13 -- docs/modules/ROOT/nav.adoc | 2 - .../ROOT/pages/reference/extensions/jms.adoc | 4 +- .../pages/reference/extensions/kotlin-dsl.adoc | 45 ----- .../ROOT/pages/reference/extensions/kotlin.adoc | 39 ---- .../main/resources/META-INF/quarkus-extension.yaml | 2 +- extensions/kotlin-dsl/deployment/pom.xml | 69 ------- .../dsl/kotlin/deployment/KotlinDslProcessor.java | 210 --------------------- extensions/kotlin-dsl/pom.xml | 37 ---- extensions/kotlin-dsl/runtime/pom.xml | 83 -------- .../quarkus/dsl/kotlin/runtime/Configurer.java | 30 --- .../graal/SubstituteKotlinRoutesBuilderLoader.java | 33 ---- .../main/resources/META-INF/quarkus-extension.yaml | 34 ---- extensions/kotlin/deployment/pom.xml | 63 ------- .../quarkus/kotlin/deployment/KotlinFeature.java | 29 --- extensions/kotlin/pom.xml | 39 ---- extensions/kotlin/runtime/pom.xml | 95 ---------- .../org/apache/camel/quarkus/kotlin/RoutesDSL.kt | 42 ----- .../main/resources/META-INF/quarkus-extension.yaml | 34 ---- extensions/pom.xml | 2 - .../org/apache/camel/component/qute/qute.json | 1 + integration-tests/kotlin-dsl/pom.xml | 200 -------------------- .../quarkus/dsl/kotlin/KotlinDslResource.java | 100 ---------- .../src/main/resources/application.properties | 22 --- .../src/main/resources/routes/my-routes.kts | 19 -- .../routes-with-components-configuration.kts | 43 ----- .../routes-with-dataformats-configuration.kts | 37 ---- .../resources/routes/routes-with-endpoint-dsl.kts | 23 --- .../resources/routes/routes-with-error-handler.kts | 27 --- .../routes/routes-with-languages-configuration.kts | 33 ---- .../src/main/resources/routes/routes-with-rest.kts | 50 ----- .../src/main/resources/routes/routes.kts | 23 --- .../camel/quarkus/dsl/kotlin/KotlinDslIT.java | 24 --- .../camel/quarkus/dsl/kotlin/KotlinDslTest.java | 80 -------- integration-tests/kotlin/pom.xml | 210 --------------------- .../apache/camel/quarkus/kotlin/KotlinResource.kt | 48 ----- .../apache/camel/quarkus/kotlin/KotlinRoutes.kt | 39 ---- .../org/apache/camel/quarkus/kotlin/KotlinIT.kt | 22 --- .../org/apache/camel/quarkus/kotlin/KotlinTest.kt | 39 ---- integration-tests/pom.xml | 2 - pom.xml | 14 +- poms/bom/pom.xml | 40 ---- .../quarkus/maven/UpdateExtensionDocPageMojo.java | 4 - tooling/scripts/test-categories.yaml | 2 - 47 files changed, 16 insertions(+), 2027 deletions(-) diff --git a/catalog/pom.xml b/catalog/pom.xml index cff330977d..f497252abc 100644 --- a/catalog/pom.xml +++ b/catalog/pom.xml @@ -2385,32 +2385,6 @@ </exclusion> </exclusions> </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> <dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-kubernetes</artifactId> diff --git a/docs/antora.yml b/docs/antora.yml index a302870a12..1dd580b609 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -28,18 +28,18 @@ asciidoc: requires: "'util=camel-website-util,quarkus=xref:js/quarkus.js'" # Project versions - camel-version: 4.8.1 # replace ${camel.version} - camel-docs-version: 4.8.x + camel-version: 4.9.0-SNAPSHOT # replace ${camel.version} + camel-docs-version: next camel-quarkus-version: 3.16.0 # replace ${camel-quarkus.version} quarkus-version: 3.16.0 # replace ${quarkus.version} graalvm-version: 23.1.2 # replace ${graalvm.version} graalvm-docs-version: jdk21 # replace ${graalvm-docs.version} - mapstruct-version: 1.6.0 # replace ${mapstruct.version} + mapstruct-version: 1.6.2 # replace ${mapstruct.version} min-maven-version: 3.8.2 # replace ${min-maven-version} target-maven-version: 3.9.9 # replace ${target-maven-version} # Attributes used in xrefs to other Antora components - cq-camel-components: components + cq-camel-components: next@components doc-link-icon-lock: "icon:lock" quarkus-examples-version: latest diff --git a/docs/modules/ROOT/examples/components/jms.yml b/docs/modules/ROOT/examples/components/jms.yml index d80cb8d247..58b6396f66 100644 --- a/docs/modules/ROOT/examples/components/jms.yml +++ b/docs/modules/ROOT/examples/components/jms.yml @@ -9,5 +9,5 @@ cqJvmSince: 1.0.0 cqNativeSince: 1.0.0 cqCamelPartName: jms cqCamelPartTitle: JMS -cqCamelPartDescription: Sent and receive messages to/from a JMS Queue or Topic. +cqCamelPartDescription: Send and receive messages to/from JMS message brokers. cqExtensionPageTitle: JMS diff --git a/docs/modules/ROOT/examples/others/kotlin-dsl.yml b/docs/modules/ROOT/examples/others/kotlin-dsl.yml deleted file mode 100644 index 3c4453bd19..0000000000 --- a/docs/modules/ROOT/examples/others/kotlin-dsl.yml +++ /dev/null @@ -1,13 +0,0 @@ -# Do not edit directly! -# This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page -cqArtifactId: camel-quarkus-kotlin-dsl -cqArtifactIdBase: kotlin-dsl -cqNativeSupported: true -cqStatus: Stable -cqDeprecated: true -cqJvmSince: 1.8.0 -cqNativeSince: 2.16.0 -cqCamelPartName: kotlin-dsl -cqCamelPartTitle: Kotlin DSL -cqCamelPartDescription: Camel DSL with Kotlin (deprecated) -cqExtensionPageTitle: Kotlin DSL diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc index 7ba1f002c8..000726f49a 100644 --- a/docs/modules/ROOT/nav.adoc +++ b/docs/modules/ROOT/nav.adoc @@ -191,8 +191,6 @@ *** xref:reference/extensions/knative.adoc[Knative] *** xref:reference/extensions/knative-consumer.adoc[Knative Consumer] *** xref:reference/extensions/knative-producer.adoc[Knative Producer] -*** xref:reference/extensions/kotlin.adoc[Kotlin] -*** xref:reference/extensions/kotlin-dsl.adoc[Kotlin DSL] *** xref:reference/extensions/kubernetes.adoc[Kubernetes] *** xref:reference/extensions/kubernetes-cluster-service.adoc[Kubernetes Cluster Service] *** xref:reference/extensions/kudu.adoc[Kudu] diff --git a/docs/modules/ROOT/pages/reference/extensions/jms.adoc b/docs/modules/ROOT/pages/reference/extensions/jms.adoc index 07be4a5d4e..580b821ce4 100644 --- a/docs/modules/ROOT/pages/reference/extensions/jms.adoc +++ b/docs/modules/ROOT/pages/reference/extensions/jms.adoc @@ -8,7 +8,7 @@ :cq-native-supported: true :cq-status: Stable :cq-status-deprecation: Stable -:cq-description: Sent and receive messages to/from a JMS Queue or Topic. +:cq-description: Send and receive messages to/from JMS message brokers. :cq-deprecated: false :cq-jvm-since: 1.0.0 :cq-native-since: 1.0.0 @@ -18,7 +18,7 @@ ifeval::[{doc-show-badges} == true] [.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0## endif::[] -Sent and receive messages to/from a JMS Queue or Topic. +Send and receive messages to/from JMS message brokers. [id="extensions-jms-whats-inside"] == What's inside diff --git a/docs/modules/ROOT/pages/reference/extensions/kotlin-dsl.adoc b/docs/modules/ROOT/pages/reference/extensions/kotlin-dsl.adoc deleted file mode 100644 index 6995a51fc2..0000000000 --- a/docs/modules/ROOT/pages/reference/extensions/kotlin-dsl.adoc +++ /dev/null @@ -1,45 +0,0 @@ -// Do not edit directly! -// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page -[id="extensions-kotlin-dsl"] -= Kotlin DSL -:linkattrs: -:cq-artifact-id: camel-quarkus-kotlin-dsl -:cq-native-supported: true -:cq-status: Stable -:cq-status-deprecation: Stable Deprecated -:cq-description: Support for parsing Kotlin route definitions at runtime -:cq-deprecated: true -:cq-jvm-since: 1.8.0 -:cq-native-since: 2.16.0 - -ifeval::[{doc-show-badges} == true] -[.badges] -[.badge-key]##JVM since##[.badge-supported]##1.8.0## [.badge-key]##Native since##[.badge-supported]##2.16.0## [.badge-key]##⚠️##[.badge-unsupported]##Deprecated## -endif::[] - -Support for parsing Kotlin route definitions at runtime - -[id="extensions-kotlin-dsl-whats-inside"] -== What's inside - -* [Kotlin DSL] - -Please refer to the above link for usage and configuration details. - -[id="extensions-kotlin-dsl-maven-coordinates"] -== Maven coordinates - -https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-kotlin-dsl[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"] - -Or add the coordinates to your existing project: - -[source,xml] ----- -<dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl</artifactId> -</dependency> ----- -ifeval::[{doc-show-user-guide-link} == true] -Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications. -endif::[] diff --git a/docs/modules/ROOT/pages/reference/extensions/kotlin.adoc b/docs/modules/ROOT/pages/reference/extensions/kotlin.adoc deleted file mode 100644 index 66b25bc0ba..0000000000 --- a/docs/modules/ROOT/pages/reference/extensions/kotlin.adoc +++ /dev/null @@ -1,39 +0,0 @@ -// Do not edit directly! -// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page -[id="extensions-kotlin"] -= Kotlin -:page-aliases: extensions/kotlin.adoc -:linkattrs: -:cq-artifact-id: camel-quarkus-kotlin -:cq-native-supported: true -:cq-status: Stable -:cq-status-deprecation: Stable Deprecated -:cq-description: Write Camel integration routes in Kotlin -:cq-deprecated: true -:cq-jvm-since: 1.0.0 -:cq-native-since: 1.0.0 - -ifeval::[{doc-show-badges} == true] -[.badges] -[.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0## [.badge-key]##⚠️##[.badge-unsupported]##Deprecated## -endif::[] - -Write Camel integration routes in Kotlin - -[id="extensions-kotlin-maven-coordinates"] -== Maven coordinates - -https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-kotlin[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"] - -Or add the coordinates to your existing project: - -[source,xml] ----- -<dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin</artifactId> -</dependency> ----- -ifeval::[{doc-show-user-guide-link} == true] -Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications. -endif::[] diff --git a/extensions/jms/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/jms/runtime/src/main/resources/META-INF/quarkus-extension.yaml index e14730b725..35672d374b 100644 --- a/extensions/jms/runtime/src/main/resources/META-INF/quarkus-extension.yaml +++ b/extensions/jms/runtime/src/main/resources/META-INF/quarkus-extension.yaml @@ -22,7 +22,7 @@ # --- name: "Camel JMS" -description: "Sent and receive messages to/from a JMS Queue or Topic" +description: "Send and receive messages to/from JMS message brokers" metadata: icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg" sponsor: "Apache Software Foundation" diff --git a/extensions/kotlin-dsl/deployment/pom.xml b/extensions/kotlin-dsl/deployment/pom.xml deleted file mode 100644 index b45be21106..0000000000 --- a/extensions/kotlin-dsl/deployment/pom.xml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl-parent</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - - <artifactId>camel-quarkus-kotlin-dsl-deployment</artifactId> - <name>Camel Quarkus :: Kotlin DSL :: Deployment</name> - - <dependencies> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-kotlin-deployment</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-core-deployment</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-support-dsl-deployment</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl</artifactId> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <annotationProcessorPaths> - <path> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-extension-processor</artifactId> - <version>${quarkus.version}</version> - </path> - </annotationProcessorPaths> - </configuration> - </plugin> - </plugins> - </build> - -</project> diff --git a/extensions/kotlin-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/kotlin/deployment/KotlinDslProcessor.java b/extensions/kotlin-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/kotlin/deployment/KotlinDslProcessor.java deleted file mode 100644 index 7f1575c5df..0000000000 --- a/extensions/kotlin-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/kotlin/deployment/KotlinDslProcessor.java +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.camel.quarkus.dsl.kotlin.deployment; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -import io.quarkus.deployment.annotations.BuildProducer; -import io.quarkus.deployment.annotations.BuildStep; -import io.quarkus.deployment.builditem.FeatureBuildItem; -import io.quarkus.deployment.builditem.GeneratedClassBuildItem; -import io.quarkus.deployment.builditem.GeneratedResourceBuildItem; -import io.quarkus.deployment.builditem.nativeimage.ExcludeConfigBuildItem; -import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem; -import io.quarkus.deployment.dev.CompilationProvider; -import io.quarkus.deployment.pkg.builditem.BuildSystemTargetBuildItem; -import io.quarkus.deployment.pkg.builditem.CurateOutcomeBuildItem; -import io.quarkus.deployment.pkg.steps.NativeOrNativeSourcesBuild; -import io.quarkus.kotlin.deployment.KotlinCompilationProvider; -import io.quarkus.maven.dependency.ResolvedDependency; -import io.quarkus.paths.PathCollection; -import org.apache.camel.dsl.kotlin.KotlinConstantsKt; -import org.apache.camel.quarkus.core.deployment.main.CamelMainHelper; -import org.apache.camel.quarkus.dsl.kotlin.runtime.Configurer; -import org.apache.camel.quarkus.support.dsl.deployment.DslGeneratedClassBuildItem; -import org.apache.camel.quarkus.support.dsl.deployment.DslSupportProcessor; -import org.apache.camel.spi.Resource; -import org.apache.camel.util.IOHelper; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import static org.apache.camel.quarkus.support.dsl.deployment.DslSupportProcessor.CLASS_EXT; -import static org.apache.camel.quarkus.support.dsl.deployment.DslSupportProcessor.determineName; -import static org.apache.camel.quarkus.support.dsl.deployment.DslSupportProcessor.extractImports; - -class KotlinDslProcessor { - - private static final Logger LOG = LoggerFactory.getLogger(KotlinDslProcessor.class); - private static final String PACKAGE_NAME = "org.apache.camel.quarkus.dsl.kotlin.generated"; - private static final String FILE_FORMAT = "package %s\n" + - "%s\n" + - "class %s(builder: org.apache.camel.builder.endpoint.EndpointRouteBuilder) :\n" + - " %s(builder) { \n" + - " override fun configure() { \n" + - " %s\n" + - " }\n" + - "}"; - private static final String FEATURE = "camel-kotlin-dsl"; - - @BuildStep - FeatureBuildItem feature() { - return new FeatureBuildItem(FEATURE); - } - - @BuildStep - void excludeJLineNativeImageConfigs(BuildProducer<ExcludeConfigBuildItem> nativeImageExclusions) { - // Exclude various jline native-image.properties, as the required native-image configuration files - // are not shaded into org.jetbrains.kotlin:kotlin-compiler-embeddable. - // See: https://github.com/apache/camel-quarkus/issues/6147 - String nativeResourceTemplate = "/META-INF/native-image/org\\.jline/jline-terminal%s/native-image\\.properties"; - Stream.of("", "-jansi", "-jna", "-jni") - .forEach(module -> { - nativeImageExclusions.produce(new ExcludeConfigBuildItem(".*kotlin-compiler-embeddable.*", - nativeResourceTemplate.formatted(module))); - }); - } - - @BuildStep(onlyIf = NativeOrNativeSourcesBuild.class) - void compileScriptsAOT(BuildProducer<GeneratedClassBuildItem> generatedClass, - BuildProducer<GeneratedResourceBuildItem> generatedResource, - BuildProducer<ReflectiveClassBuildItem> reflectiveClass, - BuildProducer<DslGeneratedClassBuildItem> generatedKotlinClass, - BuildSystemTargetBuildItem buildSystemTargetBuildItem, - CurateOutcomeBuildItem curateOutcomeBuildItem) throws Exception { - LOG.debug("Loading .kts resources"); - final Path projectDir = Paths.get(".").toAbsolutePath().normalize(); - Path outputDirectory = buildSystemTargetBuildItem.getOutputDirectory(); - final Path generatedSourceDir = outputDirectory.resolve("kotlin-dsl/generated-sources"); - Files.createDirectories(generatedSourceDir); - final Path generatedSourceHomeDir = generatedSourceDir.resolve(PACKAGE_NAME.replace('.', File.separatorChar)); - Files.createDirectories(generatedSourceHomeDir); - Map<String, Resource> nameToResource = new HashMap<>(); - Set<File> filesToCompile = new HashSet<>(); - CamelMainHelper.forEachMatchingResource( - resource -> { - if (!resource.getLocation().endsWith(".kts")) { - return; - } - String name = determineName(resource); - try (InputStream is = resource.getInputStream()) { - String content = toKotlinClass(name, IOHelper.loadText(is)); - LOG.debug("Generated Kotlin source content:\n {}", content); - final Path sourceFile = generatedSourceHomeDir.resolve(String.format("%s.kt", name)); - Files.write(sourceFile, content.getBytes(StandardCharsets.UTF_8)); - filesToCompile.add(sourceFile.toFile()); - nameToResource.put(String.format("%s.%s", PACKAGE_NAME, name), resource); - } catch (IOException e) { - throw new RuntimeException(e); - } - }); - - if (filesToCompile.isEmpty()) { - return; - } - final Path classesDir = outputDirectory.resolve("kotlin-dsl/generated-classes"); - Files.createDirectories(classesDir); - CompilationProvider.Context context = new CompilationProvider.Context( - FEATURE, - curateOutcomeBuildItem.getApplicationModel().getDependencies().stream() - .map(ResolvedDependency::getResolvedPaths) - .flatMap(PathCollection::stream) - .map(Path::toFile) - .filter(f -> f.getName().endsWith(".jar")) - .collect(Collectors.toSet()), - Collections.emptySet(), - projectDir.toFile(), - generatedSourceDir.toFile(), - classesDir.toFile(), - StandardCharsets.UTF_8.name(), - Collections.emptyMap(), - KotlinConstantsKt.JVM_TARGET, - KotlinConstantsKt.JVM_TARGET, - KotlinConstantsKt.JVM_TARGET, - Collections.emptyList(), - Collections.emptyList(), - null, - Collections.emptySet(), - Collections.emptyList(), - null); - try (KotlinCompilationProvider compiler = new KotlinCompilationProvider()) { - compiler.compile(filesToCompile, context); - } - - try (Stream<Path> classFiles = Files.walk(classesDir)) { - classFiles - .filter(Files::isRegularFile) - .forEach(p -> { - String fileName = p.getFileName().toString(); - String relativePath = classesDir.relativize(p).toString(); - try { - if (fileName.endsWith(CLASS_EXT)) { - String className = relativePath.replace(File.separatorChar, '.').substring(0, - relativePath.length() - CLASS_EXT.length()); - generatedClass.produce(new GeneratedClassBuildItem(true, className, Files.readAllBytes(p))); - if (nameToResource.containsKey(className)) { - reflectiveClass.produce( - ReflectiveClassBuildItem.builder(className).build()); - generatedKotlinClass - .produce(new DslGeneratedClassBuildItem(className, - nameToResource.get(className).getLocation())); - } - } else { - generatedResource.produce(new GeneratedResourceBuildItem( - relativePath.replace(File.separatorChar, '/'), - Files.readAllBytes(p))); - } - } catch (IOException e) { - throw new RuntimeException("Could not read " + p); - } - }); - } - } - - /** - * Convert a Kotlin script into a Kotlin class to be able to compile it. - * - * @param name the name of the Kotlin class - * @param contentResource the content of the Kotlin script - * @return the content of the corresponding Kotlin class. - */ - private static String toKotlinClass(String name, String contentResource) { - List<String> imports = new ArrayList<>(); - imports.add("import org.apache.camel.*"); - imports.add("import org.apache.camel.spi.*"); - DslSupportProcessor.ExtractImportResult extractImportResult = extractImports(contentResource); - imports.addAll(extractImportResult.getImports()); - return String.format( - FILE_FORMAT, PACKAGE_NAME, String.join("\n", imports), name, - Configurer.class.getName(), extractImportResult.getContent()); - } -} diff --git a/extensions/kotlin-dsl/pom.xml b/extensions/kotlin-dsl/pom.xml deleted file mode 100644 index 1f110d7fd7..0000000000 --- a/extensions/kotlin-dsl/pom.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-extensions</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - - <artifactId>camel-quarkus-kotlin-dsl-parent</artifactId> - <name>Camel Quarkus :: Kotlin DSL</name> - <packaging>pom</packaging> - - <modules> - <module>deployment</module> - <module>runtime</module> - </modules> -</project> diff --git a/extensions/kotlin-dsl/runtime/pom.xml b/extensions/kotlin-dsl/runtime/pom.xml deleted file mode 100644 index 87738b9777..0000000000 --- a/extensions/kotlin-dsl/runtime/pom.xml +++ /dev/null @@ -1,83 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl-parent</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - - <artifactId>camel-quarkus-kotlin-dsl</artifactId> - <name>Camel Quarkus :: Kotlin DSL :: Runtime</name> - <description>Support for parsing Kotlin route definitions at runtime</description> - - <properties> - <camel.quarkus.jvmSince>1.8.0</camel.quarkus.jvmSince> - <camel.quarkus.nativeSince>2.16.0</camel.quarkus.nativeSince> - </properties> - - <dependencies> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-kotlin</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-core</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-support-dsl</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-kotlin-dsl</artifactId> - </dependency> - <dependency> - <groupId>org.graalvm.sdk</groupId> - <artifactId>nativeimage</artifactId> - <scope>provided</scope> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-extension-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <annotationProcessorPaths> - <path> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-extension-processor</artifactId> - <version>${quarkus.version}</version> - </path> - </annotationProcessorPaths> - </configuration> - </plugin> - </plugins> - </build> -</project> diff --git a/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/Configurer.java b/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/Configurer.java deleted file mode 100644 index 49dbb85156..0000000000 --- a/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/Configurer.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.dsl.kotlin.runtime; - -import org.apache.camel.builder.endpoint.EndpointRouteBuilder; -import org.apache.camel.dsl.kotlin.KotlinDSL; -import org.apache.camel.quarkus.support.dsl.runtime.RoutesBuilderConfigurer; -import org.jetbrains.annotations.NotNull; - -public abstract class Configurer extends KotlinDSL implements RoutesBuilderConfigurer { - - protected Configurer(@NotNull EndpointRouteBuilder builder) { - super(builder); - } - -} diff --git a/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/graal/SubstituteKotlinRoutesBuilderLoader.java b/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/graal/SubstituteKotlinRoutesBuilderLoader.java deleted file mode 100644 index 9b23e996a4..0000000000 --- a/extensions/kotlin-dsl/runtime/src/main/java/org/apache/camel/quarkus/dsl/kotlin/runtime/graal/SubstituteKotlinRoutesBuilderLoader.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.dsl.kotlin.runtime.graal; - -import java.io.Reader; - -import com.oracle.svm.core.annotate.Substitute; -import com.oracle.svm.core.annotate.TargetClass; -import org.apache.camel.builder.endpoint.EndpointRouteBuilder; -import org.apache.camel.dsl.kotlin.KotlinRoutesBuilderLoader; - -@TargetClass(KotlinRoutesBuilderLoader.class) -final class SubstituteKotlinRoutesBuilderLoader { - - @Substitute - protected void doLoadEndpointRouteBuilder(Reader reader, EndpointRouteBuilder builder) { - // Do nothing - } -} diff --git a/extensions/kotlin-dsl/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/kotlin-dsl/runtime/src/main/resources/META-INF/quarkus-extension.yaml deleted file mode 100644 index 4fc8307b8e..0000000000 --- a/extensions/kotlin-dsl/runtime/src/main/resources/META-INF/quarkus-extension.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# This is a generated file. Do not edit directly! -# To re-generate, run the following command from the top level directory: -# -# mvn -N cq:update-quarkus-metadata -# ---- -name: "Camel Kotlin DSL" -description: "Support for parsing Kotlin route definitions at runtime" -metadata: - icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg" - sponsor: "Apache Software Foundation" - guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/kotlin-dsl.html" - categories: - - "integration" - status: - - "stable" - - "deprecated" \ No newline at end of file diff --git a/extensions/kotlin/deployment/pom.xml b/extensions/kotlin/deployment/pom.xml deleted file mode 100644 index 50ef8e22b0..0000000000 --- a/extensions/kotlin/deployment/pom.xml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-parent</artifactId> - <version>3.16.0-SNAPSHOT</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>camel-quarkus-kotlin-deployment</artifactId> - <name>Camel Quarkus :: Kotlin :: Deployment</name> - - <dependencies> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-core-deployment</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin</artifactId> - </dependency> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-kotlin-deployment</artifactId> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <annotationProcessorPaths> - <path> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-extension-processor</artifactId> - <version>${quarkus.version}</version> - </path> - </annotationProcessorPaths> - </configuration> - </plugin> - </plugins> - </build> -</project> diff --git a/extensions/kotlin/deployment/src/main/java/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.java b/extensions/kotlin/deployment/src/main/java/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.java deleted file mode 100644 index c5ee18191c..0000000000 --- a/extensions/kotlin/deployment/src/main/java/org/apache/camel/quarkus/kotlin/deployment/KotlinFeature.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin.deployment; - -import io.quarkus.deployment.annotations.BuildStep; -import io.quarkus.deployment.builditem.FeatureBuildItem; - -class KotlinFeature { - private static final String FEATURE = "camel-kotlin"; - - @BuildStep - FeatureBuildItem featureBuildItem() { - return new FeatureBuildItem(FEATURE); - } -} diff --git a/extensions/kotlin/pom.xml b/extensions/kotlin/pom.xml deleted file mode 100644 index 4574e57e5a..0000000000 --- a/extensions/kotlin/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-extensions</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../pom.xml</relativePath> - </parent> - - <modelVersion>4.0.0</modelVersion> - - <artifactId>camel-quarkus-kotlin-parent</artifactId> - <name>Camel Quarkus :: Kotlin</name> - <packaging>pom</packaging> - <modules> - <module>deployment</module> - <module>runtime</module> - </modules> - -</project> diff --git a/extensions/kotlin/runtime/pom.xml b/extensions/kotlin/runtime/pom.xml deleted file mode 100644 index 33d2e93dca..0000000000 --- a/extensions/kotlin/runtime/pom.xml +++ /dev/null @@ -1,95 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-parent</artifactId> - <version>3.16.0-SNAPSHOT</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>camel-quarkus-kotlin</artifactId> - <name>Camel Quarkus :: Kotlin :: Runtime</name> - <description>Write Camel integration routes in Kotlin</description> - - <properties> - <camel.quarkus.jvmSince>1.0.0</camel.quarkus.jvmSince> - <camel.quarkus.nativeSince>1.0.0</camel.quarkus.nativeSince> - <quarkus.metadata.deprecated>true</quarkus.metadata.deprecated> - </properties> - - <dependencies> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-core-engine</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-core</artifactId> - </dependency> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-kotlin</artifactId> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-extension-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-maven-plugin</artifactId> - <version>${kotlin.version}</version> - <executions> - <execution> - <id>compile</id> - <phase>compile</phase> - <goals> - <goal>compile</goal> - </goals> - <configuration> - <sourceDirs> - <sourceDir>src/main/kotlin</sourceDir> - </sourceDirs> - </configuration> - </execution> - <execution> - <id>test-compile</id> - <phase>test-compile</phase> - <goals> - <goal>test-compile</goal> - </goals> - <configuration> - <sourceDirs> - <sourceDir>src/test/kotlin</sourceDir> - </sourceDirs> - </configuration> - </execution> - </executions> - <configuration> - <jvmTarget>${maven.compiler.release}</jvmTarget> - </configuration> - </plugin> - </plugins> - </build> -</project> diff --git a/extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt b/extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt deleted file mode 100644 index a4bae25191..0000000000 --- a/extensions/kotlin/runtime/src/main/kotlin/org/apache/camel/quarkus/kotlin/RoutesDSL.kt +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin - -import org.apache.camel.RoutesBuilder -import org.apache.camel.builder.RouteBuilder - -/** - * Functional routes definition Kotlin DSL. - * - * Example: - * - * ``` - * fun myRoutes() = routes { - * from("timer:foo?period=1000") - * .log("\${body}") - * } - * ``` - * - * In a nutshell, it makes it possible to configure routes with a lambda that acts as RouteBuilder. - */ -fun routes(block: RouteBuilder.() -> Unit) : RoutesBuilder { - return object: RouteBuilder() { - override fun configure() { - this.block() - } - } -} diff --git a/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml deleted file mode 100644 index f5795f5c67..0000000000 --- a/extensions/kotlin/runtime/src/main/resources/META-INF/quarkus-extension.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# This is a generated file. Do not edit directly! -# To re-generate, run the following command from the top level directory: -# -# mvn -N cq:update-quarkus-metadata -# ---- -name: "Camel Kotlin" -description: "Write Camel integration routes in Kotlin" -metadata: - icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg" - sponsor: "Apache Software Foundation" - guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/kotlin.html" - categories: - - "integration" - status: - - "stable" - - "deprecated" \ No newline at end of file diff --git a/extensions/pom.xml b/extensions/pom.xml index 188bd03ace..cc1894574d 100644 --- a/extensions/pom.xml +++ b/extensions/pom.xml @@ -164,8 +164,6 @@ <module>knative</module> <module>knative-consumer</module> <module>knative-producer</module> - <module>kotlin</module> - <module>kotlin-dsl</module> <module>kubernetes</module> <module>kubernetes-cluster-service</module> <module>kudu</module> diff --git a/extensions/qute/component/src/generated/resources/META-INF/org/apache/camel/component/qute/qute.json b/extensions/qute/component/src/generated/resources/META-INF/org/apache/camel/component/qute/qute.json index b76cae60be..135d622192 100644 --- a/extensions/qute/component/src/generated/resources/META-INF/org/apache/camel/component/qute/qute.json +++ b/extensions/qute/component/src/generated/resources/META-INF/org/apache/camel/component/qute/qute.json @@ -20,6 +20,7 @@ "consumerOnly": false, "producerOnly": true, "lenientProperties": false, + "browsable": false, "remote": true }, "componentProperties": { diff --git a/integration-tests/kotlin-dsl/pom.xml b/integration-tests/kotlin-dsl/pom.xml deleted file mode 100644 index 1a1beb11ed..0000000000 --- a/integration-tests/kotlin-dsl/pom.xml +++ /dev/null @@ -1,200 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-build-parent-it</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../../poms/build-parent-it/pom.xml</relativePath> - </parent> - - <artifactId>camel-quarkus-integration-test-kotlin-dsl</artifactId> - <name>Camel Quarkus :: Integration Tests :: Kotlin DSL</name> - <description>Integration tests for Camel Kotlin DSL extension</description> - - <dependencies> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-direct</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-jackson</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-bean</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-log</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-rest</artifactId> - </dependency> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-resteasy-jsonb</artifactId> - </dependency> - - <!-- test dependencies --> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-junit5</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>io.rest-assured</groupId> - <artifactId>rest-assured</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.assertj</groupId> - <artifactId>assertj-core</artifactId> - <scope>test</scope> - </dependency> - </dependencies> - - <profiles> - <profile> - <id>virtualDependencies</id> - <activation> - <property> - <name>!noVirtualDependencies</name> - </property> - </activation> - <dependencies> - <!-- The following dependencies guarantee that this module is built after them. You can update them by running `mvn process-resources -Pformat -N` from the source tree root directory --> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-bean-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-direct-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-jackson-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-log-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-rest-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - </dependencies> - </profile> - <profile> - <id>native</id> - <activation> - <property> - <name>native</name> - </property> - </activation> - <properties> - <quarkus.native.enabled>true</quarkus.native.enabled> - </properties> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-failsafe-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>integration-test</goal> - <goal>verify</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - </profiles> - -</project> diff --git a/integration-tests/kotlin-dsl/src/main/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslResource.java b/integration-tests/kotlin-dsl/src/main/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslResource.java deleted file mode 100644 index 9e39bb9a35..0000000000 --- a/integration-tests/kotlin-dsl/src/main/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslResource.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.dsl.kotlin; - -import java.util.Set; -import java.util.stream.Collectors; - -import jakarta.enterprise.context.ApplicationScoped; -import jakarta.inject.Inject; -import jakarta.ws.rs.Consumes; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.POST; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import org.apache.camel.ExtendedCamelContext; -import org.apache.camel.ProducerTemplate; -import org.apache.camel.Route; -import org.apache.camel.component.direct.DirectEndpoint; -import org.apache.camel.dsl.kotlin.KotlinConstantsKt; -import org.apache.camel.quarkus.main.CamelMain; -import org.apache.camel.spi.RoutesBuilderLoader; - -@Path("/kotlin-dsl") -@ApplicationScoped -public class KotlinDslResource { - @Inject - CamelMain main; - - @Inject - ProducerTemplate producerTemplate; - - @Path("/main/kotlinRoutesBuilderLoader") - @GET - @Produces(MediaType.TEXT_PLAIN) - public String kotlinRoutesBuilder() { - final ExtendedCamelContext camelContext = main.getCamelContext().getCamelContextExtension(); - return camelContext.getBootstrapFactoryFinder(RoutesBuilderLoader.FACTORY_PATH) - .findClass(KotlinConstantsKt.EXTENSION).get().getName(); - } - - @Path("/main/routeBuilders") - @GET - @Produces(MediaType.TEXT_PLAIN) - public String routeBuilders() { - return main.configure().getRoutesBuilders().stream() - .map(rb -> rb.getClass().getSimpleName()) - .sorted() - .collect(Collectors.joining(",")); - } - - @Path("/main/routes") - @GET - @Produces(MediaType.TEXT_PLAIN) - public String routes() { - return main.getCamelContext().getRoutes().stream() - .map(Route::getId) - .sorted() - .collect(Collectors.joining(",")); - } - - @GET - @Path("/main/successful/routes") - @Consumes(MediaType.TEXT_PLAIN) - @Produces(MediaType.TEXT_PLAIN) - public int successfulRoutes() { - int successful = 0; - Set<String> excluded = Set.of("my-kotlin-route", "routes-with-rest-dsl-get", "routes-with-rest-dsl-post"); - for (Route route : main.getCamelContext().getRoutes()) { - String name = route.getRouteId(); - if (route.getEndpoint() instanceof DirectEndpoint && !excluded.contains(name) - && producerTemplate.requestBody(route.getEndpoint(), "", Boolean.class) == Boolean.TRUE) { - successful++; - } - } - return successful; - } - - @POST - @Path("/hello") - @Consumes(MediaType.TEXT_PLAIN) - @Produces(MediaType.TEXT_PLAIN) - public String hello(String message) { - return producerTemplate.requestBody("direct:kotlinHello", message, String.class); - } -} diff --git a/integration-tests/kotlin-dsl/src/main/resources/application.properties b/integration-tests/kotlin-dsl/src/main/resources/application.properties deleted file mode 100644 index 3f43a52589..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/application.properties +++ /dev/null @@ -1,22 +0,0 @@ -## --------------------------------------------------------------------------- -## Licensed to the Apache Software Foundation (ASF) under one or more -## contributor license agreements. See the NOTICE file distributed with -## this work for additional information regarding copyright ownership. -## The ASF licenses this file to You under the Apache License, Version 2.0 -## (the "License"); you may not use this file except in compliance with -## the License. You may obtain a copy of the License at -## -## http://www.apache.org/licenses/LICENSE-2.0 -## -## Unless required by applicable law or agreed to in writing, software -## distributed under the License is distributed on an "AS IS" BASIS, -## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -## See the License for the specific language governing permissions and -## limitations under the License. -## --------------------------------------------------------------------------- - -# -# Main -# -camel.main.routes-include-pattern = classpath:routes/*.kts - diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/my-routes.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/my-routes.kts deleted file mode 100644 index 4387318c49..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/my-routes.kts +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -from("direct:kotlinHello") - .id("my-kotlin-route") - .setBody().simple("Hello \${body} from Kotlin!") diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-components-configuration.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-components-configuration.kts deleted file mode 100644 index 45c1ac825f..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-components-configuration.kts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import org.apache.camel.Exchange -import org.apache.camel.component.direct.DirectComponent -import org.apache.camel.component.log.LogComponent - -camel { - components { - component<LogComponent>("log") { - setExchangeFormatter { - e: Exchange -> "" + e.getIn().body - } - } - - component<DirectComponent>("direct") { - timeout = 1234 - } - - component<DirectComponent>("myDirect") { - timeout = 4321 - } - } -} - -from("direct:routes-with-components-configuration") - .id("routes-with-components-configuration") - .process().message { - m -> m.body = m.exchange.context.getComponent("myDirect") != null - } diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-dataformats-configuration.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-dataformats-configuration.kts deleted file mode 100644 index 055e6e20b1..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-dataformats-configuration.kts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import org.apache.camel.component.jackson.JacksonDataFormat - -camel { - dataFormats { - dataFormat<JacksonDataFormat>("jackson") { - unmarshalType = Map::class.java - isPrettyPrint = true - } - - dataFormat<JacksonDataFormat>("my-jackson") { - unmarshalType = String::class.java - isPrettyPrint = false - } - } -} - -from("direct:routes-with-dataformats-configuration") - .id("routes-with-dataformats-configuration") - .process().message { - m -> m.body = m.exchange.context.getRegistry().lookupByName("my-jackson") != null - } diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-endpoint-dsl.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-endpoint-dsl.kts deleted file mode 100644 index d9466cc7b6..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-endpoint-dsl.kts +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -var d = direct("routes-with-endpoint-dsl").advanced().synchronous(true) -var t = log("info") - -from(d) - .id("routes-with-endpoint-dsl") - .setBody().constant("true") - .to(t) diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-error-handler.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-error-handler.kts deleted file mode 100644 index 2f0f327a86..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-error-handler.kts +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -onException(IllegalArgumentException::class.java) - .id("my-on-exception") - .to("log:exception") - -from("direct:routes-with-error-handler") - .id("routes-with-error-handler") - .process().message { - m -> m.headers["SomeHeader"] = "SomeHeaderValue" - } - .filter().simple("\${header.SomeHeader} == 'SomeHeaderValue'") - .setBody().constant("true") diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-languages-configuration.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-languages-configuration.kts deleted file mode 100644 index fa073ec5fe..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-languages-configuration.kts +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import org.apache.camel.language.bean.BeanLanguage - -camel { - languages { - language<BeanLanguage>("bean") { - isValidate = false - } - language<BeanLanguage>("my-bean") { - isValidate = true - } - } -} -from("direct:routes-with-languages-configuration") - .id("routes-with-languages-configuration") - .process().message { - m -> m.body = m.exchange.context.getRegistry().lookupByName("my-bean") != null - } diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-rest.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-rest.kts deleted file mode 100644 index 256000d521..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes-with-rest.kts +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -rest { - configuration { - contextPath = "/root" - } - - path("/my/path") { - get("/get") { - produces("text/plain") - to("direct:get") - } - } - - post { - path("/post") - consumes("text/plain") - produces("text/plain") - to("direct:post") - } -} - -from("direct:get") - .id("routes-with-rest-dsl-get") - .transform().constant("Hello World") -from("direct:post") - .id("routes-with-rest-dsl-post") - .setBody().simple("Hello \${body}") - -from("direct:routes-with-rest") - .id("routes-with-rest") - .process().message { - m -> m.headers["AnotherHeader"] = "AnotherHeaderValue" - } - .filter().simple("\${header.AnotherHeader} == 'AnotherHeaderValue'") - .setBody().constant("true") diff --git a/integration-tests/kotlin-dsl/src/main/resources/routes/routes.kts b/integration-tests/kotlin-dsl/src/main/resources/routes/routes.kts deleted file mode 100644 index 1bf9bcd8be..0000000000 --- a/integration-tests/kotlin-dsl/src/main/resources/routes/routes.kts +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -from("direct:routes") - .id("routes") - .process().message { - m -> m.headers["MyHeader"] = "MyHeaderValue" - } - .filter().simple("\${header.MyHeader} == 'MyHeaderValue'") - .setBody().constant("true") diff --git a/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslIT.java b/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslIT.java deleted file mode 100644 index 7d41693a7c..0000000000 --- a/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslIT.java +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.dsl.kotlin; - -import io.quarkus.test.junit.QuarkusIntegrationTest; - -@QuarkusIntegrationTest -class KotlinDslIT extends KotlinDslTest { - -} diff --git a/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslTest.java b/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslTest.java deleted file mode 100644 index d0e11ec51e..0000000000 --- a/integration-tests/kotlin-dsl/src/test/java/org/apache/camel/quarkus/dsl/kotlin/KotlinDslTest.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.dsl.kotlin; - -import io.quarkus.test.junit.QuarkusTest; -import io.restassured.RestAssured; -import org.apache.camel.dsl.kotlin.KotlinRoutesBuilderLoader; -import org.hamcrest.CoreMatchers; -import org.junit.jupiter.api.Test; - -@QuarkusTest -class KotlinDslTest { - - @Test - void kotlinHello() { - RestAssured.given() - .body("Will Smith") - .post("/kotlin-dsl/hello") - .then() - .statusCode(200) - .body(CoreMatchers.is("Hello Will Smith from Kotlin!")); - } - - @Test - void testMainInstanceWithJavaRoutes() { - RestAssured.given() - .get("/kotlin-dsl/main/kotlinRoutesBuilderLoader") - .then() - .statusCode(200) - .body(CoreMatchers.is(KotlinRoutesBuilderLoader.class.getName())); - - RestAssured.given() - .get("/kotlin-dsl/main/routeBuilders") - .then() - .statusCode(200) - .body(CoreMatchers.is("")); - - RestAssured.given() - .get("/kotlin-dsl/main/routes") - .then() - .statusCode(200) - .body(CoreMatchers.is( - "my-kotlin-route,routes,routes-with-components-configuration,routes-with-dataformats-configuration,routes-with-endpoint-dsl,routes-with-error-handler,routes-with-languages-configuration,routes-with-rest,routes-with-rest-dsl-get,routes-with-rest-dsl-post")); - - RestAssured.given() - .get("/kotlin-dsl/main/successful/routes") - .then() - .statusCode(200) - .body(CoreMatchers.is("7")); - } - - @Test - void testRestEndpoints() { - RestAssured.given() - .get("/root/my/path/get") - .then() - .statusCode(200) - .body(CoreMatchers.is("Hello World")); - RestAssured.given() - .body("Will") - .post("/root/post") - .then() - .statusCode(200) - .body(CoreMatchers.is("Hello Will")); - } -} diff --git a/integration-tests/kotlin/pom.xml b/integration-tests/kotlin/pom.xml deleted file mode 100644 index 719f313ea0..0000000000 --- a/integration-tests/kotlin/pom.xml +++ /dev/null @@ -1,210 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-build-parent-it</artifactId> - <version>3.16.0-SNAPSHOT</version> - <relativePath>../../poms/build-parent-it/pom.xml</relativePath> - </parent> - - <artifactId>camel-quarkus-integration-test-kotlin</artifactId> - <name>Camel Quarkus :: Integration Tests :: Kotlin :: Tests</name> - <description>The camel integration tests</description> - - <dependencies> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-direct</artifactId> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-log</artifactId> - </dependency> - - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-jsonb</artifactId> - </dependency> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-resteasy-jsonb</artifactId> - </dependency> - - <!-- test dependencies --> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-junit5</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>io.rest-assured</groupId> - <artifactId>rest-assured</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.assertj</groupId> - <artifactId>assertj-core</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-integration-test-support</artifactId> - <scope>test</scope> - </dependency> - </dependencies> - - <build> - <plugins> - <plugin> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-maven-plugin</artifactId> - <version>${kotlin.version}</version> - <executions> - <execution> - <id>compile</id> - <goals> - <goal>compile</goal> - </goals> - <configuration> - <sourceDirs> - <sourceDir>${project.basedir}/src/main/kotlin</sourceDir> - </sourceDirs> - </configuration> - </execution> - <execution> - <id>test-compile</id> - <goals> - <goal>test-compile</goal> - </goals> - <configuration> - <sourceDirs> - <sourceDir>${project.basedir}/src/test/kotlin</sourceDir> - </sourceDirs> - </configuration> - </execution> - </executions> - <configuration> - <compilerPlugins> - <plugin>all-open</plugin> - </compilerPlugins> - <pluginOptions> - <option>all-open:annotation=javax.enterprise.inject.Produces</option> - <option>all-open:annotation=javax.inject.Singleton</option> - <option>all-open:annotation=javax.enterprise.context.ApplicationScoped</option> - </pluginOptions> - </configuration> - <dependencies> - <dependency> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-maven-allopen</artifactId> - <version>${kotlin.version}</version> - </dependency> - </dependencies> - </plugin> - </plugins> - </build> - - <profiles> - <profile> - <id>native</id> - <activation> - <property> - <name>native</name> - </property> - </activation> - <properties> - <quarkus.native.enabled>true</quarkus.native.enabled> - </properties> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-failsafe-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>integration-test</goal> - <goal>verify</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - <profile> - <id>virtualDependencies</id> - <activation> - <property> - <name>!noVirtualDependencies</name> - </property> - </activation> - <dependencies> - <!-- The following dependencies guarantee that this module is built after them. You can update them by running `mvn process-resources -Pformat -N` from the source tree root directory --> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-direct-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-log-deployment</artifactId> - <version>${project.version}</version> - <type>pom</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>*</groupId> - <artifactId>*</artifactId> - </exclusion> - </exclusions> - </dependency> - </dependencies> - </profile> - </profiles> - -</project> diff --git a/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinResource.kt b/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinResource.kt deleted file mode 100644 index d1ba2d7f68..0000000000 --- a/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinResource.kt +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin - -import org.apache.camel.CamelContext -import org.apache.camel.Route -import java.util.stream.Collectors -import jakarta.enterprise.context.ApplicationScoped -import jakarta.inject.Inject -import jakarta.json.Json -import jakarta.json.JsonObject -import jakarta.ws.rs.GET -import jakarta.ws.rs.Path -import jakarta.ws.rs.Produces -import jakarta.ws.rs.core.MediaType - - -@Path("/test") -@ApplicationScoped -class KotlinResource { - @Inject - var context: CamelContext? = null - - @Path("/describe-context") - @GET - @Produces(MediaType.APPLICATION_JSON) - fun describeMain(): JsonObject? { - val routes = context!!.routes.stream().map { obj: Route -> obj.id }.collect(Collectors.toList()) - - return Json.createObjectBuilder() - .add("routes", Json.createArrayBuilder(routes)) - .build() - } -} \ No newline at end of file diff --git a/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinRoutes.kt b/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinRoutes.kt deleted file mode 100644 index ee9e1beabc..0000000000 --- a/integration-tests/kotlin/src/main/kotlin/org/apache/camel/quarkus/kotlin/KotlinRoutes.kt +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin - -import org.apache.camel.builder.LambdaRouteBuilder -import jakarta.enterprise.context.ApplicationScoped -import jakarta.enterprise.inject.Produces - - -@ApplicationScoped -class KotlinRoutes { - @Produces - fun withRoutesDsl() = routes { - from("direct:dsl") - .routeId("routes-dsl") - .log("\${body}") - } - - @Produces - fun withLambda() = LambdaRouteBuilder { - it.from("direct:lambda") - .routeId("lambda-dsl") - .log("\${body}") - } -} \ No newline at end of file diff --git a/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinIT.kt b/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinIT.kt deleted file mode 100644 index d5ed517f67..0000000000 --- a/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinIT.kt +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin - -import io.quarkus.test.junit.QuarkusIntegrationTest - -@QuarkusIntegrationTest -class KotlinIT : KotlinTest() \ No newline at end of file diff --git a/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinTest.kt b/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinTest.kt deleted file mode 100644 index 77f0c8e7c8..0000000000 --- a/integration-tests/kotlin/src/test/kotlin/org/apache/camel/quarkus/kotlin/KotlinTest.kt +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.quarkus.kotlin - -import io.quarkus.test.junit.QuarkusTest -import io.restassured.RestAssured -import org.assertj.core.api.Assertions.assertThat -import org.junit.jupiter.api.Test -import jakarta.ws.rs.core.MediaType - -@QuarkusTest -open class KotlinTest { - @Test - fun `routes are created`() { - val p = RestAssured.given() - .accept(MediaType.APPLICATION_JSON)["/test/describe-context"] - .then() - .statusCode(200) - .extract() - .body() - .jsonPath() - - assertThat(p.getList("routes", String::class.java)).contains("routes-dsl", "lambda-dsl") - } -} diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml index 051a30e09d..a9a932450b 100644 --- a/integration-tests/pom.xml +++ b/integration-tests/pom.xml @@ -149,8 +149,6 @@ <module>kafka-ssl</module> <module>kamelet</module> <module>knative</module> - <module>kotlin</module> - <module>kotlin-dsl</module> <module>kubernetes</module> <module>kudu</module> <module>langchain4j</module> diff --git a/pom.xml b/pom.xml index 6386554415..5039553e6d 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.camel</groupId> <artifactId>camel-dependencies</artifactId> - <version>4.8.1</version> + <version>4.9.0-SNAPSHOT</version> </parent> <groupId>org.apache.camel.quarkus</groupId> @@ -39,8 +39,8 @@ <properties> <!-- Primary dependencies - maintained manually --> - <camel.major.minor>4.8</camel.major.minor> <!-- run after each change: cd docs && mvnd validate --> - <camel.version>${camel.major.minor}.1</camel.version> + <camel.major.minor>4.9</camel.major.minor> <!-- run after each change: cd docs && mvnd validate --> + <camel.version>${camel.major.minor}.0-SNAPSHOT</camel.version> <camel.docs.components.version>${camel.major.minor}.x</camel.docs.components.version><!-- the version in Camel's docs/components/antora.yml --> <camel.docs.components.xref>${camel.docs.components.version}@components</camel.docs.components.xref><!-- the version in Camel's docs/components/antora.yml --> <camel.docs.branch>camel-${camel.major.minor}.x</camel.docs.branch><!-- The stable camel branch on which our Antora docs depends --> @@ -97,11 +97,11 @@ <freemarker.version>2.3.33</freemarker.version><!-- @sync io.quarkiverse.freemarker:quarkus-freemarker-parent:${quarkiverse-freemarker.version} prop:freemarker.version --> <geny.version>0.6.2</geny.version> <github-api.version>1.313</github-api.version><!-- Used in a Groovy script bellow --> - <google-auth-library.version>1.24.1</google-auth-library.version><!-- @sync com.google.cloud:google-cloud-pubsub:${google-cloud-pubsub.version} dep:com.google.auth:google-auth-library-oauth2-http --> + <google-auth-library.version>1.25.0</google-auth-library.version><!-- @sync com.google.cloud:google-cloud-pubsub:${google-cloud-pubsub.version} dep:com.google.auth:google-auth-library-oauth2-http --> <google-oauth-client.version>${google-oauth-client-version}</google-oauth-client.version> - <google-cloud-bom.version>0.226.0</google-cloud-bom.version><!-- @sync com.google.cloud:libraries-bom:${google-cloud-bom-version} dep:com.google.cloud:google-cloud-bom --> - <google-cloud-pubsub-bom.version>1.132.1</google-cloud-pubsub-bom.version><!-- @sync com.google.cloud:google-cloud-bom:${google-cloud-bom.version} dep:com.google.cloud:google-cloud-pubsub-bom --> - <google-cloud-pubsub.version>1.132.1</google-cloud-pubsub.version><!-- @sync com.google.cloud:google-cloud-pubsub-bom:${google-cloud-pubsub-bom.version} dep:com.google.cloud:google-cloud-pubsub --> + <google-cloud-bom.version>0.227.0</google-cloud-bom.version><!-- @sync com.google.cloud:libraries-bom:${google-cloud-bom-version} dep:com.google.cloud:google-cloud-bom --> + <google-cloud-pubsub-bom.version>1.132.2</google-cloud-pubsub-bom.version><!-- @sync com.google.cloud:google-cloud-bom:${google-cloud-bom.version} dep:com.google.cloud:google-cloud-pubsub-bom --> + <google-cloud-pubsub.version>1.132.2</google-cloud-pubsub.version><!-- @sync com.google.cloud:google-cloud-pubsub-bom:${google-cloud-pubsub-bom.version} dep:com.google.cloud:google-cloud-pubsub --> <graalvm.version>23.1.2</graalvm.version><!-- @sync io.quarkus:quarkus-bom:${quarkus.version} dep:org.graalvm.sdk:graal-sdk --> <graalvm-docs.version>jdk21</graalvm-docs.version><!-- @sync io.quarkus:quarkus-documentation:${quarkus.version} prop:graal-community.tag-for-documentation --> <groovy.version>4.0.21</groovy.version><!-- @sync io.quarkiverse.groovy:quarkus-groovy-parent:${quarkiverse-groovy.version} prop:groovy.version --> diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml index 8969c3bb91..e0eb478433 100644 --- a/poms/bom/pom.xml +++ b/poms/bom/pom.xml @@ -1788,11 +1788,6 @@ <artifactId>camel-knative-http</artifactId> <version>${camel.version}</version> </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-kotlin-dsl</artifactId> - <version>${camel.version}</version> - </dependency> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-kubernetes</artifactId> @@ -4725,26 +4720,6 @@ <artifactId>camel-quarkus-knative-producer-deployment</artifactId> <version>${camel-quarkus.version}</version> </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin</artifactId> - <version>${camel-quarkus.version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-deployment</artifactId> - <version>${camel-quarkus.version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl</artifactId> - <version>${camel-quarkus.version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel.quarkus</groupId> - <artifactId>camel-quarkus-kotlin-dsl-deployment</artifactId> - <version>${camel-quarkus.version}</version> - </dependency> <dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-kubernetes</artifactId> @@ -7267,11 +7242,6 @@ <artifactId>javassist</artifactId> <version>${javassist.version}</version> </dependency> - <dependency> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-script-util</artifactId> - <version>${kotlin.version}</version> - </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-scripting-compiler-embeddable</artifactId> @@ -7282,16 +7252,6 @@ <artifactId>kotlin-scripting-compiler-impl-embeddable</artifactId> <version>${kotlin.version}</version> </dependency> - <dependency> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-scripting-jvm</artifactId> - <version>${kotlin.version}</version> - </dependency> - <dependency> - <groupId>org.jetbrains.kotlin</groupId> - <artifactId>kotlin-scripting-jvm-host</artifactId> - <version>${kotlin.version}</version> - </dependency> <dependency> <groupId>org.jetbrains.kotlinx</groupId> <artifactId>kotlinx-serialization-core-jvm</artifactId> diff --git a/tooling/maven-plugin/src/main/java/org/apache/camel/quarkus/maven/UpdateExtensionDocPageMojo.java b/tooling/maven-plugin/src/main/java/org/apache/camel/quarkus/maven/UpdateExtensionDocPageMojo.java index dd69313293..3abd62f19f 100644 --- a/tooling/maven-plugin/src/main/java/org/apache/camel/quarkus/maven/UpdateExtensionDocPageMojo.java +++ b/tooling/maven-plugin/src/main/java/org/apache/camel/quarkus/maven/UpdateExtensionDocPageMojo.java @@ -245,10 +245,6 @@ public class UpdateExtensionDocPageMojo extends AbstractDocGeneratorMojo { xrefPrefix = "xref:manual::"; name = "camel-console"; } - // TODO: https://github.com/apache/camel-quarkus/issues/6448 - if (name.equals("kotlin-dsl")) { - return ""; - } return xrefPrefix + name + (!"other".equals(kind) ? "-" + kind : "") + ".adoc"; } }); diff --git a/tooling/scripts/test-categories.yaml b/tooling/scripts/test-categories.yaml index 4f9b4fd620..a1a6443149 100644 --- a/tooling/scripts/test-categories.yaml +++ b/tooling/scripts/test-categories.yaml @@ -176,7 +176,6 @@ group-10: - fop - groovy - joor - - kotlin - mail - main-unknown-args-fail - main-unknown-args-ignore @@ -224,7 +223,6 @@ group-13: - java-joor-dsl - jdbc-grouped - js-dsl - - kotlin-dsl - kubernetes - salesforce - sap-netweaver