diff --git a/docs/apidiffs/current_vs_latest/opentelemetry-sdk.txt b/docs/apidiffs/current_vs_latest/opentelemetry-sdk.txt index f42ec3fe0a..a00602c348 100644 --- a/docs/apidiffs/current_vs_latest/opentelemetry-sdk.txt +++ b/docs/apidiffs/current_vs_latest/opentelemetry-sdk.txt @@ -1,8 +1,2 @@ Comparing source compatibility of opentelemetry-sdk-1.53.0-SNAPSHOT.jar against opentelemetry-sdk-1.52.0.jar -+++ NEW INTERFACE: PUBLIC(+) ABSTRACT(+) io.opentelemetry.sdk.WithShutdown (not serializable) - +++ CLASS FILE FORMAT VERSION: 52.0 <- n.a. - +++ NEW INTERFACE: java.io.Closeable - +++ NEW INTERFACE: java.lang.AutoCloseable - +++ NEW SUPERCLASS: java.lang.Object - +++ NEW METHOD: PUBLIC(+) void close() - +++ NEW METHOD: PUBLIC(+) ABSTRACT(+) io.opentelemetry.sdk.common.CompletableResultCode shutdown() +No changes. diff --git a/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ExtendedOpenTelemetrySdkBuilder.java b/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ExtendedOpenTelemetrySdkBuilder.java index aa1fb90c6c..d0ceaa0f18 100644 --- a/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ExtendedOpenTelemetrySdkBuilder.java +++ b/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ExtendedOpenTelemetrySdkBuilder.java @@ -10,9 +10,9 @@ import io.opentelemetry.api.incubator.config.ConfigProvider; import io.opentelemetry.context.propagation.ContextPropagators; import io.opentelemetry.sdk.OpenTelemetrySdk; import io.opentelemetry.sdk.OpenTelemetrySdkBuilder; -import io.opentelemetry.sdk.WithShutdown; import io.opentelemetry.sdk.extension.incubator.fileconfig.SdkConfigProvider; import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel; +import io.opentelemetry.sdk.internal.WithShutdown; import io.opentelemetry.sdk.logs.SdkLoggerProvider; import io.opentelemetry.sdk.logs.SdkLoggerProviderBuilder; import io.opentelemetry.sdk.metrics.SdkMeterProvider; @@ -107,7 +107,7 @@ public final class ExtendedOpenTelemetrySdkBuilder { closeableConsumer.accept(tracerProvider); closeableConsumer.accept(meterProvider); closeableConsumer.accept(loggerProvider); - ExtendedOpenTelemetrySdk extendedOpenTelemetrySdk = + ObfuscatedExtendedOpenTelemetrySdk extendedOpenTelemetrySdk = new ObfuscatedExtendedOpenTelemetrySdk( configProvider, tracerProvider, meterProvider, loggerProvider, propagators); closeableConsumer.accept(extendedOpenTelemetrySdk); diff --git a/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ObfuscatedExtendedOpenTelemetrySdk.java b/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ObfuscatedExtendedOpenTelemetrySdk.java index 984aece59f..d7bd1e440d 100644 --- a/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ObfuscatedExtendedOpenTelemetrySdk.java +++ b/sdk-extensions/incubator/src/main/java/io/opentelemetry/sdk/extension/incubator/ObfuscatedExtendedOpenTelemetrySdk.java @@ -15,18 +15,19 @@ import io.opentelemetry.api.trace.TracerBuilder; import io.opentelemetry.api.trace.TracerProvider; import io.opentelemetry.context.propagation.ContextPropagators; import io.opentelemetry.sdk.common.CompletableResultCode; +import io.opentelemetry.sdk.internal.WithShutdown; import io.opentelemetry.sdk.logs.SdkLoggerProvider; import io.opentelemetry.sdk.metrics.SdkMeterProvider; import io.opentelemetry.sdk.trace.SdkTracerProvider; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Logger; import javax.annotation.concurrent.ThreadSafe; /** The SDK implementation of {@link ExtendedOpenTelemetrySdk}. */ -public final class ObfuscatedExtendedOpenTelemetrySdk implements ExtendedOpenTelemetrySdk { +public final class ObfuscatedExtendedOpenTelemetrySdk implements ExtendedOpenTelemetrySdk, + WithShutdown { private static final Logger LOGGER = Logger.getLogger(ObfuscatedExtendedOpenTelemetrySdk.class.getName()); @@ -50,6 +51,7 @@ public final class ObfuscatedExtendedOpenTelemetrySdk implements ExtendedOpenTel this.propagators = propagators; } + @Override public CompletableResultCode shutdown() { if (!isShutdown.compareAndSet(false, true)) { LOGGER.info("Multiple shutdown calls"); @@ -62,11 +64,6 @@ public final class ObfuscatedExtendedOpenTelemetrySdk implements ExtendedOpenTel return CompletableResultCode.ofAll(results); } - @Override - public void close() { - shutdown().join(10, TimeUnit.SECONDS); - } - @Override public ConfigProvider getConfigProvider() { return configProvider; diff --git a/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdk.java b/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdk.java index 5b8b3bbabc..6f03cf8a7c 100644 --- a/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdk.java +++ b/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdk.java @@ -15,6 +15,7 @@ import io.opentelemetry.api.trace.TracerBuilder; import io.opentelemetry.api.trace.TracerProvider; import io.opentelemetry.context.propagation.ContextPropagators; import io.opentelemetry.sdk.common.CompletableResultCode; +import io.opentelemetry.sdk.internal.WithShutdown; import io.opentelemetry.sdk.logs.SdkLoggerProvider; import io.opentelemetry.sdk.metrics.SdkMeterProvider; import io.opentelemetry.sdk.trace.SdkTracerProvider; diff --git a/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdkBuilder.java b/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdkBuilder.java index d5b5f0b2c4..2d4e73d779 100644 --- a/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdkBuilder.java +++ b/sdk/all/src/main/java/io/opentelemetry/sdk/OpenTelemetrySdkBuilder.java @@ -7,6 +7,7 @@ package io.opentelemetry.sdk; import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.context.propagation.ContextPropagators; +import io.opentelemetry.sdk.internal.WithShutdown; import io.opentelemetry.sdk.logs.SdkLoggerProvider; import io.opentelemetry.sdk.logs.SdkLoggerProviderBuilder; import io.opentelemetry.sdk.metrics.SdkMeterProvider; diff --git a/sdk/all/src/main/java/io/opentelemetry/sdk/WithShutdown.java b/sdk/all/src/main/java/io/opentelemetry/sdk/internal/WithShutdown.java similarity index 95% rename from sdk/all/src/main/java/io/opentelemetry/sdk/WithShutdown.java rename to sdk/all/src/main/java/io/opentelemetry/sdk/internal/WithShutdown.java index cc527bd33d..5ff44fd0be 100644 --- a/sdk/all/src/main/java/io/opentelemetry/sdk/WithShutdown.java +++ b/sdk/all/src/main/java/io/opentelemetry/sdk/internal/WithShutdown.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.sdk; +package io.opentelemetry.sdk.internal; import io.opentelemetry.sdk.common.CompletableResultCode; import io.opentelemetry.sdk.logs.SdkLoggerProvider;