From 9d8cd3aec047799462b0ec26c8b78f1a84d948ce Mon Sep 17 00:00:00 2001 From: James Netherton Date: Tue, 15 Oct 2024 15:08:33 +0100 Subject: [PATCH] Disable discovery of camel-opentelemetry ThreadPoolFactory due to #6642 --- ...enTelemetryDisableThreadPoolProcessor.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 extensions/opentelemetry/deployment/src/main/java/org/apache/camel/quarkus/component/opentelemetry/deployment/OpenTelemetryDisableThreadPoolProcessor.java diff --git a/extensions/opentelemetry/deployment/src/main/java/org/apache/camel/quarkus/component/opentelemetry/deployment/OpenTelemetryDisableThreadPoolProcessor.java b/extensions/opentelemetry/deployment/src/main/java/org/apache/camel/quarkus/component/opentelemetry/deployment/OpenTelemetryDisableThreadPoolProcessor.java new file mode 100644 index 00000000000..cc0f8c1b8ac --- /dev/null +++ b/extensions/opentelemetry/deployment/src/main/java/org/apache/camel/quarkus/component/opentelemetry/deployment/OpenTelemetryDisableThreadPoolProcessor.java @@ -0,0 +1,36 @@ +/* + * 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.component.opentelemetry.deployment; + +import io.quarkus.deployment.annotations.BuildProducer; +import io.quarkus.deployment.annotations.BuildStep; +import org.apache.camel.quarkus.core.deployment.spi.CamelServiceDestination; +import org.apache.camel.quarkus.core.deployment.spi.CamelServicePatternBuildItem; + +/** + * TODO: Remove this class - https://github.com/apache/camel-quarkus/issues/6642 + */ +class OpenTelemetryDisableThreadPoolProcessor { + @BuildStep + void disableCamelOpenTelemetryThreadPoolFactory(BuildProducer camelServicePattern) { + camelServicePattern.produce(new CamelServicePatternBuildItem(CamelServiceDestination.DISCOVERY, false, + "META-INF/services/org/apache/camel/thread-pool-factory")); + + camelServicePattern.produce(new CamelServicePatternBuildItem(CamelServiceDestination.DISCOVERY, false, + "META-INF/services/org/apache/camel/thread-factory-listener")); + } +}