From d2fe8238d697daa77cd0678836e940f2c272a486 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Deruss=C3=A9?= Date: Thu, 11 Dec 2025 10:50:35 +0100 Subject: [PATCH] Skip service generation for smithy-rpc-v2-cbor --- .../src/Definition/ServiceDefinition.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/CodeGenerator/src/Definition/ServiceDefinition.php b/src/CodeGenerator/src/Definition/ServiceDefinition.php index 37b60bdd4..c852aa49b 100644 --- a/src/CodeGenerator/src/Definition/ServiceDefinition.php +++ b/src/CodeGenerator/src/Definition/ServiceDefinition.php @@ -15,6 +15,8 @@ */ class ServiceDefinition { + private const SUPPORTED_PROTOCOLS = ['json', 'rest-json', 'query', 'rest-xml']; + /** * @var string */ @@ -150,7 +152,19 @@ public function getJsonVersion(): float public function getProtocol(): string { - return $this->definition['metadata']['protocol']; + $protocol = $this->definition['metadata']['protocol']; + if (\in_array($protocol, self::SUPPORTED_PROTOCOLS, true)) { + return $protocol; + } + + $protocols = $this->definition['metadata']['protocols'] ?? []; + foreach (self::SUPPORTED_PROTOCOLS as $supportedProtocol) { + if (\in_array($supportedProtocol, $protocols, true)) { + return $supportedProtocol; + } + } + + return $protocol; } public function getApiReferenceUrl(): string