diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2024-10-01 14:54:29 +0000 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2024-10-01 14:54:29 +0000 |
| commit | df33ddaea1e46b5b923440d6383fa3ae85c4d60b (patch) | |
| tree | 89c510638669466453c7451f5eb493f50e850de0 /vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php | |
| parent | 8fcc68baf5b0ff964a0a4a045353462586e0e316 (diff) | |
| parent | 7e0f5f295c0480023098edca5e3f5a806bd93bab (diff) | |
Merge branch 'drop-opentelemetry' into 'master'
drop opentelemetry
See merge request tt-rss/tt-rss!68
Diffstat (limited to 'vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php')
| -rw-r--r-- | vendor/open-telemetry/sdk/Metrics/ObservableInstrumentTrait.php | 61 |
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); - } -} |