Extract inner classes from metrics API (#2517)

Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
This commit is contained in:
Bogdan Drutu 2021-01-13 15:26:21 -08:00 committed by GitHub
parent 957bd0ad1c
commit 53f0e30776
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
68 changed files with 588 additions and 427 deletions

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -20,21 +19,6 @@ import javax.annotation.concurrent.ThreadSafe;
*/
@ThreadSafe
public interface AsynchronousInstrument extends Instrument {
/** Builder class for {@link AsynchronousInstrument}. */
interface Builder<R> extends Instrument.Builder {
/**
* Sets a consumer that gets executed every collection interval.
*
* <p>Evaluation is deferred until needed, if this {@code AsynchronousInstrument} metric is not
* exported then it will never be called.
*
* @param updater the consumer to be executed before export.
*/
Builder<R> setUpdater(Consumer<R> updater);
@Override
AsynchronousInstrument build();
}
/** The result pass to the updater. */
interface LongResult {

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link AsynchronousInstrument}. */
public interface AsynchronousInstrumentBuilder<R> extends InstrumentBuilder {
/**
* Sets a consumer that gets executed every collection interval.
*
* <p>Evaluation is deferred until needed, if this {@code AsynchronousInstrument} metric is not
* exported then it will never be called.
*
* @param updater the consumer to be executed before export.
*/
AsynchronousInstrumentBuilder<R> setUpdater(Consumer<R> updater);
@Override
AsynchronousInstrument build();
}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link DoubleCounter}. */
@ThreadSafe
public interface BoundDoubleCounter extends BoundSynchronousInstrument {
/**
* Adds the given {@code increment} to the current value. The values cannot be negative.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(double increment);
@Override
void unbind();
}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link DoubleUpDownCounter}. */
@ThreadSafe
public interface BoundDoubleUpDownCounter extends BoundSynchronousInstrument {
/**
* Adds the given {@code increment} to the current value.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(double increment);
@Override
void unbind();
}

View File

@ -0,0 +1,23 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link DoubleValueRecorder}. */
@ThreadSafe
public interface BoundDoubleValueRecorder extends BoundSynchronousInstrument {
/**
* Records the given measurement, associated with the current {@code Context}.
*
* @param value the measurement to record.
* @throws IllegalArgumentException if value is negative.
*/
void record(double value);
@Override
void unbind();
}

View File

@ -0,0 +1,25 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link LongCounter}. */
@ThreadSafe
public interface BoundLongCounter extends BoundSynchronousInstrument {
/**
* Adds the given {@code increment} to the current value. The values cannot be negative.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(long increment);
@Override
void unbind();
}

View File

@ -0,0 +1,25 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link LongUpDownCounter}. */
@ThreadSafe
public interface BoundLongUpDownCounter extends BoundSynchronousInstrument {
/**
* Adds the given {@code increment} to the current value.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(long increment);
@Override
void unbind();
}

View File

@ -0,0 +1,23 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import javax.annotation.concurrent.ThreadSafe;
/** A {@code Bound Instrument} for a {@link LongValueRecorder}. */
@ThreadSafe
public interface BoundLongValueRecorder extends BoundSynchronousInstrument {
/**
* Records the given measurement, associated with the current {@code Context}.
*
* @param value the measurement to record.
* @throws IllegalArgumentException if value is negative.
*/
void record(long value);
@Override
void unbind();
}

View File

@ -0,0 +1,16 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
interface BoundSynchronousInstrument {
/**
* Unbinds the current {@code Bound} from the Instrument.
*
* <p>After this method returns the current instance {@code Bound} is considered invalid (not
* being managed by the instrument).
*/
void unbind();
}

View File

@ -30,84 +30,84 @@ final class DefaultMeter implements Meter {
}
@Override
public DoubleCounter.Builder doubleCounterBuilder(String name) {
public DoubleCounterBuilder doubleCounterBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleCounter.NoopBuilder();
}
@Override
public LongCounter.Builder longCounterBuilder(String name) {
public LongCounterBuilder longCounterBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongCounter.NoopBuilder();
}
@Override
public DoubleUpDownCounter.Builder doubleUpDownCounterBuilder(String name) {
public DoubleUpDownCounterBuilder doubleUpDownCounterBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleUpDownCounter.NoopBuilder();
}
@Override
public LongUpDownCounter.Builder longUpDownCounterBuilder(String name) {
public LongUpDownCounterBuilder longUpDownCounterBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongUpDownCounter.NoopBuilder();
}
@Override
public DoubleValueRecorder.Builder doubleValueRecorderBuilder(String name) {
public DoubleValueRecorderBuilder doubleValueRecorderBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleValueRecorder.NoopBuilder();
}
@Override
public LongValueRecorder.Builder longValueRecorderBuilder(String name) {
public LongValueRecorderBuilder longValueRecorderBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongValueRecorder.NoopBuilder();
}
@Override
public DoubleSumObserver.Builder doubleSumObserverBuilder(String name) {
public DoubleSumObserverBuilder doubleSumObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleSumObserver.NoopBuilder();
}
@Override
public LongSumObserver.Builder longSumObserverBuilder(String name) {
public LongSumObserverBuilder longSumObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongSumObserver.NoopBuilder();
}
@Override
public DoubleUpDownSumObserver.Builder doubleUpDownSumObserverBuilder(String name) {
public DoubleUpDownSumObserverBuilder doubleUpDownSumObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleUpDownSumObserver.NoopBuilder();
}
@Override
public LongUpDownSumObserver.Builder longUpDownSumObserverBuilder(String name) {
public LongUpDownSumObserverBuilder longUpDownSumObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongUpDownSumObserver.NoopBuilder();
}
@Override
public DoubleValueObserver.Builder doubleValueObserverBuilder(String name) {
public DoubleValueObserverBuilder doubleValueObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopDoubleValueObserver.NoopBuilder();
}
@Override
public LongValueObserver.Builder longValueObserverBuilder(String name) {
public LongValueObserverBuilder longValueObserverBuilder(String name) {
Objects.requireNonNull(name, "name");
Utils.checkArgument(StringUtils.isValidMetricName(name), ERROR_MESSAGE_INVALID_NAME);
return new NoopLongValueObserver.NoopBuilder();
@ -158,7 +158,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleCounterBuilder {
@Override
protected NoopBuilder getThis() {
@ -209,7 +209,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongCounterBuilder {
@Override
protected NoopBuilder getThis() {
@ -257,7 +257,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleUpDownCounterBuilder {
@Override
protected NoopBuilder getThis() {
@ -305,7 +305,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongUpDownCounterBuilder {
@Override
protected NoopBuilder getThis() {
@ -353,7 +353,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleValueRecorderBuilder {
@Override
protected NoopBuilder getThis() {
@ -401,7 +401,7 @@ final class DefaultMeter implements Meter {
}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongValueRecorderBuilder {
@Override
protected NoopBuilder getThis() {
@ -422,7 +422,7 @@ final class DefaultMeter implements Meter {
private NoopDoubleSumObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleSumObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -430,7 +430,7 @@ final class DefaultMeter implements Meter {
}
@Override
public Builder setUpdater(Consumer<DoubleResult> updater) {
public DoubleSumObserverBuilder setUpdater(Consumer<DoubleResult> updater) {
Objects.requireNonNull(updater, "callback");
return this;
}
@ -449,7 +449,7 @@ final class DefaultMeter implements Meter {
private NoopLongSumObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongSumObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -476,7 +476,7 @@ final class DefaultMeter implements Meter {
private NoopDoubleUpDownSumObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleUpDownSumObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -484,7 +484,7 @@ final class DefaultMeter implements Meter {
}
@Override
public Builder setUpdater(Consumer<DoubleResult> updater) {
public DoubleUpDownSumObserverBuilder setUpdater(Consumer<DoubleResult> updater) {
Objects.requireNonNull(updater, "callback");
return this;
}
@ -503,7 +503,7 @@ final class DefaultMeter implements Meter {
private NoopLongUpDownSumObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongUpDownSumObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -511,7 +511,7 @@ final class DefaultMeter implements Meter {
}
@Override
public Builder setUpdater(Consumer<LongResult> updater) {
public LongUpDownSumObserverBuilder setUpdater(Consumer<LongResult> updater) {
Objects.requireNonNull(updater, "callback");
return this;
}
@ -530,7 +530,7 @@ final class DefaultMeter implements Meter {
private NoopDoubleValueObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements DoubleValueObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -538,7 +538,7 @@ final class DefaultMeter implements Meter {
}
@Override
public Builder setUpdater(Consumer<DoubleResult> updater) {
public DoubleValueObserverBuilder setUpdater(Consumer<DoubleResult> updater) {
Objects.requireNonNull(updater, "callback");
return this;
}
@ -557,7 +557,7 @@ final class DefaultMeter implements Meter {
private NoopLongValueObserver() {}
private static final class NoopBuilder extends NoopAbstractInstrumentBuilder<NoopBuilder>
implements Builder {
implements LongValueObserverBuilder {
@Override
protected NoopBuilder getThis() {
@ -565,7 +565,7 @@ final class DefaultMeter implements Meter {
}
@Override
public Builder setUpdater(Consumer<LongResult> updater) {
public LongValueObserverBuilder setUpdater(Consumer<LongResult> updater) {
Objects.requireNonNull(updater, "callback");
return this;
}
@ -625,7 +625,7 @@ final class DefaultMeter implements Meter {
private abstract static class NoopAbstractInstrumentBuilder<
B extends NoopAbstractInstrumentBuilder<B>>
implements Instrument.Builder {
implements InstrumentBuilder {
@Override
public B setDescription(String description) {

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.DoubleCounter.BoundDoubleCounter;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -61,32 +60,4 @@ public interface DoubleCounter extends SynchronousInstrument<BoundDoubleCounter>
@Override
BoundDoubleCounter bind(Labels labels);
/** A {@code Bound Instrument} for a {@link DoubleCounter}. */
@ThreadSafe
interface BoundDoubleCounter extends SynchronousInstrument.BoundInstrument {
/**
* Adds the given {@code increment} to the current value. The values cannot be negative.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(double increment);
@Override
void unbind();
}
/** Builder class for {@link DoubleCounter}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
DoubleCounter build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link DoubleCounter}. */
public interface DoubleCounterBuilder extends SynchronousInstrumentBuilder {
@Override
DoubleCounterBuilder setDescription(String description);
@Override
DoubleCounterBuilder setUnit(String unit);
@Override
DoubleCounter build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -47,20 +46,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface DoubleSumObserver extends AsynchronousInstrument {
/** Builder class for {@link DoubleSumObserver}. */
interface Builder extends AsynchronousInstrument.Builder<DoubleResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<DoubleResult> updater);
@Override
DoubleSumObserver build();
}
}
public interface DoubleSumObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link DoubleSumObserver}. */
public interface DoubleSumObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.DoubleResult> {
@Override
DoubleSumObserverBuilder setDescription(String description);
@Override
DoubleSumObserverBuilder setUnit(String unit);
@Override
DoubleSumObserverBuilder setUpdater(Consumer<AsynchronousInstrument.DoubleResult> updater);
@Override
DoubleSumObserver build();
}

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.DoubleUpDownCounter.BoundDoubleUpDownCounter;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -64,32 +63,4 @@ public interface DoubleUpDownCounter extends SynchronousInstrument<BoundDoubleUp
@Override
BoundDoubleUpDownCounter bind(Labels labels);
/** A {@code Bound Instrument} for a {@link DoubleUpDownCounter}. */
@ThreadSafe
interface BoundDoubleUpDownCounter extends BoundInstrument {
/**
* Adds the given {@code increment} to the current value.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(double increment);
@Override
void unbind();
}
/** Builder class for {@link DoubleUpDownCounter}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
DoubleUpDownCounter build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link DoubleUpDownCounter}. */
public interface DoubleUpDownCounterBuilder extends SynchronousInstrumentBuilder {
@Override
DoubleUpDownCounterBuilder setDescription(String description);
@Override
DoubleUpDownCounterBuilder setUnit(String unit);
@Override
DoubleUpDownCounter build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -47,20 +46,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface DoubleUpDownSumObserver extends AsynchronousInstrument {
/** Builder class for {@link DoubleUpDownSumObserver}. */
interface Builder extends AsynchronousInstrument.Builder<DoubleResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<DoubleResult> updater);
@Override
DoubleUpDownSumObserver build();
}
}
public interface DoubleUpDownSumObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link DoubleUpDownSumObserver}. */
public interface DoubleUpDownSumObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.DoubleResult> {
@Override
DoubleUpDownSumObserverBuilder setDescription(String description);
@Override
DoubleUpDownSumObserverBuilder setUnit(String unit);
@Override
DoubleUpDownSumObserverBuilder setUpdater(Consumer<AsynchronousInstrument.DoubleResult> updater);
@Override
DoubleUpDownSumObserver build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -43,20 +42,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface DoubleValueObserver extends AsynchronousInstrument {
/** Builder class for {@link DoubleValueObserver}. */
interface Builder extends AsynchronousInstrument.Builder<DoubleResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<DoubleResult> updater);
@Override
DoubleValueObserver build();
}
}
public interface DoubleValueObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link DoubleValueObserver}. */
public interface DoubleValueObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.DoubleResult> {
@Override
DoubleValueObserverBuilder setDescription(String description);
@Override
DoubleValueObserverBuilder setUnit(String unit);
@Override
DoubleValueObserverBuilder setUpdater(Consumer<AsynchronousInstrument.DoubleResult> updater);
@Override
DoubleValueObserver build();
}

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.DoubleValueRecorder.BoundDoubleValueRecorder;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -72,31 +71,4 @@ public interface DoubleValueRecorder extends SynchronousInstrument<BoundDoubleVa
@Override
BoundDoubleValueRecorder bind(Labels labels);
/** A {@code Bound Instrument} for a {@link DoubleValueRecorder}. */
@ThreadSafe
interface BoundDoubleValueRecorder extends SynchronousInstrument.BoundInstrument {
/**
* Records the given measurement, associated with the current {@code Context}.
*
* @param value the measurement to record.
* @throws IllegalArgumentException if value is negative.
*/
void record(double value);
@Override
void unbind();
}
/** Builder class for {@link DoubleValueRecorder}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
DoubleValueRecorder build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link DoubleValueRecorder}. */
public interface DoubleValueRecorderBuilder extends SynchronousInstrumentBuilder {
@Override
DoubleValueRecorderBuilder setDescription(String description);
@Override
DoubleValueRecorderBuilder setUnit(String unit);
@Override
DoubleValueRecorder build();
}

View File

@ -10,34 +10,4 @@ import javax.annotation.concurrent.ThreadSafe;
/** Base interface for all metrics defined in this package. */
@ThreadSafe
@SuppressWarnings("InterfaceWithOnlyStatics")
public interface Instrument {
/** The {@code Builder} class for the {@code Instrument}. */
interface Builder {
/**
* Sets the description of the {@code Instrument}.
*
* <p>Default value is {@code ""}.
*
* @param description the description of the Instrument.
* @return this.
*/
Builder setDescription(String description);
/**
* Sets the unit of the {@code Instrument}.
*
* <p>Default value is {@code "1"}.
*
* @param unit the unit of the Instrument.
* @return this.
*/
Builder setUnit(String unit);
/**
* Builds and returns a {@code Instrument} with the desired options.
*
* @return a {@code Instrument} with the desired options.
*/
Instrument build();
}
}
public interface Instrument {}

View File

@ -0,0 +1,36 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** The {@code Builder} class for the {@code Instrument}. */
public interface InstrumentBuilder {
/**
* Sets the description of the {@code Instrument}.
*
* <p>Default value is {@code ""}.
*
* @param description the description of the Instrument.
* @return this.
*/
InstrumentBuilder setDescription(String description);
/**
* Sets the unit of the {@code Instrument}.
*
* <p>Default value is {@code "1"}.
*
* @param unit the unit of the Instrument.
* @return this.
*/
InstrumentBuilder setUnit(String unit);
/**
* Builds and returns a {@code Instrument} with the desired options.
*
* @return a {@code Instrument} with the desired options.
*/
Instrument build();
}

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.LongCounter.BoundLongCounter;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -61,33 +60,4 @@ public interface LongCounter extends SynchronousInstrument<BoundLongCounter> {
@Override
BoundLongCounter bind(Labels labels);
/** A {@code Bound Instrument} for a {@link LongCounter}. */
@ThreadSafe
interface BoundLongCounter extends SynchronousInstrument.BoundInstrument {
/**
* Adds the given {@code increment} to the current value. The values cannot be negative.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(long increment);
@Override
void unbind();
}
/** Builder class for {@link LongCounter}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
LongCounter build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link LongCounter}. */
public interface LongCounterBuilder extends SynchronousInstrumentBuilder {
@Override
LongCounterBuilder setDescription(String description);
@Override
LongCounterBuilder setUnit(String unit);
@Override
LongCounter build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -47,20 +46,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface LongSumObserver extends AsynchronousInstrument {
/** Builder class for {@link LongSumObserver}. */
interface Builder extends AsynchronousInstrument.Builder<LongResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<LongResult> updater);
@Override
LongSumObserver build();
}
}
public interface LongSumObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link LongSumObserver}. */
public interface LongSumObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.LongResult> {
@Override
LongSumObserverBuilder setDescription(String description);
@Override
LongSumObserverBuilder setUnit(String unit);
@Override
LongSumObserverBuilder setUpdater(Consumer<AsynchronousInstrument.LongResult> updater);
@Override
LongSumObserver build();
}

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.LongUpDownCounter.BoundLongUpDownCounter;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -64,33 +63,4 @@ public interface LongUpDownCounter extends SynchronousInstrument<BoundLongUpDown
@Override
BoundLongUpDownCounter bind(Labels labels);
/** A {@code Bound Instrument} for a {@link LongUpDownCounter}. */
@ThreadSafe
interface BoundLongUpDownCounter extends BoundInstrument {
/**
* Adds the given {@code increment} to the current value.
*
* <p>The value added is associated with the current {@code Context}.
*
* @param increment the value to add.
*/
void add(long increment);
@Override
void unbind();
}
/** Builder class for {@link LongUpDownCounter}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
LongUpDownCounter build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link LongUpDownCounter}. */
public interface LongUpDownCounterBuilder extends SynchronousInstrumentBuilder {
@Override
LongUpDownCounterBuilder setDescription(String description);
@Override
LongUpDownCounterBuilder setUnit(String unit);
@Override
LongUpDownCounter build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -47,20 +46,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface LongUpDownSumObserver extends AsynchronousInstrument {
/** Builder class for {@link LongUpDownSumObserver}. */
interface Builder extends AsynchronousInstrument.Builder<LongResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<LongResult> updater);
@Override
LongUpDownSumObserver build();
}
}
public interface LongUpDownSumObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link LongUpDownSumObserver}. */
public interface LongUpDownSumObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.LongResult> {
@Override
LongUpDownSumObserverBuilder setDescription(String description);
@Override
LongUpDownSumObserverBuilder setUnit(String unit);
@Override
LongUpDownSumObserverBuilder setUpdater(Consumer<AsynchronousInstrument.LongResult> updater);
@Override
LongUpDownSumObserver build();
}

View File

@ -5,7 +5,6 @@
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -43,20 +42,4 @@ import javax.annotation.concurrent.ThreadSafe;
* }</pre>
*/
@ThreadSafe
public interface LongValueObserver extends AsynchronousInstrument {
/** Builder class for {@link LongValueObserver}. */
interface Builder extends AsynchronousInstrument.Builder<LongResult> {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
Builder setUpdater(Consumer<LongResult> updater);
@Override
LongValueObserver build();
}
}
public interface LongValueObserver extends AsynchronousInstrument {}

View File

@ -0,0 +1,24 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
import java.util.function.Consumer;
/** Builder class for {@link LongValueObserver}. */
public interface LongValueObserverBuilder
extends AsynchronousInstrumentBuilder<AsynchronousInstrument.LongResult> {
@Override
LongValueObserverBuilder setDescription(String description);
@Override
LongValueObserverBuilder setUnit(String unit);
@Override
LongValueObserverBuilder setUpdater(Consumer<AsynchronousInstrument.LongResult> updater);
@Override
LongValueObserver build();
}

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.LongValueRecorder.BoundLongValueRecorder;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -72,31 +71,4 @@ public interface LongValueRecorder extends SynchronousInstrument<BoundLongValueR
@Override
BoundLongValueRecorder bind(Labels labels);
/** A {@code Bound Instrument} for a {@link LongValueRecorder}. */
@ThreadSafe
interface BoundLongValueRecorder extends SynchronousInstrument.BoundInstrument {
/**
* Records the given measurement, associated with the current {@code Context}.
*
* @param value the measurement to record.
* @throws IllegalArgumentException if value is negative.
*/
void record(long value);
@Override
void unbind();
}
/** Builder class for {@link LongValueRecorder}. */
interface Builder extends SynchronousInstrument.Builder {
@Override
Builder setDescription(String description);
@Override
Builder setUnit(String unit);
@Override
LongValueRecorder build();
}
}

View File

@ -0,0 +1,18 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link LongValueRecorder}. */
public interface LongValueRecorderBuilder extends SynchronousInstrumentBuilder {
@Override
LongValueRecorderBuilder setDescription(String description);
@Override
LongValueRecorderBuilder setUnit(String unit);
@Override
LongValueRecorder build();
}

View File

@ -43,7 +43,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleCounter.Builder doubleCounterBuilder(String name);
DoubleCounterBuilder doubleCounterBuilder(String name);
/**
* Returns a builder for a {@link LongCounter}.
@ -55,7 +55,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongCounter.Builder longCounterBuilder(String name);
LongCounterBuilder longCounterBuilder(String name);
/**
* Returns a builder for a {@link DoubleUpDownCounter}.
@ -67,7 +67,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleUpDownCounter.Builder doubleUpDownCounterBuilder(String name);
DoubleUpDownCounterBuilder doubleUpDownCounterBuilder(String name);
/**
* Returns a builder for a {@link LongUpDownCounter}.
@ -79,7 +79,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongUpDownCounter.Builder longUpDownCounterBuilder(String name);
LongUpDownCounterBuilder longUpDownCounterBuilder(String name);
/**
* Returns a new builder for a {@link DoubleValueRecorder}.
@ -91,7 +91,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleValueRecorder.Builder doubleValueRecorderBuilder(String name);
DoubleValueRecorderBuilder doubleValueRecorderBuilder(String name);
/**
* Returns a new builder for a {@link LongValueRecorder}.
@ -103,7 +103,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongValueRecorder.Builder longValueRecorderBuilder(String name);
LongValueRecorderBuilder longValueRecorderBuilder(String name);
/**
* Returns a new builder for a {@link DoubleSumObserver}.
@ -115,7 +115,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleSumObserver.Builder doubleSumObserverBuilder(String name);
DoubleSumObserverBuilder doubleSumObserverBuilder(String name);
/**
* Returns a new builder for a {@link LongSumObserver}.
@ -127,7 +127,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongSumObserver.Builder longSumObserverBuilder(String name);
LongSumObserverBuilder longSumObserverBuilder(String name);
/**
* Returns a new builder for a {@link DoubleUpDownSumObserver}.
@ -139,7 +139,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleUpDownSumObserver.Builder doubleUpDownSumObserverBuilder(String name);
DoubleUpDownSumObserverBuilder doubleUpDownSumObserverBuilder(String name);
/**
* Returns a new builder for a {@link LongUpDownSumObserver}.
@ -151,7 +151,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongUpDownSumObserver.Builder longUpDownSumObserverBuilder(String name);
LongUpDownSumObserverBuilder longUpDownSumObserverBuilder(String name);
/**
* Returns a new builder for a {@link DoubleValueObserver}.
@ -163,7 +163,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
DoubleValueObserver.Builder doubleValueObserverBuilder(String name);
DoubleValueObserverBuilder doubleValueObserverBuilder(String name);
/**
* Returns a new builder for a {@link LongValueObserver}.
@ -175,7 +175,7 @@ public interface Meter {
* @throws IllegalArgumentException if different metric with the same name already registered.
* @throws IllegalArgumentException if the {@code name} does not match the requirements.
*/
LongValueObserver.Builder longValueObserverBuilder(String name);
LongValueObserverBuilder longValueObserverBuilder(String name);
/**
* Utility method that allows users to atomically record measurements to a set of Instruments with

View File

@ -6,7 +6,6 @@
package io.opentelemetry.api.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.SynchronousInstrument.BoundInstrument;
import javax.annotation.concurrent.ThreadSafe;
/**
@ -19,7 +18,7 @@ import javax.annotation.concurrent.ThreadSafe;
* @param <B> the specific type of Bound Instrument this instrument can provide.
*/
@ThreadSafe
public interface SynchronousInstrument<B extends BoundInstrument> extends Instrument {
public interface SynchronousInstrument<B extends BoundSynchronousInstrument> extends Instrument {
/**
* Returns a {@code Bound Instrument} associated with the specified labels. Multiples requests
* with the same set of labels may return the same {@code Bound Instrument} instance.
@ -32,20 +31,4 @@ public interface SynchronousInstrument<B extends BoundInstrument> extends Instru
* @throws NullPointerException if {@code labelValues} is null.
*/
B bind(Labels labels);
interface BoundInstrument {
/**
* Unbinds the current {@code Bound} from the Instrument.
*
* <p>After this method returns the current instance {@code Bound} is considered invalid (not
* being managed by the instrument).
*/
void unbind();
}
/** Builder class for {@link SynchronousInstrument}. */
interface Builder extends Instrument.Builder {
@Override
SynchronousInstrument<?> build();
}
}

View File

@ -0,0 +1,12 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.api.metrics;
/** Builder class for {@link SynchronousInstrument}. */
public interface SynchronousInstrumentBuilder extends InstrumentBuilder {
@Override
SynchronousInstrument<?> build();
}

View File

@ -9,7 +9,6 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.internal.StringUtils;
import io.opentelemetry.api.metrics.DoubleCounter.BoundDoubleCounter;
import java.util.Arrays;
import org.junit.jupiter.api.Test;

View File

@ -9,7 +9,6 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.internal.StringUtils;
import io.opentelemetry.api.metrics.DoubleUpDownCounter.BoundDoubleUpDownCounter;
import java.util.Arrays;
import org.junit.jupiter.api.Test;

View File

@ -8,7 +8,6 @@ package io.opentelemetry.api.metrics;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.DoubleValueRecorder.BoundDoubleValueRecorder;
import java.util.Arrays;
import org.junit.jupiter.api.Test;

View File

@ -9,7 +9,6 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.internal.StringUtils;
import io.opentelemetry.api.metrics.LongCounter.BoundLongCounter;
import java.util.Arrays;
import org.junit.jupiter.api.Test;

View File

@ -9,7 +9,6 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.internal.StringUtils;
import io.opentelemetry.api.metrics.LongUpDownCounter.BoundLongUpDownCounter;
import java.util.Arrays;
import org.junit.jupiter.api.Test;

View File

@ -10,7 +10,6 @@ import static java.util.Arrays.fill;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.LongValueRecorder.BoundLongValueRecorder;
import org.junit.jupiter.api.Test;
/** Tests for {@link LongValueRecorder}. */

View File

@ -11,6 +11,7 @@ import com.google.common.util.concurrent.MoreExecutors;
import io.grpc.ConnectivityState;
import io.grpc.ManagedChannel;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.GlobalMetricsProvider;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.Meter;
@ -90,9 +91,9 @@ public final class OtlpGrpcSpanExporter implements SpanExporter {
private final ManagedChannel managedChannel;
private final long timeoutNanos;
private final LongCounter.BoundLongCounter spansSeen;
private final LongCounter.BoundLongCounter spansExportedSuccess;
private final LongCounter.BoundLongCounter spansExportedFailure;
private final BoundLongCounter spansSeen;
private final BoundLongCounter spansExportedSuccess;
private final BoundLongCounter spansExportedFailure;
/**
* Creates a new OTLP gRPC Span Reporter with the given name, using the given channel.

View File

@ -7,9 +7,9 @@ package io.opentelemetry.sdk.logging.export;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.internal.Utils;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.GlobalMetricsProvider;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.LongCounter.BoundLongCounter;
import io.opentelemetry.api.metrics.Meter;
import io.opentelemetry.sdk.common.CompletableResultCode;
import io.opentelemetry.sdk.internal.DaemonThreadFactory;

View File

@ -7,12 +7,14 @@ package io.opentelemetry.sdk.metrics;
import com.google.errorprone.annotations.Immutable;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleCounter;
import io.opentelemetry.api.metrics.BoundDoubleValueRecorder;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.BoundLongValueRecorder;
import io.opentelemetry.api.metrics.DoubleCounter;
import io.opentelemetry.api.metrics.DoubleValueRecorder;
import io.opentelemetry.api.metrics.DoubleValueRecorder.BoundDoubleValueRecorder;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.LongValueRecorder;
import io.opentelemetry.api.metrics.LongValueRecorder.BoundLongValueRecorder;
import io.opentelemetry.api.metrics.Meter;
/**
@ -26,7 +28,7 @@ public enum MetricsTestOperationBuilder {
meter -> {
return new Operation() {
final LongCounter metric = meter.longCounterBuilder("long_counter").build();
final LongCounter.BoundLongCounter boundMetric =
final BoundLongCounter boundMetric =
meter
.longCounterBuilder("bound_long_counter")
.build()
@ -47,7 +49,7 @@ public enum MetricsTestOperationBuilder {
meter -> {
return new Operation() {
final DoubleCounter metric = meter.doubleCounterBuilder("double_counter").build();
final DoubleCounter.BoundDoubleCounter boundMetric =
final BoundDoubleCounter boundMetric =
meter
.doubleCounterBuilder("bound_double_counter")
.build()

View File

@ -8,6 +8,7 @@ package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.internal.StringUtils;
import io.opentelemetry.api.internal.Utils;
import io.opentelemetry.api.metrics.Instrument;
import io.opentelemetry.api.metrics.InstrumentBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -53,7 +54,7 @@ abstract class AbstractInstrument implements Instrument {
}
abstract static class Builder<B extends AbstractInstrument.Builder<?>>
implements Instrument.Builder {
implements InstrumentBuilder {
/* VisibleForTesting */ static final String ERROR_MESSAGE_INVALID_NAME =
"Name should be a ASCII string with a length no greater than "
+ StringUtils.METRIC_NAME_MAX_LENGTH

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleCounter;
import io.opentelemetry.api.metrics.DoubleCounter;
import io.opentelemetry.api.metrics.DoubleCounterBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -42,7 +44,7 @@ final class DoubleCounterSdk extends AbstractSynchronousInstrument implements Do
return new BoundInstrument(acquireHandle(labels));
}
static final class BoundInstrument implements DoubleCounter.BoundDoubleCounter {
static final class BoundInstrument implements BoundDoubleCounter {
private final AggregatorHandle<?> aggregatorHandle;
BoundInstrument(AggregatorHandle<?> aggregatorHandle) {
@ -64,7 +66,7 @@ final class DoubleCounterSdk extends AbstractSynchronousInstrument implements Do
}
static final class Builder extends AbstractSynchronousInstrumentBuilder<DoubleCounterSdk.Builder>
implements DoubleCounter.Builder {
implements DoubleCounterBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.DoubleSumObserver;
import io.opentelemetry.api.metrics.DoubleSumObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -20,7 +21,7 @@ final class DoubleSumObserverSdk extends AbstractAsynchronousInstrument
static final class Builder
extends AbstractDoubleAsynchronousInstrumentBuilder<DoubleSumObserverSdk.Builder>
implements DoubleSumObserver.Builder {
implements DoubleSumObserverBuilder {
Builder(
String name,

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleUpDownCounter;
import io.opentelemetry.api.metrics.DoubleUpDownCounter;
import io.opentelemetry.api.metrics.DoubleUpDownCounterBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -60,7 +62,7 @@ final class DoubleUpDownCounterSdk extends AbstractSynchronousInstrument
static final class Builder
extends AbstractSynchronousInstrumentBuilder<DoubleUpDownCounterSdk.Builder>
implements DoubleUpDownCounter.Builder {
implements DoubleUpDownCounterBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.DoubleUpDownSumObserver;
import io.opentelemetry.api.metrics.DoubleUpDownSumObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -20,7 +21,7 @@ final class DoubleUpDownSumObserverSdk extends AbstractAsynchronousInstrument
static final class Builder
extends AbstractDoubleAsynchronousInstrumentBuilder<DoubleUpDownSumObserverSdk.Builder>
implements DoubleUpDownSumObserver.Builder {
implements DoubleUpDownSumObserverBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.DoubleValueObserver;
import io.opentelemetry.api.metrics.DoubleValueObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -20,7 +21,7 @@ final class DoubleValueObserverSdk extends AbstractAsynchronousInstrument
static final class Builder
extends AbstractDoubleAsynchronousInstrumentBuilder<DoubleValueObserverSdk.Builder>
implements DoubleValueObserver.Builder {
implements DoubleValueObserverBuilder {
Builder(
String name,

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleValueRecorder;
import io.opentelemetry.api.metrics.DoubleValueRecorder;
import io.opentelemetry.api.metrics.DoubleValueRecorderBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -60,7 +62,7 @@ final class DoubleValueRecorderSdk extends AbstractSynchronousInstrument
static final class Builder
extends AbstractSynchronousInstrumentBuilder<DoubleValueRecorderSdk.Builder>
implements DoubleValueRecorder.Builder {
implements DoubleValueRecorderBuilder {
Builder(
String name,

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.LongCounterBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -42,7 +44,7 @@ final class LongCounterSdk extends AbstractSynchronousInstrument implements Long
return new BoundInstrument(acquireHandle(labels));
}
static final class BoundInstrument implements LongCounter.BoundLongCounter {
static final class BoundInstrument implements BoundLongCounter {
private final AggregatorHandle<?> aggregatorHandle;
BoundInstrument(AggregatorHandle<?> aggregatorHandle) {
@ -64,7 +66,7 @@ final class LongCounterSdk extends AbstractSynchronousInstrument implements Long
}
static final class Builder extends AbstractSynchronousInstrumentBuilder<Builder>
implements LongCounter.Builder {
implements LongCounterBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.LongSumObserver;
import io.opentelemetry.api.metrics.LongSumObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -19,7 +20,7 @@ final class LongSumObserverSdk extends AbstractAsynchronousInstrument implements
static final class Builder
extends AbstractLongAsynchronousInstrumentBuilder<LongSumObserverSdk.Builder>
implements LongSumObserver.Builder {
implements LongSumObserverBuilder {
Builder(
String name,

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongUpDownCounter;
import io.opentelemetry.api.metrics.LongUpDownCounter;
import io.opentelemetry.api.metrics.LongUpDownCounterBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -60,7 +62,7 @@ final class LongUpDownCounterSdk extends AbstractSynchronousInstrument
static final class Builder
extends AbstractSynchronousInstrumentBuilder<LongUpDownCounterSdk.Builder>
implements LongUpDownCounter.Builder {
implements LongUpDownCounterBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.LongUpDownSumObserver;
import io.opentelemetry.api.metrics.LongUpDownSumObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -20,7 +21,7 @@ final class LongUpDownSumObserverSdk extends AbstractAsynchronousInstrument
static final class Builder
extends AbstractLongAsynchronousInstrumentBuilder<LongUpDownSumObserverSdk.Builder>
implements LongUpDownSumObserver.Builder {
implements LongUpDownSumObserverBuilder {
Builder(
String name,

View File

@ -6,6 +6,7 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.metrics.LongValueObserver;
import io.opentelemetry.api.metrics.LongValueObserverBuilder;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
import io.opentelemetry.sdk.metrics.common.InstrumentValueType;
@ -20,7 +21,7 @@ final class LongValueObserverSdk extends AbstractAsynchronousInstrument
static final class Builder
extends AbstractLongAsynchronousInstrumentBuilder<LongValueObserverSdk.Builder>
implements LongValueObserver.Builder {
implements LongValueObserverBuilder {
Builder(
String name,

View File

@ -6,7 +6,9 @@
package io.opentelemetry.sdk.metrics;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongValueRecorder;
import io.opentelemetry.api.metrics.LongValueRecorder;
import io.opentelemetry.api.metrics.LongValueRecorderBuilder;
import io.opentelemetry.sdk.metrics.aggregator.AggregatorHandle;
import io.opentelemetry.sdk.metrics.common.InstrumentDescriptor;
import io.opentelemetry.sdk.metrics.common.InstrumentType;
@ -60,7 +62,7 @@ final class LongValueRecorderSdk extends AbstractSynchronousInstrument
static final class Builder
extends AbstractSynchronousInstrumentBuilder<LongValueRecorderSdk.Builder>
implements LongValueRecorder.Builder {
implements LongValueRecorderBuilder {
Builder(
String name,

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleCounter;
import io.opentelemetry.api.metrics.DoubleCounter;
import io.opentelemetry.api.metrics.DoubleCounter.BoundDoubleCounter;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;
@ -254,7 +254,7 @@ class DoubleCounterSdkTest {
}
private static class OperationUpdaterWithBinding extends OperationUpdater {
private final DoubleCounter.BoundDoubleCounter boundDoubleCounter;
private final BoundDoubleCounter boundDoubleCounter;
private OperationUpdaterWithBinding(BoundDoubleCounter boundDoubleCounter) {
this.boundDoubleCounter = boundDoubleCounter;

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleUpDownCounter;
import io.opentelemetry.api.metrics.DoubleUpDownCounter;
import io.opentelemetry.api.metrics.DoubleUpDownCounter.BoundDoubleUpDownCounter;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundDoubleValueRecorder;
import io.opentelemetry.api.metrics.DoubleValueRecorder;
import io.opentelemetry.api.metrics.DoubleValueRecorder.BoundDoubleValueRecorder;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.LongCounter.BoundLongCounter;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;
@ -250,7 +250,7 @@ class LongCounterSdkTest {
}
private static class OperationUpdaterWithBinding extends OperationUpdater {
private final LongCounter.BoundLongCounter boundLongCounter;
private final BoundLongCounter boundLongCounter;
private OperationUpdaterWithBinding(BoundLongCounter boundLongCounter) {
this.boundLongCounter = boundLongCounter;

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongUpDownCounter;
import io.opentelemetry.api.metrics.LongUpDownCounter;
import io.opentelemetry.api.metrics.LongUpDownCounter.BoundLongUpDownCounter;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;

View File

@ -11,8 +11,8 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongValueRecorder;
import io.opentelemetry.api.metrics.LongValueRecorder;
import io.opentelemetry.api.metrics.LongValueRecorder.BoundLongValueRecorder;
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
import io.opentelemetry.sdk.internal.TestClock;
import io.opentelemetry.sdk.metrics.StressTestRunner.OperationUpdater;

View File

@ -6,9 +6,9 @@
package io.opentelemetry.sdk.trace.export;
import io.opentelemetry.api.common.Labels;
import io.opentelemetry.api.metrics.BoundLongCounter;
import io.opentelemetry.api.metrics.GlobalMetricsProvider;
import io.opentelemetry.api.metrics.LongCounter;
import io.opentelemetry.api.metrics.LongCounter.BoundLongCounter;
import io.opentelemetry.api.metrics.Meter;
import io.opentelemetry.context.Context;
import io.opentelemetry.sdk.common.CompletableResultCode;