diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/api/Azure.ResourceManager.SignalR.netstandard2.0.cs b/sdk/signalr/Azure.ResourceManager.SignalR/api/Azure.ResourceManager.SignalR.netstandard2.0.cs index 1c621dc4b3e3..97f0908947ad 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/api/Azure.ResourceManager.SignalR.netstandard2.0.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/api/Azure.ResourceManager.SignalR.netstandard2.0.cs @@ -108,6 +108,7 @@ public SignalRData(Azure.Core.AzureLocation location) : base (default(Azure.Core public string PublicNetworkAccess { get { throw null; } set { } } public int? PublicPort { get { throw null; } } public System.Collections.Generic.IList ResourceLogCategories { get { throw null; } } + public int? ServerlessConnectionTimeoutInSeconds { get { throw null; } set { } } public int? ServerPort { get { throw null; } } public System.Collections.Generic.IReadOnlyList SharedPrivateLinkResources { get { throw null; } } public Azure.ResourceManager.SignalR.Models.SignalRResourceSku Sku { get { throw null; } set { } } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.Serialization.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.Serialization.cs new file mode 100644 index 000000000000..bfdd2acb2636 --- /dev/null +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.Serialization.cs @@ -0,0 +1,45 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +// + +#nullable disable + +using System.Text.Json; +using Azure.Core; + +namespace Azure.ResourceManager.SignalR.Models +{ + internal partial class ServerlessSettings : IUtf8JsonSerializable + { + void IUtf8JsonSerializable.Write(Utf8JsonWriter writer) + { + writer.WriteStartObject(); + if (Optional.IsDefined(ConnectionTimeoutInSeconds)) + { + writer.WritePropertyName("connectionTimeoutInSeconds"u8); + writer.WriteNumberValue(ConnectionTimeoutInSeconds.Value); + } + writer.WriteEndObject(); + } + + internal static ServerlessSettings DeserializeServerlessSettings(JsonElement element) + { + Optional connectionTimeoutInSeconds = default; + foreach (var property in element.EnumerateObject()) + { + if (property.NameEquals("connectionTimeoutInSeconds"u8)) + { + if (property.Value.ValueKind == JsonValueKind.Null) + { + property.ThrowNonNullablePropertyIsNull(); + continue; + } + connectionTimeoutInSeconds = property.Value.GetInt32(); + continue; + } + } + return new ServerlessSettings(Optional.ToNullable(connectionTimeoutInSeconds)); + } + } +} diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.cs new file mode 100644 index 000000000000..77ea670ea162 --- /dev/null +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/ServerlessSettings.cs @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +// + +#nullable disable + +namespace Azure.ResourceManager.SignalR.Models +{ + /// Serverless settings. + internal partial class ServerlessSettings + { + /// Initializes a new instance of ServerlessSettings. + public ServerlessSettings() + { + } + + /// Initializes a new instance of ServerlessSettings. + /// + /// Gets or sets Client Connection Timeout. Optional to be set. + /// Value in seconds. + /// Default value is 30 seconds. + /// Customer should set the timeout to a shorter period if messages are expected to be sent in shorter intervals, + /// and want the client to disconnect more quickly after the last message is sent. + /// You can set the timeout to a longer period if messages are expected to be sent in longer intervals, + /// and they want to keep the same client connection alive during this session. + /// The service considers the client disconnected if it hasn't received a message (including keep-alive) in this interval. + /// + internal ServerlessSettings(int? connectionTimeoutInSeconds) + { + ConnectionTimeoutInSeconds = connectionTimeoutInSeconds; + } + + /// + /// Gets or sets Client Connection Timeout. Optional to be set. + /// Value in seconds. + /// Default value is 30 seconds. + /// Customer should set the timeout to a shorter period if messages are expected to be sent in shorter intervals, + /// and want the client to disconnect more quickly after the last message is sent. + /// You can set the timeout to a longer period if messages are expected to be sent in longer intervals, + /// and they want to keep the same client connection alive during this session. + /// The service considers the client disconnected if it hasn't received a message (including keep-alive) in this interval. + /// + public int? ConnectionTimeoutInSeconds { get; set; } + } +} diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRData.Serialization.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRData.Serialization.cs index 91ddcfa6b527..f2b79152caa2 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRData.Serialization.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRData.Serialization.cs @@ -78,6 +78,11 @@ void IUtf8JsonSerializable.Write(Utf8JsonWriter writer) writer.WritePropertyName("cors"u8); writer.WriteObjectValue(Cors); } + if (Optional.IsDefined(Serverless)) + { + writer.WritePropertyName("serverless"u8); + writer.WriteObjectValue(Serverless); + } if (Optional.IsDefined(Upstream)) { writer.WritePropertyName("upstream"u8); @@ -132,6 +137,7 @@ internal static SignalRData DeserializeSignalRData(JsonElement element) Optional liveTraceConfiguration = default; Optional resourceLogConfiguration = default; Optional cors = default; + Optional serverless = default; Optional upstream = default; Optional networkACLs = default; Optional publicNetworkAccess = default; @@ -358,6 +364,16 @@ internal static SignalRData DeserializeSignalRData(JsonElement element) cors = SignalRCorsSettings.DeserializeSignalRCorsSettings(property0.Value); continue; } + if (property0.NameEquals("serverless"u8)) + { + if (property0.Value.ValueKind == JsonValueKind.Null) + { + property0.ThrowNonNullablePropertyIsNull(); + continue; + } + serverless = ServerlessSettings.DeserializeServerlessSettings(property0.Value); + continue; + } if (property0.NameEquals("upstream"u8)) { if (property0.Value.ValueKind == JsonValueKind.Null) @@ -407,7 +423,7 @@ internal static SignalRData DeserializeSignalRData(JsonElement element) continue; } } - return new SignalRData(id, name, type, systemData.Value, Optional.ToDictionary(tags), location, sku.Value, Optional.ToNullable(kind), identity, Optional.ToNullable(provisioningState), externalIP.Value, hostName.Value, Optional.ToNullable(publicPort), Optional.ToNullable(serverPort), version.Value, Optional.ToList(privateEndpointConnections), Optional.ToList(sharedPrivateLinkResources), tls.Value, hostNamePrefix.Value, Optional.ToList(features), liveTraceConfiguration.Value, resourceLogConfiguration.Value, cors.Value, upstream.Value, networkACLs.Value, publicNetworkAccess.Value, Optional.ToNullable(disableLocalAuth), Optional.ToNullable(disableAadAuth)); + return new SignalRData(id, name, type, systemData.Value, Optional.ToDictionary(tags), location, sku.Value, Optional.ToNullable(kind), identity, Optional.ToNullable(provisioningState), externalIP.Value, hostName.Value, Optional.ToNullable(publicPort), Optional.ToNullable(serverPort), version.Value, Optional.ToList(privateEndpointConnections), Optional.ToList(sharedPrivateLinkResources), tls.Value, hostNamePrefix.Value, Optional.ToList(features), liveTraceConfiguration.Value, resourceLogConfiguration.Value, cors.Value, serverless.Value, upstream.Value, networkACLs.Value, publicNetworkAccess.Value, Optional.ToNullable(disableLocalAuth), Optional.ToNullable(disableAadAuth)); } } } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRResourceSku.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRResourceSku.cs index b3bc08898de4..04f292f02ea1 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRResourceSku.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/Models/SignalRResourceSku.cs @@ -17,7 +17,7 @@ public partial class SignalRResourceSku /// /// The name of the SKU. Required. /// - /// Allowed values: Standard_S1, Free_F1 + /// Allowed values: Standard_S1, Free_F1, Premium_P1 /// /// is null. public SignalRResourceSku(string name) @@ -31,7 +31,7 @@ public SignalRResourceSku(string name) /// /// The name of the SKU. Required. /// - /// Allowed values: Standard_S1, Free_F1 + /// Allowed values: Standard_S1, Free_F1, Premium_P1 /// /// /// Optional tier of this particular SKU. 'Standard' or 'Free'. @@ -44,8 +44,9 @@ public SignalRResourceSku(string name) /// Optional, integer. The unit count of the resource. 1 by default. /// /// If present, following values are allowed: - /// Free: 1 - /// Standard: 1,2,5,10,20,50,100 + /// Free: 1; + /// Standard: 1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100; + /// Premium: 1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100; /// internal SignalRResourceSku(string name, SignalRSkuTier? tier, string size, string family, int? capacity) { @@ -59,7 +60,7 @@ internal SignalRResourceSku(string name, SignalRSkuTier? tier, string size, stri /// /// The name of the SKU. Required. /// - /// Allowed values: Standard_S1, Free_F1 + /// Allowed values: Standard_S1, Free_F1, Premium_P1 /// public string Name { get; set; } /// @@ -76,8 +77,9 @@ internal SignalRResourceSku(string name, SignalRSkuTier? tier, string size, stri /// Optional, integer. The unit count of the resource. 1 by default. /// /// If present, following values are allowed: - /// Free: 1 - /// Standard: 1,2,5,10,20,50,100 + /// Free: 1; + /// Standard: 1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100; + /// Premium: 1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100; /// public int? Capacity { get; set; } } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomCertificatesRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomCertificatesRestOperations.cs index 6cfe80c1ad64..65f1e4b18144 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomCertificatesRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomCertificatesRestOperations.cs @@ -33,7 +33,7 @@ public SignalRCustomCertificatesRestOperations(HttpPipeline pipeline, string app { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomDomainsRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomDomainsRestOperations.cs index 3cd55a825fa7..6a21c775f06d 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomDomainsRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRCustomDomainsRestOperations.cs @@ -33,7 +33,7 @@ public SignalRCustomDomainsRestOperations(HttpPipeline pipeline, string applicat { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateEndpointConnectionsRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateEndpointConnectionsRestOperations.cs index 7caefd6bf3ae..2bbc55e08e9f 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateEndpointConnectionsRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateEndpointConnectionsRestOperations.cs @@ -33,7 +33,7 @@ public SignalRPrivateEndpointConnectionsRestOperations(HttpPipeline pipeline, st { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateLinkResourcesRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateLinkResourcesRestOperations.cs index 0edea5d6f37a..80d4b46066ea 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateLinkResourcesRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRPrivateLinkResourcesRestOperations.cs @@ -33,7 +33,7 @@ public SignalRPrivateLinkResourcesRestOperations(HttpPipeline pipeline, string a { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRRestOperations.cs index c12269e5c291..91912d16234d 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRRestOperations.cs @@ -33,7 +33,7 @@ public SignalRRestOperations(HttpPipeline pipeline, string applicationId, Uri en { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRSharedPrivateLinkResourcesRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRSharedPrivateLinkResourcesRestOperations.cs index 55a07cad414f..29f4d4b40dfd 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRSharedPrivateLinkResourcesRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/SignalRSharedPrivateLinkResourcesRestOperations.cs @@ -33,7 +33,7 @@ public SignalRSharedPrivateLinkResourcesRestOperations(HttpPipeline pipeline, st { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/UsagesRestOperations.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/UsagesRestOperations.cs index 951dce08b004..90348f44ab67 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/UsagesRestOperations.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/RestOperations/UsagesRestOperations.cs @@ -33,7 +33,7 @@ public UsagesRestOperations(HttpPipeline pipeline, string applicationId, Uri end { _pipeline = pipeline ?? throw new ArgumentNullException(nameof(pipeline)); _endpoint = endpoint ?? new Uri("https://management.azure.com"); - _apiVersion = apiVersion ?? "2022-02-01"; + _apiVersion = apiVersion ?? "2023-02-01"; _userAgent = new TelemetryDetails(GetType().Assembly, applicationId); } diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/SignalRData.cs b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/SignalRData.cs index 09cf4ea17691..60ccf8baadc3 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/SignalRData.cs +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/Generated/SignalRData.cs @@ -58,6 +58,7 @@ public SignalRData(AzureLocation location) : base(location) /// Live trace configuration of a Microsoft.SignalRService resource. /// Resource log configuration of a Microsoft.SignalRService resource. /// Cross-Origin Resource Sharing (CORS) settings. + /// Serverless settings. /// The settings for the Upstream when the service is in server-less mode. /// Network ACLs for the resource. /// @@ -75,7 +76,7 @@ public SignalRData(AzureLocation location) : base(location) /// Enable or disable aad auth /// When set as true, connection with AuthType=aad won't work. /// - internal SignalRData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IDictionary tags, AzureLocation location, SignalRResourceSku sku, SignalRServiceKind? kind, ManagedServiceIdentity identity, SignalRProvisioningState? provisioningState, string externalIP, string hostName, int? publicPort, int? serverPort, string version, IReadOnlyList privateEndpointConnections, IReadOnlyList sharedPrivateLinkResources, SignalRTlsSettings tls, string hostNamePrefix, IList features, SignalRLiveTraceConfiguration liveTraceConfiguration, SignalRResourceLogCategoryListResult resourceLogConfiguration, SignalRCorsSettings cors, ServerlessUpstreamSettings upstream, SignalRNetworkAcls networkACLs, string publicNetworkAccess, bool? disableLocalAuth, bool? disableAadAuth) : base(id, name, resourceType, systemData, tags, location) + internal SignalRData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IDictionary tags, AzureLocation location, SignalRResourceSku sku, SignalRServiceKind? kind, ManagedServiceIdentity identity, SignalRProvisioningState? provisioningState, string externalIP, string hostName, int? publicPort, int? serverPort, string version, IReadOnlyList privateEndpointConnections, IReadOnlyList sharedPrivateLinkResources, SignalRTlsSettings tls, string hostNamePrefix, IList features, SignalRLiveTraceConfiguration liveTraceConfiguration, SignalRResourceLogCategoryListResult resourceLogConfiguration, SignalRCorsSettings cors, ServerlessSettings serverless, ServerlessUpstreamSettings upstream, SignalRNetworkAcls networkACLs, string publicNetworkAccess, bool? disableLocalAuth, bool? disableAadAuth) : base(id, name, resourceType, systemData, tags, location) { Sku = sku; Kind = kind; @@ -94,6 +95,7 @@ internal SignalRData(ResourceIdentifier id, string name, ResourceType resourceTy LiveTraceConfiguration = liveTraceConfiguration; ResourceLogConfiguration = resourceLogConfiguration; Cors = cors; + Serverless = serverless; Upstream = upstream; NetworkACLs = networkACLs; PublicNetworkAccess = publicNetworkAccess; @@ -176,6 +178,29 @@ public IList CorsAllowedOrigins } } + /// Serverless settings. + internal ServerlessSettings Serverless { get; set; } + /// + /// Gets or sets Client Connection Timeout. Optional to be set. + /// Value in seconds. + /// Default value is 30 seconds. + /// Customer should set the timeout to a shorter period if messages are expected to be sent in shorter intervals, + /// and want the client to disconnect more quickly after the last message is sent. + /// You can set the timeout to a longer period if messages are expected to be sent in longer intervals, + /// and they want to keep the same client connection alive during this session. + /// The service considers the client disconnected if it hasn't received a message (including keep-alive) in this interval. + /// + public int? ServerlessConnectionTimeoutInSeconds + { + get => Serverless is null ? default : Serverless.ConnectionTimeoutInSeconds; + set + { + if (Serverless is null) + Serverless = new ServerlessSettings(); + Serverless.ConnectionTimeoutInSeconds = value; + } + } + /// The settings for the Upstream when the service is in server-less mode. internal ServerlessUpstreamSettings Upstream { get; set; } /// Gets or sets the list of Upstream URL templates. Order matters, and the first matching template takes effects. diff --git a/sdk/signalr/Azure.ResourceManager.SignalR/src/autorest.md b/sdk/signalr/Azure.ResourceManager.SignalR/src/autorest.md index 7e86e6bafe8a..b42a410d4667 100644 --- a/sdk/signalr/Azure.ResourceManager.SignalR/src/autorest.md +++ b/sdk/signalr/Azure.ResourceManager.SignalR/src/autorest.md @@ -9,7 +9,7 @@ generate-model-factory: false csharp: true library-name: SignalR namespace: Azure.ResourceManager.SignalR -require: https://github.com/Azure/azure-rest-api-specs/blob/34ba022add0034e30462b76e1548ce5a7e053e33/specification/signalr/resource-manager/readme.md +require: /mnt/vss/_work/1/s/azure-rest-api-specs/specification/signalr/resource-manager/readme.md output-folder: $(this-folder)/Generated clear-output-folder: true skip-csproj: true