summaryrefslogtreecommitdiff
path: root/vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php
diff options
context:
space:
mode:
authorAndrew Dolgov <fox@fakecake.org>2024-10-01 16:00:34 +0300
committerAndrew Dolgov <fox@fakecake.org>2024-10-01 16:00:34 +0300
commit884fd92f1320d17daebb772297da03fb2cfa59b8 (patch)
tree3aa80af1df6ffa1d70f21f9fc4411f451c8b6c56 /vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php
parent8fcc68baf5b0ff964a0a4a045353462586e0e316 (diff)
drop opentelemetry
Diffstat (limited to 'vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php')
-rw-r--r--vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php61
1 files changed, 0 insertions, 61 deletions
diff --git a/vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php b/vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php
deleted file mode 100644
index b7fdcf5f8..000000000
--- a/vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTelemetry\SDK\Metrics;
-
-use ArrayAccess;
-use OpenTelemetry\API\Metrics\ObservableCallbackInterface;
-use OpenTelemetry\API\Metrics\ObserverInterface;
-use function OpenTelemetry\SDK\Common\Util\closure;
-use function OpenTelemetry\SDK\Common\Util\weaken;
-use OpenTelemetry\SDK\Metrics\MetricRegistry\MetricWriterInterface;
-
-/**
- * @internal
- */
-trait ObservableInstrumentTrait
-{
- private MetricWriterInterface $writer;
- private Instrument $instrument;
- private ReferenceCounterInterface $referenceCounter;
- private ArrayAccess $destructors;
-
- public function __construct(
- MetricWriterInterface $writer,
- Instrument $instrument,
- ReferenceCounterInterface $referenceCounter,
- ArrayAccess $destructors
- ) {
- $this->writer = $writer;
- $this->instrument = $instrument;
- $this->referenceCounter = $referenceCounter;
- $this->destructors = $destructors;
-
- $this->referenceCounter->acquire();
- }
-
- public function __destruct()
- {
- $this->referenceCounter->release();
- }
-
- /**
- * @param callable(ObserverInterface): void $callback
- */
- public function observe(callable $callback): ObservableCallbackInterface
- {
- $callback = weaken(closure($callback), $target);
-
- $callbackId = $this->writer->registerCallback($callback, $this->instrument);
- $this->referenceCounter->acquire();
-
- $destructor = null;
- if ($target) {
- $destructor = $this->destructors[$target] ??= new ObservableCallbackDestructor($this->writer, $this->referenceCounter);
- $destructor->callbackIds[$callbackId] = $callbackId;
- }
-
- return new ObservableCallback($this->writer, $this->referenceCounter, $callbackId, $destructor, $target);
- }
-}