diff --git a/eng/Packages.Data.props b/eng/Packages.Data.props index f04467d2195c..78ac525cbca5 100644 --- a/eng/Packages.Data.props +++ b/eng/Packages.Data.props @@ -176,7 +176,7 @@ All should have PrivateAssets="All" set so they don't become package dependencies --> - + diff --git a/eng/emitter-package-lock.json b/eng/emitter-package-lock.json index a8216c9bd865..5c8e5e17445c 100644 --- a/eng/emitter-package-lock.json +++ b/eng/emitter-package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "dependencies": { - "@azure-tools/typespec-csharp": "0.2.0-beta.20231025.3" + "@azure-tools/typespec-csharp": "0.2.0-beta.20231026.1" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -17,9 +17,9 @@ } }, "node_modules/@autorest/csharp": { - "version": "3.0.0-beta.20231025.3", - "resolved": "https://registry.npmjs.org/@autorest/csharp/-/csharp-3.0.0-beta.20231025.3.tgz", - "integrity": "sha512-64UD17rO0DlFMUu2+fKCMjzXowgfV33TRcr2Qy4OI7KioCGiBCyzju5AjuykAKIYtDDuT5Bxg5puHrmR+d8W3g==" + "version": "3.0.0-beta.20231026.1", + "resolved": "https://registry.npmjs.org/@autorest/csharp/-/csharp-3.0.0-beta.20231026.1.tgz", + "integrity": "sha512-NSF19gb2uoxNUfJO6ODH3uruDpSJeD9k9WgyhPcAsl+ecLeJEQrS5l47G9Dq+k5885feRhBC6uaGFo2IDebycg==" }, "node_modules/@azure-tools/typespec-azure-core": { "version": "0.35.0", @@ -49,11 +49,11 @@ } }, "node_modules/@azure-tools/typespec-csharp": { - "version": "0.2.0-beta.20231025.3", - "resolved": "https://registry.npmjs.org/@azure-tools/typespec-csharp/-/typespec-csharp-0.2.0-beta.20231025.3.tgz", - "integrity": "sha512-6I5qcwp4SFcIzGBaLyAbK5zCKa/bmnxde24jibour88aiqgW9XublGOlG5IO+F0QlnqRZQ5+Tlk9ldVQNAGS2g==", + "version": "0.2.0-beta.20231026.1", + "resolved": "https://registry.npmjs.org/@azure-tools/typespec-csharp/-/typespec-csharp-0.2.0-beta.20231026.1.tgz", + "integrity": "sha512-nWxzF/OXsLcR0qEQyjmNW4PWdvEVXi3JtwZaCJJMze2MnYNTXvAN0goFtg7btwshFYiwXs6QlpIGS4uZuNRRAg==", "dependencies": { - "@autorest/csharp": "3.0.0-beta.20231025.3", + "@autorest/csharp": "3.0.0-beta.20231026.1", "@azure-tools/typespec-azure-core": "0.35.0", "@azure-tools/typespec-client-generator-core": "0.35.0", "@typespec/compiler": "0.49.0", diff --git a/eng/emitter-package.json b/eng/emitter-package.json index a289bcec74f1..c64afaf24b52 100644 --- a/eng/emitter-package.json +++ b/eng/emitter-package.json @@ -1,6 +1,6 @@ { "main": "dist/src/index.js", "dependencies": { - "@azure-tools/typespec-csharp": "0.2.0-beta.20231025.3" + "@azure-tools/typespec-csharp": "0.2.0-beta.20231026.1" } } diff --git a/sdk/openai/Azure.AI.OpenAI/src/Custom/ImageGenerations.cs b/sdk/openai/Azure.AI.OpenAI/src/Custom/ImageGenerations.cs index e1835fdc5741..214865a4044c 100644 --- a/sdk/openai/Azure.AI.OpenAI/src/Custom/ImageGenerations.cs +++ b/sdk/openai/Azure.AI.OpenAI/src/Custom/ImageGenerations.cs @@ -5,10 +5,8 @@ using System; using System.Collections.Generic; -using System.Linq; using System.Runtime.CompilerServices; using System.Text.Json; -using System.Xml.Linq; using Azure.Core; namespace Azure.AI.OpenAI @@ -34,24 +32,5 @@ internal static void DeserializeDataProperty(JsonProperty property, ref IReadOnl } data = array; } - - /// Deserializes the model from a raw response. - /// The response to deserialize the model from. - internal static ImageGenerations FromResponse(Response response) - { - using var document = JsonDocument.Parse(response.Content); - JsonElement element = document.RootElement; - foreach (var property in document.RootElement.EnumerateObject()) - { - if (property.NameEquals("result"u8)) - { - //we have the envelop and need to deserialize the inner object - //https://github.com/Azure/autorest.csharp/issues/3837 - element = property.Value; - break; - } - } - return DeserializeImageGenerations(element); - } } } diff --git a/sdk/openai/Azure.AI.OpenAI/src/Generated/ImageGenerations.Serialization.cs b/sdk/openai/Azure.AI.OpenAI/src/Generated/ImageGenerations.Serialization.cs index 34fdd3d1241c..551e28de47f3 100644 --- a/sdk/openai/Azure.AI.OpenAI/src/Generated/ImageGenerations.Serialization.cs +++ b/sdk/openai/Azure.AI.OpenAI/src/Generated/ImageGenerations.Serialization.cs @@ -37,5 +37,13 @@ internal static ImageGenerations DeserializeImageGenerations(JsonElement element } return new ImageGenerations(created, data); } + + /// Deserializes the model from a raw response. + /// The response to deserialize the model from. + internal static ImageGenerations FromResponse(Response response) + { + using var document = JsonDocument.Parse(response.Content); + return DeserializeImageGenerations(document.RootElement); + } } } diff --git a/sdk/openai/Azure.AI.OpenAI/src/Generated/OpenAIClient.cs b/sdk/openai/Azure.AI.OpenAI/src/Generated/OpenAIClient.cs index 3daa5a8aa443..c381f3a3bbc3 100644 --- a/sdk/openai/Azure.AI.OpenAI/src/Generated/OpenAIClient.cs +++ b/sdk/openai/Azure.AI.OpenAI/src/Generated/OpenAIClient.cs @@ -6,6 +6,7 @@ #nullable disable using System; +using System.Text.Json; using System.Threading; using System.Threading.Tasks; using Azure; @@ -49,7 +50,7 @@ internal virtual async Task> BeginAzureBatchImageGen RequestContext context = FromCancellationToken(cancellationToken); using RequestContent content = imageGenerationOptions.ToRequestContent(); Operation response = await BeginAzureBatchImageGenerationAsync(waitUntil, content, context).ConfigureAwait(false); - return ProtocolOperationHelpers.Convert(response, ImageGenerations.FromResponse, ClientDiagnostics, "OpenAIClient.BeginAzureBatchImageGeneration"); + return ProtocolOperationHelpers.Convert(response, FetchImageGenerationsFromBatchImageGenerationOperationResponse, ClientDiagnostics, "OpenAIClient.BeginAzureBatchImageGeneration"); } /// Starts the generation of a batch of images from a text caption. @@ -64,7 +65,7 @@ internal virtual Operation BeginAzureBatchImageGeneration(Wait RequestContext context = FromCancellationToken(cancellationToken); using RequestContent content = imageGenerationOptions.ToRequestContent(); Operation response = BeginAzureBatchImageGeneration(waitUntil, content, context); - return ProtocolOperationHelpers.Convert(response, ImageGenerations.FromResponse, ClientDiagnostics, "OpenAIClient.BeginAzureBatchImageGeneration"); + return ProtocolOperationHelpers.Convert(response, FetchImageGenerationsFromBatchImageGenerationOperationResponse, ClientDiagnostics, "OpenAIClient.BeginAzureBatchImageGeneration"); } /// @@ -177,5 +178,11 @@ internal static RequestContext FromCancellationToken(CancellationToken cancellat private static ResponseClassifier ResponseClassifier200 => _responseClassifier200 ??= new StatusCodeClassifier(stackalloc ushort[] { 200 }); private static ResponseClassifier _responseClassifier202; private static ResponseClassifier ResponseClassifier202 => _responseClassifier202 ??= new StatusCodeClassifier(stackalloc ushort[] { 202 }); + + private ImageGenerations FetchImageGenerationsFromBatchImageGenerationOperationResponse(Response response) + { + var resultJsonElement = JsonDocument.Parse(response.Content).RootElement.GetProperty("result"); + return ImageGenerations.DeserializeImageGenerations(resultJsonElement); + } } }