class ObservableCallback
@internal
Hierarchy
- class \OpenTelemetry\SDK\Metrics\ObservableCallback implements \OpenTelemetry\API\Metrics\ObservableCallbackInterface
Expanded class hierarchy of ObservableCallback
File
-
vendor/
open-telemetry/ sdk/ Metrics/ ObservableCallback.php, line 14
Namespace
OpenTelemetry\SDK\MetricsView source
final class ObservableCallback implements ObservableCallbackInterface {
public function __construct(MetricWriterInterface $writer, ReferenceCounterInterface $referenceCounter, ?int $callbackId, ?ObservableCallbackDestructor $callbackDestructor, ?object $target) {
}
public function detach() : void {
if ($this->callbackId === null) {
return;
}
$this->writer
->unregisterCallback($this->callbackId);
$this->referenceCounter
->release();
if ($this->callbackDestructor !== null) {
unset($this->callbackDestructor->callbackIds[$this->callbackId]);
if (!$this->callbackDestructor->callbackIds) {
assert($this->target !== null);
unset($this->callbackDestructor->destructors[$this->target]);
}
}
$this->callbackId = null;
$this->target = null;
}
public function __destruct() {
if ($this->callbackDestructor !== null) {
return;
}
if ($this->callbackId === null) {
return;
}
$this->referenceCounter
->acquire(true);
$this->referenceCounter
->release();
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
ObservableCallback::detach | public | function | Detaches the associated callback from the instrument. | Overrides ObservableCallbackInterface::detach |
ObservableCallback::__construct | public | function | ||
ObservableCallback::__destruct | public | function |