toalett-redis-timeseries/src/Model/DuplicatePolicy.php

49 lines
928 B
PHP

<?php
namespace Toalett\Redis\Timeseries\Model;
final class DuplicatePolicy
{
private string $value;
private function __construct(string $value)
{
$this->value = $value;
}
public function toString(): string
{
return $this->value;
}
public static function block(): DuplicatePolicy
{
return new DuplicatePolicy('BLOCK');
}
public static function first(): DuplicatePolicy
{
return new DuplicatePolicy('FIRST');
}
public static function last(): DuplicatePolicy
{
return new DuplicatePolicy('LAST');
}
public static function min(): DuplicatePolicy
{
return new DuplicatePolicy('MIN');
}
public static function max(): DuplicatePolicy
{
return new DuplicatePolicy('MAX');
}
public static function sum(): DuplicatePolicy
{
return new DuplicatePolicy('SUM');
}
}