class ViewTemplate
Hierarchy
- class \OpenTelemetry\SDK\Metrics\View\ViewTemplate
Expanded class hierarchy of ViewTemplate
File
-
vendor/
open-telemetry/ sdk/ Metrics/ View/ ViewTemplate.php, line 11
Namespace
OpenTelemetry\SDK\Metrics\ViewView source
final class ViewTemplate {
private ?string $name = null;
private ?string $description = null;
/** @var list<string> */
private ?array $attributeKeys = null;
private ?AggregationInterface $aggregation = null;
private function __construct() {
}
public static function create() : self {
static $instance;
return $instance ??= new self();
}
public function withName(string $name) : self {
$self = clone $this;
$self->name = $name;
return $self;
}
public function withDescription(string $description) : self {
$self = clone $this;
$self->description = $description;
return $self;
}
/**
* @param list<string> $attributeKeys
*/
public function withAttributeKeys(array $attributeKeys) : self {
$self = clone $this;
$self->attributeKeys = $attributeKeys;
return $self;
}
public function withAggregation(?AggregationInterface $aggregation) : self {
$self = clone $this;
$self->aggregation = $aggregation;
return $self;
}
public function project(Instrument $instrument) : ViewProjection {
return new ViewProjection($this->name ?? $instrument->name, $instrument->unit, $this->description ?? $instrument->description, $this->attributeKeys, $this->aggregation);
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
ViewTemplate::$aggregation | private | property | |
ViewTemplate::$attributeKeys | private | property | @var list<string> |
ViewTemplate::$description | private | property | |
ViewTemplate::$name | private | property | |
ViewTemplate::create | public static | function | |
ViewTemplate::project | public | function | |
ViewTemplate::withAggregation | public | function | |
ViewTemplate::withAttributeKeys | public | function | |
ViewTemplate::withDescription | public | function | |
ViewTemplate::withName | public | function | |
ViewTemplate::__construct | private | function |