| Server IP : _ / Your IP : 169.254.129.1 Web Server : nginx/1.28.0 System : Linux 89e302d72aa1 6.6.143.1-1.azl3 #1 SMP PREEMPT_DYNAMIC Mon Jul 6 04:01:14 UTC 2026 x86_64 User : nginx ( 103) PHP Version : 8.2.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/otel/open-telemetry/exporter-otlp/ |
Upload File : |
<?php
declare(strict_types=1);
namespace OpenTelemetry\Contrib\Otlp;
use OpenTelemetry\SDK\Common\Configuration\KnownValues;
use UnexpectedValueException;
class Protocols
{
public const GRPC = KnownValues::VALUE_GRPC;
public const HTTP_PROTOBUF = KnownValues::VALUE_HTTP_PROTOBUF;
public const HTTP_JSON = KnownValues::VALUE_HTTP_JSON;
public const HTTP_NDJSON = KnownValues::VALUE_HTTP_NDJSON;
private const PROTOCOLS = [
self::GRPC => ContentTypes::PROTOBUF,
self::HTTP_PROTOBUF => ContentTypes::PROTOBUF,
self::HTTP_JSON => ContentTypes::JSON,
self::HTTP_NDJSON => ContentTypes::NDJSON,
];
public static function validate(string $protocol): void
{
if (!array_key_exists($protocol, self::PROTOCOLS)) {
throw new UnexpectedValueException('Unknown protocol: ' . $protocol);
}
}
/**
* @psalm-return ContentTypes::*
*/
public static function contentType(string $protocol): string
{
self::validate($protocol);
return self::PROTOCOLS[$protocol];
}
}