diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperations.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperations.cs index cf7e11c7e2a4..0c0b035ca133 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperations.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperations.cs @@ -1548,6 +1548,437 @@ internal BatchAccountOperations(BatchManagementClient client) return _result; } + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async Task>> ListDetectorsWithHttpMessagesAsync(string resourceGroupName, string accountName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (accountName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new ValidationException(ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new ValidationException(ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-zA-Z0-9]+$")) + { + throw new ValidationException(ValidationRules.Pattern, "accountName", "^[a-zA-Z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "ListDetectors", tracingParameters); + } + // Construct URL + var _baseUrl = Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors").ToString(); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + List _queryParameters = new List(); + if (Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new HttpRequestMessage(); + HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage); + } + + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + + // Serialize Request + string _requestContent = null; + // Set Credentials + if (Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + if ((int)_statusCode != 200) + { + var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (JsonException) + { + // Ignore the exception + } + ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings); + } + catch (JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + + /// + /// Gets information about the given detector for a given Batch account. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The name of the detector. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async Task> GetDetectorWithHttpMessagesAsync(string resourceGroupName, string accountName, string detectorId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (accountName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new ValidationException(ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new ValidationException(ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-zA-Z0-9]+$")) + { + throw new ValidationException(ValidationRules.Pattern, "accountName", "^[a-zA-Z0-9]+$"); + } + } + if (detectorId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "detectorId"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("detectorId", detectorId); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "GetDetector", tracingParameters); + } + // Construct URL + var _baseUrl = Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/detectors/{detectorId}").ToString(); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{detectorId}", System.Uri.EscapeDataString(detectorId)); + List _queryParameters = new List(); + if (Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new HttpRequestMessage(); + HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage); + } + + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + + // Serialize Request + string _requestContent = null; + // Set Credentials + if (Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + if ((int)_statusCode != 200) + { + var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (JsonException) + { + // Ignore the exception + } + ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + } + catch (JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + /// /// Lists the endpoints that a Batch Compute Node under this Batch Account may /// call as part of Batch service administration. If you are deploying a Pool @@ -2564,6 +2995,179 @@ internal BatchAccountOperations(BatchManagementClient client) return _result; } + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async Task>> ListDetectorsNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (nextPageLink == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "ListDetectorsNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + List _queryParameters = new List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new HttpRequestMessage(); + HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage); + } + + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + + // Serialize Request + string _requestContent = null; + // Set Credentials + if (Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + if ((int)_statusCode != 200) + { + var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (JsonException) + { + // Ignore the exception + } + ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings); + } + catch (JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + /// /// Lists the endpoints that a Batch Compute Node under this Batch Account may /// call as part of Batch service administration. If you are deploying a Pool diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperationsExtensions.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperationsExtensions.cs index a0264f663500..d315e5ae2e70 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperationsExtensions.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchAccountOperationsExtensions.cs @@ -430,6 +430,92 @@ public static BatchAccountKeys GetKeys(this IBatchAccountOperations operations, } } + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + public static IPage ListDetectors(this IBatchAccountOperations operations, string resourceGroupName, string accountName) + { + return operations.ListDetectorsAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The cancellation token. + /// + public static async Task> ListDetectorsAsync(this IBatchAccountOperations operations, string resourceGroupName, string accountName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListDetectorsWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Gets information about the given detector for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The name of the detector. + /// + public static DetectorResponse GetDetector(this IBatchAccountOperations operations, string resourceGroupName, string accountName, string detectorId) + { + return operations.GetDetectorAsync(resourceGroupName, accountName, detectorId).GetAwaiter().GetResult(); + } + + /// + /// Gets information about the given detector for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The name of the detector. + /// + /// + /// The cancellation token. + /// + public static async Task GetDetectorAsync(this IBatchAccountOperations operations, string resourceGroupName, string accountName, string detectorId, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GetDetectorWithHttpMessagesAsync(resourceGroupName, accountName, detectorId, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// /// Lists the endpoints that a Batch Compute Node under this Batch Account may /// call as part of Batch service administration. If you are deploying a Pool @@ -652,6 +738,40 @@ public static IPage ListByResourceGroupNext(this IBatchAccountOper } } + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static IPage ListDetectorsNext(this IBatchAccountOperations operations, string nextPageLink) + { + return operations.ListDetectorsNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets information about the detectors available for a given Batch account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async Task> ListDetectorsNextAsync(this IBatchAccountOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListDetectorsNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// /// Lists the endpoints that a Batch Compute Node under this Batch Account may /// call as part of Batch service administration. If you are deploying a Pool diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchManagementClient.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchManagementClient.cs index 50f0464f4981..3602f13f902d 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchManagementClient.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/BatchManagementClient.cs @@ -371,7 +371,7 @@ private void Initialize() PrivateEndpointConnection = new PrivateEndpointConnectionOperations(this); Pool = new PoolOperations(this); BaseUri = new System.Uri("https://management.azure.com"); - ApiVersion = "2021-06-01"; + ApiVersion = "2022-01-01"; AcceptLanguage = "en-US"; LongRunningOperationRetryTimeout = 30; GenerateClientRequestId = true; diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/IBatchAccountOperations.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/IBatchAccountOperations.cs index 4d2b646890d1..a1565fc83339 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/IBatchAccountOperations.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/IBatchAccountOperations.cs @@ -271,6 +271,61 @@ public partial interface IBatchAccountOperations /// Task> GetKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// + /// Gets information about the detectors available for a given Batch + /// account. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + Task>> ListDetectorsWithHttpMessagesAsync(string resourceGroupName, string accountName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets information about the given detector for a given Batch + /// account. + /// + /// + /// The name of the resource group that contains the Batch account. + /// + /// + /// The name of the Batch account. + /// + /// + /// The name of the detector. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + Task> GetDetectorWithHttpMessagesAsync(string resourceGroupName, string accountName, string detectorId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// /// Lists the endpoints that a Batch Compute Node under this Batch /// Account may call as part of Batch service administration. If you /// are deploying a Pool inside of a virtual network that you specify, @@ -406,6 +461,29 @@ public partial interface IBatchAccountOperations /// Task>> ListByResourceGroupNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// + /// Gets information about the detectors available for a given Batch + /// account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + Task>> ListDetectorsNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// /// Lists the endpoints that a Batch Compute Node under this Batch /// Account may call as part of Batch service administration. If you /// are deploying a Pool inside of a virtual network that you specify, diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/BatchAccount.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/BatchAccount.cs index 2984ca3ee51a..e2854a6c02ae 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/BatchAccount.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/BatchAccount.cs @@ -58,8 +58,8 @@ public BatchAccount() /// account. /// The dedicated core quota for the /// Batch account. - /// The low-priority core quota for - /// the Batch account. + /// The Spot/low-priority core quota + /// for the Batch account. /// A list of the dedicated /// core quota per Virtual Machine family for the Batch account. For /// accounts with PoolAllocationMode set to UserSubscription, quota is @@ -181,7 +181,7 @@ public BatchAccount() public int? DedicatedCoreQuota { get; private set; } /// - /// Gets the low-priority core quota for the Batch account. + /// Gets the Spot/low-priority core quota for the Batch account. /// /// /// For accounts with PoolAllocationMode set to UserSubscription, quota diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DetectorResponse.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DetectorResponse.cs new file mode 100644 index 000000000000..ccc08d158619 --- /dev/null +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DetectorResponse.cs @@ -0,0 +1,62 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for +// license information. +// +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. +// + +namespace Microsoft.Azure.Management.Batch.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Contains the information for a detector. + /// + [Rest.Serialization.JsonTransformation] + public partial class DetectorResponse : ProxyResource + { + /// + /// Initializes a new instance of the DetectorResponse class. + /// + public DetectorResponse() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DetectorResponse class. + /// + /// The ID of the resource. + /// The name of the resource. + /// The type of the resource. + /// The ETag of the resource, used for concurrency + /// statements. + /// A base64 encoded string that represents the + /// content of a detector. + public DetectorResponse(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), string value = default(string)) + : base(id, name, type, etag) + { + Value = value; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets a base64 encoded string that represents the content of + /// a detector. + /// + [JsonProperty(PropertyName = "properties.value")] + public string Value { get; set; } + + } +} diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DynamicVNetAssignmentScope.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DynamicVNetAssignmentScope.cs new file mode 100644 index 000000000000..d7c5e54a1424 --- /dev/null +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/DynamicVNetAssignmentScope.cs @@ -0,0 +1,67 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for +// license information. +// +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. +// + +namespace Microsoft.Azure.Management.Batch.Models +{ + using Newtonsoft.Json; + using Newtonsoft.Json.Converters; + using System.Runtime; + using System.Runtime.Serialization; + + /// + /// Defines values for DynamicVNetAssignmentScope. + /// + [JsonConverter(typeof(StringEnumConverter))] + public enum DynamicVNetAssignmentScope + { + /// + /// No dynamic VNet assignment is enabled. + /// + [EnumMember(Value = "none")] + None, + /// + /// Dynamic VNet assignment is done per-job. Don't use this option + /// unless your batch account has been approved to use this feature. + /// + [EnumMember(Value = "job")] + Job + } + internal static class DynamicVNetAssignmentScopeEnumExtension + { + internal static string ToSerializedValue(this DynamicVNetAssignmentScope? value) + { + return value == null ? null : ((DynamicVNetAssignmentScope)value).ToSerializedValue(); + } + + internal static string ToSerializedValue(this DynamicVNetAssignmentScope value) + { + switch( value ) + { + case DynamicVNetAssignmentScope.None: + return "none"; + case DynamicVNetAssignmentScope.Job: + return "job"; + } + return null; + } + + internal static DynamicVNetAssignmentScope? ParseDynamicVNetAssignmentScope(this string value) + { + switch( value ) + { + case "none": + return DynamicVNetAssignmentScope.None; + case "job": + return DynamicVNetAssignmentScope.Job; + } + return null; + } + } +} diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/FixedScaleSettings.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/FixedScaleSettings.cs index 229fab3c66e7..0b8216b1aebc 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/FixedScaleSettings.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/FixedScaleSettings.cs @@ -34,7 +34,7 @@ public FixedScaleSettings() /// The desired number of dedicated /// compute nodes in the pool. /// The desired number of - /// low-priority compute nodes in the pool. + /// Spot/low-priority compute nodes in the pool. /// Determines what to do with a /// node and its running task(s) if the pool size is /// decreasing. @@ -78,8 +78,8 @@ public FixedScaleSettings() public int? TargetDedicatedNodes { get; set; } /// - /// Gets or sets the desired number of low-priority compute nodes in - /// the pool. + /// Gets or sets the desired number of Spot/low-priority compute nodes + /// in the pool. /// /// /// At least one of targetDedicatedNodes, targetLowPriorityNodes must diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ImageReference.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ImageReference.cs index f0d5e189c207..849d14729850 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ImageReference.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ImageReference.cs @@ -84,7 +84,7 @@ public ImageReference() /// image. /// /// - /// For example, 18.04-LTS or 2019-Datacenter. + /// For example, 18.04-LTS or 2022-datacenter. /// [JsonProperty(PropertyName = "sku")] public string Sku { get; set; } diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/NetworkConfiguration.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/NetworkConfiguration.cs index 20439a389d81..d963f9185d34 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/NetworkConfiguration.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/NetworkConfiguration.cs @@ -33,13 +33,16 @@ public NetworkConfiguration() /// network subnet which the compute nodes of the pool will join. This /// is of the form /// /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. + /// The scope of dynamic vnet + /// assignment. /// The configuration for endpoints /// on compute nodes in the Batch pool. /// The Public IPAddress /// configuration for Compute Nodes in the Batch Pool. - public NetworkConfiguration(string subnetId = default(string), PoolEndpointConfiguration endpointConfiguration = default(PoolEndpointConfiguration), PublicIPAddressConfiguration publicIPAddressConfiguration = default(PublicIPAddressConfiguration)) + public NetworkConfiguration(string subnetId = default(string), DynamicVNetAssignmentScope? dynamicVNetAssignmentScope = default(DynamicVNetAssignmentScope?), PoolEndpointConfiguration endpointConfiguration = default(PoolEndpointConfiguration), PublicIPAddressConfiguration publicIPAddressConfiguration = default(PublicIPAddressConfiguration)) { SubnetId = subnetId; + DynamicVNetAssignmentScope = dynamicVNetAssignmentScope; EndpointConfiguration = endpointConfiguration; PublicIPAddressConfiguration = publicIPAddressConfiguration; CustomInit(); @@ -84,6 +87,15 @@ public NetworkConfiguration() [JsonProperty(PropertyName = "subnetId")] public string SubnetId { get; set; } + /// + /// Gets or sets the scope of dynamic vnet assignment. + /// + /// + /// Possible values include: 'none', 'job' + /// + [JsonProperty(PropertyName = "dynamicVNetAssignmentScope")] + public DynamicVNetAssignmentScope? DynamicVNetAssignmentScope { get; set; } + /// /// Gets or sets the configuration for endpoints on compute nodes in /// the Batch pool. diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/Pool.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/Pool.cs index 4c45359d688a..fdc7bdca85e1 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/Pool.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/Pool.cs @@ -57,8 +57,8 @@ public Pool() /// Machines. /// The number of compute nodes /// currently in the pool. - /// The number of low-priority - /// compute nodes currently in the pool. + /// The number of + /// Spot/low-priority compute nodes currently in the pool. /// Settings which configure the number of /// nodes in the pool. /// The results and errors from the last @@ -228,7 +228,7 @@ public Pool() public int? CurrentDedicatedNodes { get; private set; } /// - /// Gets the number of low-priority compute nodes currently in the + /// Gets the number of Spot/low-priority compute nodes currently in the /// pool. /// [JsonProperty(PropertyName = "properties.currentLowPriorityNodes")] diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/PublicIPAddressConfiguration.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/PublicIPAddressConfiguration.cs index 5811754febd8..183c5afcafd5 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/PublicIPAddressConfiguration.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/PublicIPAddressConfiguration.cs @@ -67,7 +67,7 @@ public PublicIPAddressConfiguration() /// /// /// The number of IPs specified here limits the maximum size of the - /// Pool - 100 dedicated nodes or 100 low-priority nodes can be + /// Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be /// allocated for each public IP. For example, a pool needing 250 /// dedicated VMs would need at least 3 public IPs specified. Each /// element of this collection is of the form: diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ResizeOperationStatus.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ResizeOperationStatus.cs index 1643c6a06e84..10be58317bb6 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ResizeOperationStatus.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/ResizeOperationStatus.cs @@ -39,7 +39,7 @@ public ResizeOperationStatus() /// The desired number of dedicated /// compute nodes in the pool. /// The desired number of - /// low-priority compute nodes in the pool. + /// Spot/low-priority compute nodes in the pool. /// The timeout for allocation of compute /// nodes to the pool or removal of compute nodes from the /// pool. @@ -74,8 +74,8 @@ public ResizeOperationStatus() public int? TargetDedicatedNodes { get; set; } /// - /// Gets or sets the desired number of low-priority compute nodes in - /// the pool. + /// Gets or sets the desired number of Spot/low-priority compute nodes + /// in the pool. /// [JsonProperty(PropertyName = "targetLowPriorityNodes")] public int? TargetLowPriorityNodes { get; set; } diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/StartTask.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/StartTask.cs index 8a7eb9cbdcbd..e506fc79026f 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/StartTask.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/Models/StartTask.cs @@ -124,7 +124,8 @@ public StartTask() /// the task up to 4 times (one initial try and 3 retries). If the /// maximum retry count is 0, the Batch service does not retry the /// task. If the maximum retry count is -1, the Batch service retries - /// the task without limit. + /// the task without limit, however this is not recommended for a start + /// task or any task. The default value is 0 (no retries). /// [JsonProperty(PropertyName = "maxTaskRetryCount")] public int? MaxTaskRetryCount { get; set; } diff --git a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/SdkInfo_BatchManagementClient.cs b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/SdkInfo_BatchManagementClient.cs index daa0d4560591..d1d6f62fda0b 100644 --- a/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/SdkInfo_BatchManagementClient.cs +++ b/sdk/batch/Microsoft.Azure.Management.Batch/src/Generated/SdkInfo_BatchManagementClient.cs @@ -19,28 +19,17 @@ public static IEnumerable> ApiInfo_BatchManagement { return new Tuple[] { - new Tuple("Batch", "Application", "2021-06-01"), - new Tuple("Batch", "ApplicationPackage", "2021-06-01"), - new Tuple("Batch", "BatchAccount", "2021-06-01"), - new Tuple("Batch", "Certificate", "2021-06-01"), - new Tuple("Batch", "Location", "2021-06-01"), - new Tuple("Batch", "Operations", "2021-06-01"), - new Tuple("Batch", "Pool", "2021-06-01"), - new Tuple("Batch", "PrivateEndpointConnection", "2021-06-01"), - new Tuple("Batch", "PrivateLinkResource", "2021-06-01"), + new Tuple("Batch", "Application", "2022-01-01"), + new Tuple("Batch", "ApplicationPackage", "2022-01-01"), + new Tuple("Batch", "BatchAccount", "2022-01-01"), + new Tuple("Batch", "Certificate", "2022-01-01"), + new Tuple("Batch", "Location", "2022-01-01"), + new Tuple("Batch", "Operations", "2022-01-01"), + new Tuple("Batch", "Pool", "2022-01-01"), + new Tuple("Batch", "PrivateEndpointConnection", "2022-01-01"), + new Tuple("Batch", "PrivateLinkResource", "2022-01-01"), }.AsEnumerable(); } } - // BEGIN: Code Generation Metadata Section - public static readonly String AutoRestVersion = "v2"; - public static readonly String AutoRestBootStrapperVersion = "autorest@3.2.3"; - public static readonly String AutoRestCmdExecuted = "cmd.exe /c autorest.cmd https://github.com/Azure/azure-rest-api-specs/blob/master/specification/batch/resource-manager/readme.md --csharp --version=v2 --reflect-api-versions --csharp-sdks-folder=E:\\hpc\\azure-sdk-for-net\\sdk"; - public static readonly String GithubForkName = "Azure"; - public static readonly String GithubBranchName = "master"; - public static readonly String GithubCommidId = "d81e31601e4bcc061ac6436de40d97b7db5e4dd3"; - public static readonly String CodeGenerationErrors = ""; - public static readonly String GithubRepoName = "azure-rest-api-specs"; - // END: Code Generation Metadata Section } } -