diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperations.cs new file mode 100644 index 000000000000..f49b10e0caa0 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperations.cs @@ -0,0 +1,1126 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + using System.Net; + using System.Net.Http; + using System.Threading; + using System.Threading.Tasks; + + /// + /// AddonsOperations operations. + /// + internal partial class AddonsOperations : IServiceOperations, IAddonsOperations + { + /// + /// Initializes a new instance of the AddonsOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal AddonsOperations(DataBoxEdgeManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + Client = client; + } + + /// + /// Gets a reference to the DataBoxEdgeManagementClient + /// + public DataBoxEdgeManagementClient Client { get; private set; } + + /// + /// Lists all the addons configured in the role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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>> ListByRoleWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "ListByRole", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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 a specific addon by name. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (addonName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "addonName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("addonName", addonName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "Get", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons/{addonName}").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{addonName}", System.Uri.EscapeDataString(addonName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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; + } + + /// + /// Create or update a addon. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task> CreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send Request + AzureOperationResponse _response = await BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, addonName, addon, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task DeleteWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send request + AzureOperationResponse _response = await BeginDeleteWithHttpMessagesAsync(deviceName, roleName, addonName, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Create or update a addon. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// 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> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (addonName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "addonName"); + } + if (addon == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "addon"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("addonName", addonName); + tracingParameters.Add("addon", addon); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginCreateOrUpdate", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons/{addonName}").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{addonName}", System.Uri.EscapeDataString(addonName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("PUT"); + _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; + if(addon != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(addon, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // 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 && (int)_statusCode != 202) + { + 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; + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// 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 BeginDeleteWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (addonName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "addonName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("addonName", addonName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginDelete", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/addons/{addonName}").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{addonName}", System.Uri.EscapeDataString(addonName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("DELETE"); + _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 && (int)_statusCode != 202 && (int)_statusCode != 204) + { + 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(); + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + + /// + /// Lists all the addons configured in the role. + /// + /// + /// 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>> ListByRoleNextWithHttpMessagesAsync(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, "ListByRoleNext", 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; + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperationsExtensions.cs new file mode 100644 index 000000000000..e5154ba17707 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AddonsOperationsExtensions.cs @@ -0,0 +1,371 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Threading; + using System.Threading.Tasks; + + /// + /// Extension methods for AddonsOperations. + /// + public static partial class AddonsOperationsExtensions + { + /// + /// Lists all the addons configured in the role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + public static IPage ListByRole(this IAddonsOperations operations, string deviceName, string roleName, string resourceGroupName) + { + return operations.ListByRoleAsync(deviceName, roleName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Lists all the addons configured in the role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task> ListByRoleAsync(this IAddonsOperations operations, string deviceName, string roleName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListByRoleWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Gets a specific addon by name. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + public static Addon Get(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName) + { + return operations.GetAsync(deviceName, roleName, addonName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Gets a specific addon by name. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task GetAsync(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(deviceName, roleName, addonName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Create or update a addon. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + public static Addon CreateOrUpdate(this IAddonsOperations operations, string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName) + { + return operations.CreateOrUpdateAsync(deviceName, roleName, addonName, addon, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Create or update a addon. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task CreateOrUpdateAsync(this IAddonsOperations operations, string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, addonName, addon, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + public static void Delete(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName) + { + operations.DeleteAsync(deviceName, roleName, addonName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task DeleteAsync(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.DeleteWithHttpMessagesAsync(deviceName, roleName, addonName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Create or update a addon. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + public static Addon BeginCreateOrUpdate(this IAddonsOperations operations, string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName) + { + return operations.BeginCreateOrUpdateAsync(deviceName, roleName, addonName, addon, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Create or update a addon. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginCreateOrUpdateAsync(this IAddonsOperations operations, string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, addonName, addon, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + public static void BeginDelete(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName) + { + operations.BeginDeleteAsync(deviceName, roleName, addonName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Deletes the addon on the device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginDeleteAsync(this IAddonsOperations operations, string deviceName, string roleName, string addonName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.BeginDeleteWithHttpMessagesAsync(deviceName, roleName, addonName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Lists all the addons configured in the role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static IPage ListByRoleNext(this IAddonsOperations operations, string nextPageLink) + { + return operations.ListByRoleNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Lists all the addons configured in the role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async Task> ListByRoleNextAsync(this IAddonsOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListByRoleNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperations.cs new file mode 100644 index 000000000000..78b7a9e39599 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperations.cs @@ -0,0 +1,405 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + using System.Net; + using System.Net.Http; + using System.Threading; + using System.Threading.Tasks; + + /// + /// AvailableSkusOperations operations. + /// + internal partial class AvailableSkusOperations : IServiceOperations, IAvailableSkusOperations + { + /// + /// Initializes a new instance of the AvailableSkusOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal AvailableSkusOperations(DataBoxEdgeManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + Client = client; + } + + /// + /// Gets a reference to the DataBoxEdgeManagementClient + /// + public DataBoxEdgeManagementClient Client { get; private set; } + + /// + /// List all the available Skus and information related to them. + /// + /// + /// 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>> ListWithHttpMessagesAsync(Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + var _baseUrl = Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/availableSkus").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + 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; + } + + /// + /// List all the available Skus and information related to them. + /// + /// + /// 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>> ListNextWithHttpMessagesAsync(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, "ListNext", 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; + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperationsExtensions.cs new file mode 100644 index 000000000000..8fca6fe94037 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/AvailableSkusOperationsExtensions.cs @@ -0,0 +1,87 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Threading; + using System.Threading.Tasks; + + /// + /// Extension methods for AvailableSkusOperations. + /// + public static partial class AvailableSkusOperationsExtensions + { + /// + /// List all the available Skus and information related to them. + /// + /// + /// The operations group for this extension method. + /// + public static IPage List(this IAvailableSkusOperations operations) + { + return operations.ListAsync().GetAwaiter().GetResult(); + } + + /// + /// List all the available Skus and information related to them. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The cancellation token. + /// + public static async Task> ListAsync(this IAvailableSkusOperations operations, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// List all the available Skus and information related to them. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static IPage ListNext(this IAvailableSkusOperations operations, string nextPageLink) + { + return operations.ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List all the available Skus and information related to them. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async Task> ListNextAsync(this IAvailableSkusOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DataBoxEdgeManagementClient.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DataBoxEdgeManagementClient.cs index 1c08d81dc670..3dcfbdc2fd23 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DataBoxEdgeManagementClient.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DataBoxEdgeManagementClient.cs @@ -76,6 +76,11 @@ public partial class DataBoxEdgeManagementClient : ServiceClient public virtual IOperations Operations { get; private set; } + /// + /// Gets the IAvailableSkusOperations. + /// + public virtual IAvailableSkusOperations AvailableSkus { get; private set; } + /// /// Gets the IDevicesOperations. /// @@ -91,6 +96,11 @@ public partial class DataBoxEdgeManagementClient : ServiceClient public virtual IBandwidthSchedulesOperations BandwidthSchedules { get; private set; } + /// + /// Gets the IDiagnosticSettingsOperations. + /// + public virtual IDiagnosticSettingsOperations DiagnosticSettings { get; private set; } + /// /// Gets the IJobsOperations. /// @@ -116,6 +126,16 @@ public partial class DataBoxEdgeManagementClient : ServiceClient public virtual IRolesOperations Roles { get; private set; } + /// + /// Gets the IAddonsOperations. + /// + public virtual IAddonsOperations Addons { get; private set; } + + /// + /// Gets the IMonitoringConfigOperations. + /// + public virtual IMonitoringConfigOperations MonitoringConfig { get; private set; } + /// /// Gets the ISharesOperations. /// @@ -142,14 +162,14 @@ public partial class DataBoxEdgeManagementClient : ServiceClient - /// Gets the IUsersOperations. + /// Gets the ISupportPackagesOperations. /// - public virtual IUsersOperations Users { get; private set; } + public virtual ISupportPackagesOperations SupportPackages { get; private set; } /// - /// Gets the ISkusOperations. + /// Gets the IUsersOperations. /// - public virtual ISkusOperations Skus { get; private set; } + public virtual IUsersOperations Users { get; private set; } /// /// Initializes a new instance of the DataBoxEdgeManagementClient class. @@ -393,23 +413,27 @@ public DataBoxEdgeManagementClient(System.Uri baseUri, ServiceClientCredentials private void Initialize() { Operations = new Operations(this); + AvailableSkus = new AvailableSkusOperations(this); Devices = new DevicesOperations(this); Alerts = new AlertsOperations(this); BandwidthSchedules = new BandwidthSchedulesOperations(this); + DiagnosticSettings = new DiagnosticSettingsOperations(this); Jobs = new JobsOperations(this); Nodes = new NodesOperations(this); OperationsStatus = new OperationsStatus(this); Orders = new OrdersOperations(this); Roles = new RolesOperations(this); + Addons = new AddonsOperations(this); + MonitoringConfig = new MonitoringConfigOperations(this); Shares = new SharesOperations(this); StorageAccountCredentials = new StorageAccountCredentialsOperations(this); StorageAccounts = new StorageAccountsOperations(this); Containers = new ContainersOperations(this); Triggers = new TriggersOperations(this); + SupportPackages = new SupportPackagesOperations(this); Users = new UsersOperations(this); - Skus = new SkusOperations(this); BaseUri = new System.Uri("https://management.azure.com"); - ApiVersion = "2019-08-01"; + ApiVersion = "2021-02-01"; AcceptLanguage = "en-US"; LongRunningOperationRetryTimeout = 30; GenerateClientRequestId = true; @@ -439,6 +463,8 @@ private void Initialize() new Iso8601TimeSpanConverter() } }; + SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("kind")); + DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("kind")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("kind")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("kind")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("kind")); diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperations.cs index 96256326d654..623091c37a3d 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperations.cs @@ -644,16 +644,205 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) /// The resource group name. /// /// - /// The headers that will be added to request. + /// 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> CreateOrUpdateWithHttpMessagesAsync(string deviceName, DataBoxEdgeDevice dataBoxEdgeDevice, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (dataBoxEdgeDevice == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "dataBoxEdgeDevice"); + } + if (dataBoxEdgeDevice != null) + { + dataBoxEdgeDevice.Validate(); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("dataBoxEdgeDevice", dataBoxEdgeDevice); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "CreateOrUpdate", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("PUT"); + _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; + if(dataBoxEdgeDevice != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(dataBoxEdgeDevice, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } // Send Request - AzureOperationResponse _response = await BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, dataBoxEdgeDevice, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); - return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + 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; } /// @@ -911,7 +1100,203 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) } /// - /// Gets additional information for the specified Data Box Edge/Data Box + /// Generates certificate for activation key. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GenerateCertificateWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "GenerateCertificate", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/generateCertificate").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("POST"); + _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 additional information for the specified Azure Stack Edge/Data Box /// Gateway device. /// /// @@ -1374,13 +1759,15 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) } /// - /// Gets information about the availability of updates based on the last scan - /// of the device. It also gets information about any ongoing download or - /// install jobs on the device. + /// Gets additional information for the specified Data Box Edge/Data Box + /// Gateway device. /// /// /// The device name. /// + /// + /// The patch object. + /// /// /// The resource group name. /// @@ -1405,12 +1792,16 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) /// /// A response object containing the response body and response headers. /// - public async Task> GetUpdateSummaryWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + public async Task> UpdateExtendedInformationWithHttpMessagesAsync(string deviceName, DataBoxEdgeDeviceExtendedInfoPatch parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { if (deviceName == null) { throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); } + if (parameters == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "parameters"); + } if (Client.SubscriptionId == null) { throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); @@ -1431,13 +1822,14 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _invocationId = ServiceClientTracing.NextInvocationId.ToString(); Dictionary tracingParameters = new Dictionary(); tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "GetUpdateSummary", tracingParameters); + ServiceClientTracing.Enter(_invocationId, this, "UpdateExtendedInformation", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateExtendedInformation").ToString(); _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); @@ -1453,7 +1845,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Create HTTP transport objects var _httpRequest = new HttpRequestMessage(); HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("GET"); + _httpRequest.Method = new HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) @@ -1484,6 +1876,12 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Serialize Request string _requestContent = null; + if(parameters != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (Client.Credentials != null) { @@ -1539,7 +1937,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) throw ex; } // Create Result - var _result = new AzureOperationResponse(); + var _result = new AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; if (_httpResponse.Headers.Contains("x-ms-request-id")) @@ -1552,7 +1950,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); } catch (JsonException ex) { @@ -1572,14 +1970,13 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) } /// - /// Uploads registration certificate for the device. + /// Gets information about the availability of updates based on the last scan + /// of the device. It also gets information about any ongoing download or + /// install jobs on the device. /// /// /// The device name. /// - /// - /// The upload certificate request. - /// /// /// The resource group name. /// @@ -1604,20 +2001,12 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) /// /// A response object containing the response body and response headers. /// - public async Task> UploadCertificateWithHttpMessagesAsync(string deviceName, UploadCertificateRequest parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + public async Task> GetUpdateSummaryWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { if (deviceName == null) { throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); } - if (parameters == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "parameters"); - } - if (parameters != null) - { - parameters.Validate(); - } if (Client.SubscriptionId == null) { throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); @@ -1638,14 +2027,13 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _invocationId = ServiceClientTracing.NextInvocationId.ToString(); Dictionary tracingParameters = new Dictionary(); tracingParameters.Add("deviceName", deviceName); - tracingParameters.Add("parameters", parameters); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "UploadCertificate", tracingParameters); + ServiceClientTracing.Enter(_invocationId, this, "GetUpdateSummary", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default").ToString(); _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); @@ -1661,7 +2049,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Create HTTP transport objects var _httpRequest = new HttpRequestMessage(); HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("POST"); + _httpRequest.Method = new HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) @@ -1692,12 +2080,6 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Serialize Request string _requestContent = null; - if(parameters != null) - { - _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, Client.SerializationSettings); - _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (Client.Credentials != null) { @@ -1753,7 +2135,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) throw ex; } // Create Result - var _result = new AzureOperationResponse(); + var _result = new AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; if (_httpResponse.Headers.Contains("x-ms-request-id")) @@ -1766,7 +2148,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); } catch (JsonException ex) { @@ -1786,13 +2168,13 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) } /// - /// Creates or updates a Data Box Edge/Data Box Gateway resource. + /// Uploads registration certificate for the device. /// /// /// The device name. /// - /// - /// The resource object. + /// + /// The upload certificate request. /// /// /// The resource group name. @@ -1818,19 +2200,19 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) /// /// A response object containing the response body and response headers. /// - public async Task> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, DataBoxEdgeDevice dataBoxEdgeDevice, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + public async Task> UploadCertificateWithHttpMessagesAsync(string deviceName, UploadCertificateRequest parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { if (deviceName == null) { throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); } - if (dataBoxEdgeDevice == null) + if (parameters == null) { - throw new ValidationException(ValidationRules.CannotBeNull, "dataBoxEdgeDevice"); + throw new ValidationException(ValidationRules.CannotBeNull, "parameters"); } - if (dataBoxEdgeDevice != null) + if (parameters != null) { - dataBoxEdgeDevice.Validate(); + parameters.Validate(); } if (Client.SubscriptionId == null) { @@ -1852,14 +2234,14 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _invocationId = ServiceClientTracing.NextInvocationId.ToString(); Dictionary tracingParameters = new Dictionary(); tracingParameters.Add("deviceName", deviceName); - tracingParameters.Add("dataBoxEdgeDevice", dataBoxEdgeDevice); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "BeginCreateOrUpdate", tracingParameters); + ServiceClientTracing.Enter(_invocationId, this, "UploadCertificate", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate").ToString(); _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); @@ -1875,7 +2257,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Create HTTP transport objects var _httpRequest = new HttpRequestMessage(); HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("PUT"); + _httpRequest.Method = new HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) @@ -1906,9 +2288,9 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) // Serialize Request string _requestContent = null; - if(dataBoxEdgeDevice != null) + if(parameters != null) { - _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(dataBoxEdgeDevice, Client.SerializationSettings); + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, Client.SerializationSettings); _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } @@ -1967,7 +2349,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) throw ex; } // Create Result - var _result = new AzureOperationResponse(); + var _result = new AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; if (_httpResponse.Headers.Contains("x-ms-request-id")) @@ -1980,7 +2362,7 @@ internal DevicesOperations(DataBoxEdgeManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); + _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); } catch (JsonException ex) { diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperationsExtensions.cs index 83cca91facd6..d2de70339b30 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperationsExtensions.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DevicesOperationsExtensions.cs @@ -310,7 +310,47 @@ public static void DownloadUpdates(this IDevicesOperations operations, string de } /// - /// Gets additional information for the specified Data Box Edge/Data Box + /// Generates certificate for activation key. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + public static GenerateCertResponse GenerateCertificate(this IDevicesOperations operations, string deviceName, string resourceGroupName) + { + return operations.GenerateCertificateAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Generates certificate for activation key. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task GenerateCertificateAsync(this IDevicesOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GenerateCertificateWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Gets additional information for the specified Azure Stack Edge/Data Box /// Gateway device. /// /// @@ -328,7 +368,7 @@ public static DataBoxEdgeDeviceExtendedInfo GetExtendedInformation(this IDevices } /// - /// Gets additional information for the specified Data Box Edge/Data Box + /// Gets additional information for the specified Azure Stack Edge/Data Box /// Gateway device. /// /// @@ -511,9 +551,8 @@ public static void CreateOrUpdateSecuritySettings(this IDevicesOperations operat } /// - /// Gets information about the availability of updates based on the last scan - /// of the device. It also gets information about any ongoing download or - /// install jobs on the device. + /// Gets additional information for the specified Data Box Edge/Data Box + /// Gateway device. /// /// /// The operations group for this extension method. @@ -521,18 +560,20 @@ public static void CreateOrUpdateSecuritySettings(this IDevicesOperations operat /// /// The device name. /// + /// + /// The patch object. + /// /// /// The resource group name. /// - public static UpdateSummary GetUpdateSummary(this IDevicesOperations operations, string deviceName, string resourceGroupName) + public static DataBoxEdgeDeviceExtendedInfo UpdateExtendedInformation(this IDevicesOperations operations, string deviceName, DataBoxEdgeDeviceExtendedInfoPatch parameters, string resourceGroupName) { - return operations.GetUpdateSummaryAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); + return operations.UpdateExtendedInformationAsync(deviceName, parameters, resourceGroupName).GetAwaiter().GetResult(); } /// - /// Gets information about the availability of updates based on the last scan - /// of the device. It also gets information about any ongoing download or - /// install jobs on the device. + /// Gets additional information for the specified Data Box Edge/Data Box + /// Gateway device. /// /// /// The operations group for this extension method. @@ -540,22 +581,27 @@ public static UpdateSummary GetUpdateSummary(this IDevicesOperations operations, /// /// The device name. /// + /// + /// The patch object. + /// /// /// The resource group name. /// /// /// The cancellation token. /// - public static async Task GetUpdateSummaryAsync(this IDevicesOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + public static async Task UpdateExtendedInformationAsync(this IDevicesOperations operations, string deviceName, DataBoxEdgeDeviceExtendedInfoPatch parameters, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) { - using (var _result = await operations.GetUpdateSummaryWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.UpdateExtendedInformationWithHttpMessagesAsync(deviceName, parameters, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Uploads registration certificate for the device. + /// Gets information about the availability of updates based on the last scan + /// of the device. It also gets information about any ongoing download or + /// install jobs on the device. /// /// /// The operations group for this extension method. @@ -563,19 +609,18 @@ public static UpdateSummary GetUpdateSummary(this IDevicesOperations operations, /// /// The device name. /// - /// - /// The upload certificate request. - /// /// /// The resource group name. /// - public static UploadCertificateResponse UploadCertificate(this IDevicesOperations operations, string deviceName, UploadCertificateRequest parameters, string resourceGroupName) + public static UpdateSummary GetUpdateSummary(this IDevicesOperations operations, string deviceName, string resourceGroupName) { - return operations.UploadCertificateAsync(deviceName, parameters, resourceGroupName).GetAwaiter().GetResult(); + return operations.GetUpdateSummaryAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); } /// - /// Uploads registration certificate for the device. + /// Gets information about the availability of updates based on the last scan + /// of the device. It also gets information about any ongoing download or + /// install jobs on the device. /// /// /// The operations group for this extension method. @@ -583,25 +628,22 @@ public static UploadCertificateResponse UploadCertificate(this IDevicesOperation /// /// The device name. /// - /// - /// The upload certificate request. - /// /// /// The resource group name. /// /// /// The cancellation token. /// - public static async Task UploadCertificateAsync(this IDevicesOperations operations, string deviceName, UploadCertificateRequest parameters, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + public static async Task GetUpdateSummaryAsync(this IDevicesOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) { - using (var _result = await operations.UploadCertificateWithHttpMessagesAsync(deviceName, parameters, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetUpdateSummaryWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Creates or updates a Data Box Edge/Data Box Gateway resource. + /// Uploads registration certificate for the device. /// /// /// The operations group for this extension method. @@ -609,19 +651,19 @@ public static UploadCertificateResponse UploadCertificate(this IDevicesOperation /// /// The device name. /// - /// - /// The resource object. + /// + /// The upload certificate request. /// /// /// The resource group name. /// - public static DataBoxEdgeDevice BeginCreateOrUpdate(this IDevicesOperations operations, string deviceName, DataBoxEdgeDevice dataBoxEdgeDevice, string resourceGroupName) + public static UploadCertificateResponse UploadCertificate(this IDevicesOperations operations, string deviceName, UploadCertificateRequest parameters, string resourceGroupName) { - return operations.BeginCreateOrUpdateAsync(deviceName, dataBoxEdgeDevice, resourceGroupName).GetAwaiter().GetResult(); + return operations.UploadCertificateAsync(deviceName, parameters, resourceGroupName).GetAwaiter().GetResult(); } /// - /// Creates or updates a Data Box Edge/Data Box Gateway resource. + /// Uploads registration certificate for the device. /// /// /// The operations group for this extension method. @@ -629,8 +671,8 @@ public static DataBoxEdgeDevice BeginCreateOrUpdate(this IDevicesOperations oper /// /// The device name. /// - /// - /// The resource object. + /// + /// The upload certificate request. /// /// /// The resource group name. @@ -638,9 +680,9 @@ public static DataBoxEdgeDevice BeginCreateOrUpdate(this IDevicesOperations oper /// /// The cancellation token. /// - public static async Task BeginCreateOrUpdateAsync(this IDevicesOperations operations, string deviceName, DataBoxEdgeDevice dataBoxEdgeDevice, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + public static async Task UploadCertificateAsync(this IDevicesOperations operations, string deviceName, UploadCertificateRequest parameters, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) { - using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, dataBoxEdgeDevice, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.UploadCertificateWithHttpMessagesAsync(deviceName, parameters, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperations.cs new file mode 100644 index 000000000000..30fa4aa6d35e --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperations.cs @@ -0,0 +1,884 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + using System.Net; + using System.Net.Http; + using System.Threading; + using System.Threading.Tasks; + + /// + /// DiagnosticSettingsOperations operations. + /// + internal partial class DiagnosticSettingsOperations : IServiceOperations, IDiagnosticSettingsOperations + { + /// + /// Initializes a new instance of the DiagnosticSettingsOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal DiagnosticSettingsOperations(DataBoxEdgeManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + Client = client; + } + + /// + /// Gets a reference to the DataBoxEdgeManagementClient + /// + public DataBoxEdgeManagementClient Client { get; private set; } + + /// + /// Gets the proactive log collection settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "GetDiagnosticProactiveLogCollectionSettings", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/diagnosticProactiveLogCollectionSettings/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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; + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task UpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send Request + AzureOperationResponse _response = await BeginUpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(deviceName, proactiveLogCollectionSettings, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Gets the diagnostic remote support settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "GetDiagnosticRemoteSupportSettings", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/diagnosticRemoteSupportSettings/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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; + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task UpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send Request + AzureOperationResponse _response = await BeginUpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(deviceName, diagnosticRemoteSupportSettings, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// 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 BeginUpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (proactiveLogCollectionSettings == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "proactiveLogCollectionSettings"); + } + if (proactiveLogCollectionSettings != null) + { + proactiveLogCollectionSettings.Validate(); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("proactiveLogCollectionSettings", proactiveLogCollectionSettings); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginUpdateDiagnosticProactiveLogCollectionSettings", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/diagnosticProactiveLogCollectionSettings/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("PUT"); + _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; + if(proactiveLogCollectionSettings != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(proactiveLogCollectionSettings, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // 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 && (int)_statusCode != 202) + { + 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(); + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// 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 BeginUpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (diagnosticRemoteSupportSettings == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "diagnosticRemoteSupportSettings"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("diagnosticRemoteSupportSettings", diagnosticRemoteSupportSettings); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginUpdateDiagnosticRemoteSupportSettings", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/diagnosticRemoteSupportSettings/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("PUT"); + _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; + if(diagnosticRemoteSupportSettings != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(diagnosticRemoteSupportSettings, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // 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 && (int)_statusCode != 202) + { + 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(); + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperationsExtensions.cs new file mode 100644 index 000000000000..e32115a2d2c1 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/DiagnosticSettingsOperationsExtensions.cs @@ -0,0 +1,289 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Threading; + using System.Threading.Tasks; + + /// + /// Extension methods for DiagnosticSettingsOperations. + /// + public static partial class DiagnosticSettingsOperationsExtensions + { + /// + /// Gets the proactive log collection settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + public static DiagnosticProactiveLogCollectionSettings GetDiagnosticProactiveLogCollectionSettings(this IDiagnosticSettingsOperations operations, string deviceName, string resourceGroupName) + { + return operations.GetDiagnosticProactiveLogCollectionSettingsAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Gets the proactive log collection settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task GetDiagnosticProactiveLogCollectionSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GetDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + public static void UpdateDiagnosticProactiveLogCollectionSettings(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName) + { + operations.UpdateDiagnosticProactiveLogCollectionSettingsAsync(deviceName, proactiveLogCollectionSettings, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task UpdateDiagnosticProactiveLogCollectionSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.UpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(deviceName, proactiveLogCollectionSettings, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Gets the diagnostic remote support settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + public static DiagnosticRemoteSupportSettings GetDiagnosticRemoteSupportSettings(this IDiagnosticSettingsOperations operations, string deviceName, string resourceGroupName) + { + return operations.GetDiagnosticRemoteSupportSettingsAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Gets the diagnostic remote support settings of the specified Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task GetDiagnosticRemoteSupportSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GetDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + public static void UpdateDiagnosticRemoteSupportSettings(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName) + { + operations.UpdateDiagnosticRemoteSupportSettingsAsync(deviceName, diagnosticRemoteSupportSettings, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task UpdateDiagnosticRemoteSupportSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.UpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(deviceName, diagnosticRemoteSupportSettings, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + public static void BeginUpdateDiagnosticProactiveLogCollectionSettings(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName) + { + operations.BeginUpdateDiagnosticProactiveLogCollectionSettingsAsync(deviceName, proactiveLogCollectionSettings, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Updates the proactive log collection settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginUpdateDiagnosticProactiveLogCollectionSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.BeginUpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(deviceName, proactiveLogCollectionSettings, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + public static void BeginUpdateDiagnosticRemoteSupportSettings(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName) + { + operations.BeginUpdateDiagnosticRemoteSupportSettingsAsync(deviceName, diagnosticRemoteSupportSettings, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Updates the diagnostic remote support settings on a Data Box Edge/Data Box + /// Gateway device. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginUpdateDiagnosticRemoteSupportSettingsAsync(this IDiagnosticSettingsOperations operations, string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.BeginUpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(deviceName, diagnosticRemoteSupportSettings, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAddonsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAddonsOperations.cs new file mode 100644 index 000000000000..7b6c81c126bb --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAddonsOperations.cs @@ -0,0 +1,232 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Collections; + using System.Collections.Generic; + using System.Threading; + using System.Threading.Tasks; + + /// + /// AddonsOperations operations. + /// + public partial interface IAddonsOperations + { + /// + /// Lists all the addons configured in the role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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>> ListByRoleWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets a specific addon by name. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Create or update a addon. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// 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> CreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Deletes the addon on the device. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task DeleteWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Create or update a addon. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The addon properties. + /// + /// + /// The resource group name. + /// + /// + /// 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> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, string addonName, Addon addon, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Deletes the addon on the device. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The addon name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task BeginDeleteWithHttpMessagesAsync(string deviceName, string roleName, string addonName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Lists all the addons configured in the role. + /// + /// + /// 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>> ListByRoleNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAvailableSkusOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAvailableSkusOperations.cs new file mode 100644 index 000000000000..268a63d66d0c --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IAvailableSkusOperations.cs @@ -0,0 +1,68 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Collections; + using System.Collections.Generic; + using System.Threading; + using System.Threading.Tasks; + + /// + /// AvailableSkusOperations operations. + /// + public partial interface IAvailableSkusOperations + { + /// + /// List all the available Skus and information related to them. + /// + /// + /// 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>> ListWithHttpMessagesAsync(Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// List all the available Skus and information related to them. + /// + /// + /// 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>> ListNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDataBoxEdgeManagementClient.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDataBoxEdgeManagementClient.cs index 4ae3160fe46e..826395381a15 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDataBoxEdgeManagementClient.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDataBoxEdgeManagementClient.cs @@ -73,6 +73,11 @@ public partial interface IDataBoxEdgeManagementClient : System.IDisposable /// IOperations Operations { get; } + /// + /// Gets the IAvailableSkusOperations. + /// + IAvailableSkusOperations AvailableSkus { get; } + /// /// Gets the IDevicesOperations. /// @@ -88,6 +93,11 @@ public partial interface IDataBoxEdgeManagementClient : System.IDisposable /// IBandwidthSchedulesOperations BandwidthSchedules { get; } + /// + /// Gets the IDiagnosticSettingsOperations. + /// + IDiagnosticSettingsOperations DiagnosticSettings { get; } + /// /// Gets the IJobsOperations. /// @@ -113,6 +123,16 @@ public partial interface IDataBoxEdgeManagementClient : System.IDisposable /// IRolesOperations Roles { get; } + /// + /// Gets the IAddonsOperations. + /// + IAddonsOperations Addons { get; } + + /// + /// Gets the IMonitoringConfigOperations. + /// + IMonitoringConfigOperations MonitoringConfig { get; } + /// /// Gets the ISharesOperations. /// @@ -139,14 +159,14 @@ public partial interface IDataBoxEdgeManagementClient : System.IDisposable ITriggersOperations Triggers { get; } /// - /// Gets the IUsersOperations. + /// Gets the ISupportPackagesOperations. /// - IUsersOperations Users { get; } + ISupportPackagesOperations SupportPackages { get; } /// - /// Gets the ISkusOperations. + /// Gets the IUsersOperations. /// - ISkusOperations Skus { get; } + IUsersOperations Users { get; } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDevicesOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDevicesOperations.cs index 851a1c478945..6179ad93cfcc 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDevicesOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDevicesOperations.cs @@ -202,7 +202,32 @@ public partial interface IDevicesOperations /// Task DownloadUpdatesWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// - /// Gets additional information for the specified Data Box Edge/Data + /// Generates certificate for activation key. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GenerateCertificateWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets additional information for the specified Azure Stack Edge/Data /// Box Gateway device. /// /// @@ -324,13 +349,15 @@ public partial interface IDevicesOperations /// Task CreateOrUpdateSecuritySettingsWithHttpMessagesAsync(string deviceName, SecuritySettings securitySettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// - /// Gets information about the availability of updates based on the - /// last scan of the device. It also gets information about any ongoing - /// download or install jobs on the device. + /// Gets additional information for the specified Data Box Edge/Data + /// Box Gateway device. /// /// /// The device name. /// + /// + /// The patch object. + /// /// /// The resource group name. /// @@ -349,16 +376,15 @@ public partial interface IDevicesOperations /// /// Thrown when a required parameter is null /// - Task> GetUpdateSummaryWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + Task> UpdateExtendedInformationWithHttpMessagesAsync(string deviceName, DataBoxEdgeDeviceExtendedInfoPatch parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// - /// Uploads registration certificate for the device. + /// Gets information about the availability of updates based on the + /// last scan of the device. It also gets information about any ongoing + /// download or install jobs on the device. /// /// /// The device name. /// - /// - /// The upload certificate request. - /// /// /// The resource group name. /// @@ -377,15 +403,15 @@ public partial interface IDevicesOperations /// /// Thrown when a required parameter is null /// - Task> UploadCertificateWithHttpMessagesAsync(string deviceName, UploadCertificateRequest parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + Task> GetUpdateSummaryWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// - /// Creates or updates a Data Box Edge/Data Box Gateway resource. + /// Uploads registration certificate for the device. /// /// /// The device name. /// - /// - /// The resource object. + /// + /// The upload certificate request. /// /// /// The resource group name. @@ -405,7 +431,7 @@ public partial interface IDevicesOperations /// /// Thrown when a required parameter is null /// - Task> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, DataBoxEdgeDevice dataBoxEdgeDevice, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + Task> UploadCertificateWithHttpMessagesAsync(string deviceName, UploadCertificateRequest parameters, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// /// Deletes the Data Box Edge/Data Box Gateway device. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDiagnosticSettingsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDiagnosticSettingsOperations.cs new file mode 100644 index 000000000000..074a52219b97 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IDiagnosticSettingsOperations.cs @@ -0,0 +1,183 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Collections; + using System.Collections.Generic; + using System.Threading; + using System.Threading.Tasks; + + /// + /// DiagnosticSettingsOperations operations. + /// + public partial interface IDiagnosticSettingsOperations + { + /// + /// Gets the proactive log collection settings of the specified Data + /// Box Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Updates the proactive log collection settings on a Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task UpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets the diagnostic remote support settings of the specified Data + /// Box Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Updates the diagnostic remote support settings on a Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task UpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Updates the proactive log collection settings on a Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The proactive log collection settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task BeginUpdateDiagnosticProactiveLogCollectionSettingsWithHttpMessagesAsync(string deviceName, DiagnosticProactiveLogCollectionSettings proactiveLogCollectionSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Updates the diagnostic remote support settings on a Data Box + /// Edge/Data Box Gateway device. + /// + /// + /// The device name. + /// + /// + /// The diagnostic remote support settings. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task BeginUpdateDiagnosticRemoteSupportSettingsWithHttpMessagesAsync(string deviceName, DiagnosticRemoteSupportSettings diagnosticRemoteSupportSettings, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IMonitoringConfigOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IMonitoringConfigOperations.cs new file mode 100644 index 000000000000..c2179b343423 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IMonitoringConfigOperations.cs @@ -0,0 +1,219 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Collections; + using System.Collections.Generic; + using System.Threading; + using System.Threading.Tasks; + + /// + /// MonitoringConfigOperations operations. + /// + public partial interface IMonitoringConfigOperations + { + /// + /// Lists metric configurations in a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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>> ListWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets a metric configuration of a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Creates a new metric configuration or updates an existing one for a + /// role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// 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> CreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task DeleteWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Creates a new metric configuration or updates an existing one for a + /// role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// 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> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task BeginDeleteWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Lists metric configurations in a role. + /// + /// + /// 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>> ListNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/INodesOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/INodesOperations.cs index e43305b38d36..a11bfa0c95aa 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/INodesOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/INodesOperations.cs @@ -48,6 +48,29 @@ public partial interface INodesOperations /// /// Thrown when a required parameter is null /// - Task>> ListByDataBoxEdgeDeviceWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + Task>> ListByDataBoxEdgeDeviceWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Gets all the nodes currently configured under this Data Box Edge + /// device + /// + /// + /// 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>> ListByDataBoxEdgeDeviceNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IOrdersOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IOrdersOperations.cs index 0fe14db086ba..556f1540fb6b 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IOrdersOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IOrdersOperations.cs @@ -125,6 +125,31 @@ public partial interface IOrdersOperations /// Task DeleteWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// + /// Gets the DCAccess Code + /// + /// + /// The device name + /// + /// + /// The resource group name. + /// + /// + /// 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> ListDCAccessCodeWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// /// Creates or updates an order. /// /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISkusOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISkusOperations.cs deleted file mode 100644 index 05e60533fdb5..000000000000 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISkusOperations.cs +++ /dev/null @@ -1,51 +0,0 @@ -// -// 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.DataBoxEdge -{ - using Microsoft.Rest; - using Microsoft.Rest.Azure; - using Models; - using System.Collections; - using System.Collections.Generic; - using System.Threading; - using System.Threading.Tasks; - - /// - /// SkusOperations operations. - /// - public partial interface ISkusOperations - { - /// - /// List all the available Skus in the region and information related - /// to them - /// - /// - /// Specify $filter='location eq <location>' to filter on - /// location. - /// - /// - /// 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>> ListWithHttpMessagesAsync(string filter = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - } -} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IStorageAccountsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IStorageAccountsOperations.cs index 97b49edb5a41..ddf2391350c2 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IStorageAccountsOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IStorageAccountsOperations.cs @@ -24,7 +24,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge public partial interface IStorageAccountsOperations { /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway /// device. /// /// @@ -194,7 +194,7 @@ public partial interface IStorageAccountsOperations /// Task BeginDeleteWithHttpMessagesAsync(string deviceName, string storageAccountName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway /// device. /// /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISupportPackagesOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISupportPackagesOperations.cs new file mode 100644 index 000000000000..288b328bb0b6 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/ISupportPackagesOperations.cs @@ -0,0 +1,77 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Collections; + using System.Collections.Generic; + using System.Threading; + using System.Threading.Tasks; + + /// + /// SupportPackagesOperations operations. + /// + public partial interface ISupportPackagesOperations + { + /// + /// Triggers support package on the device + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task TriggerSupportPackageWithHttpMessagesAsync(string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + /// + /// Triggers support package on the device + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + Task BeginTriggerSupportPackageWithHttpMessagesAsync(string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IUsersOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IUsersOperations.cs index 4d4fa9a86d18..9e1297a46cb1 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IUsersOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/IUsersOperations.cs @@ -34,7 +34,7 @@ public partial interface IUsersOperations /// The resource group name. /// /// - /// Specify $filter='UserType eq <type>' to filter on user type + /// Specify $filter='Type eq <type>' to filter on user type /// property /// /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AccessLevel.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AccessLevel.cs new file mode 100644 index 000000000000..0ad1858ae6d5 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AccessLevel.cs @@ -0,0 +1,24 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for AccessLevel. + /// + public static class AccessLevel + { + public const string None = "None"; + public const string ReadOnly = "ReadOnly"; + public const string ReadWrite = "ReadWrite"; + public const string FullAccess = "FullAccess"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Addon.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Addon.cs new file mode 100644 index 000000000000..3c3176fd740b --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Addon.cs @@ -0,0 +1,56 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Role Addon + /// + public partial class Addon : ARMBaseModel + { + /// + /// Initializes a new instance of the Addon class. + /// + public Addon() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the Addon class. + /// + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Addon type + public Addon(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) + : base(id, name, type) + { + SystemData = systemData; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets addon type + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AddonState.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AddonState.cs new file mode 100644 index 000000000000..07a99208d088 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/AddonState.cs @@ -0,0 +1,27 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for AddonState. + /// + public static class AddonState + { + public const string Invalid = "Invalid"; + public const string Creating = "Creating"; + public const string Created = "Created"; + public const string Updating = "Updating"; + public const string Reconfiguring = "Reconfiguring"; + public const string Failed = "Failed"; + public const string Deleting = "Deleting"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Address.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Address.cs index 17c431ed009f..6bcf51fd5de1 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Address.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Address.cs @@ -30,14 +30,14 @@ public Address() /// /// Initializes a new instance of the Address class. /// + /// The country name. /// The address line1. + /// The address line2. + /// The address line3. /// The postal code. /// The city name. /// The state name. - /// The country name. - /// The address line2. - /// The address line3. - public Address(string addressLine1, string postalCode, string city, string state, string country, string addressLine2 = default(string), string addressLine3 = default(string)) + public Address(string country, string addressLine1 = default(string), string addressLine2 = default(string), string addressLine3 = default(string), string postalCode = default(string), string city = default(string), string state = default(string)) { AddressLine1 = addressLine1; AddressLine2 = addressLine2; @@ -104,22 +104,6 @@ public Address() /// public virtual void Validate() { - if (AddressLine1 == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "AddressLine1"); - } - if (PostalCode == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "PostalCode"); - } - if (City == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "City"); - } - if (State == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "State"); - } if (Country == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Country"); diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Alert.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Alert.cs index 1ea7af3ae95f..c38ae8146a5c 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Alert.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Alert.cs @@ -38,6 +38,7 @@ public Alert() /// object. /// The object name. /// The hierarchical type of the object. + /// Alert generated in the resource /// Alert title. /// Alert type. /// UTC time when the alert @@ -47,9 +48,10 @@ public Alert() /// include: 'Informational', 'Warning', 'Critical' /// Error details of the alert. /// Alert details. - public Alert(string id = default(string), string name = default(string), string type = default(string), string title = default(string), string alertType = default(string), System.DateTime? appearedAtDateTime = default(System.DateTime?), string recommendation = default(string), string severity = default(string), AlertErrorDetails errorDetails = default(AlertErrorDetails), IDictionary detailedInformation = default(IDictionary)) + public Alert(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string title = default(string), string alertType = default(string), System.DateTime? appearedAtDateTime = default(System.DateTime?), string recommendation = default(string), string severity = default(string), AlertErrorDetails errorDetails = default(AlertErrorDetails), IDictionary detailedInformation = default(IDictionary)) : base(id, name, type) { + SystemData = systemData; Title = title; AlertType = alertType; AppearedAtDateTime = appearedAtDateTime; @@ -65,6 +67,12 @@ public Alert() /// partial void CustomInit(); + /// + /// Gets or sets alert generated in the resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets alert title. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ArcAddon.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ArcAddon.cs new file mode 100644 index 000000000000..cfacf2da313f --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ArcAddon.cs @@ -0,0 +1,151 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Arc Addon. + /// + [Newtonsoft.Json.JsonObject("ArcForKubernetes")] + [Rest.Serialization.JsonTransformation] + public partial class ArcAddon : Addon + { + /// + /// Initializes a new instance of the ArcAddon class. + /// + public ArcAddon() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ArcAddon class. + /// + /// Arc resource subscription Id + /// Arc resource group name + /// Arc resource Name + /// Arc resource location + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Addon type + /// Arc resource version + /// Host OS supported by the Arc addon. + /// Possible values include: 'Windows', 'Linux' + /// Platform where the runtime is + /// hosted. Possible values include: 'KubernetesCluster', + /// 'LinuxVM' + /// Addon Provisioning State. Possible + /// values include: 'Invalid', 'Creating', 'Created', 'Updating', + /// 'Reconfiguring', 'Failed', 'Deleting' + public ArcAddon(string subscriptionId, string resourceGroupName, string resourceName, string resourceLocation, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string version = default(string), string hostPlatform = default(string), string hostPlatformType = default(string), string provisioningState = default(string)) + : base(id, name, type, systemData) + { + SubscriptionId = subscriptionId; + ResourceGroupName = resourceGroupName; + ResourceName = resourceName; + ResourceLocation = resourceLocation; + Version = version; + HostPlatform = hostPlatform; + HostPlatformType = hostPlatformType; + ProvisioningState = provisioningState; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets arc resource subscription Id + /// + [JsonProperty(PropertyName = "properties.subscriptionId")] + public string SubscriptionId { get; set; } + + /// + /// Gets or sets arc resource group name + /// + [JsonProperty(PropertyName = "properties.resourceGroupName")] + public string ResourceGroupName { get; set; } + + /// + /// Gets or sets arc resource Name + /// + [JsonProperty(PropertyName = "properties.resourceName")] + public string ResourceName { get; set; } + + /// + /// Gets or sets arc resource location + /// + [JsonProperty(PropertyName = "properties.resourceLocation")] + public string ResourceLocation { get; set; } + + /// + /// Gets arc resource version + /// + [JsonProperty(PropertyName = "properties.version")] + public string Version { get; private set; } + + /// + /// Gets host OS supported by the Arc addon. Possible values include: + /// 'Windows', 'Linux' + /// + [JsonProperty(PropertyName = "properties.hostPlatform")] + public string HostPlatform { get; private set; } + + /// + /// Gets platform where the runtime is hosted. Possible values include: + /// 'KubernetesCluster', 'LinuxVM' + /// + [JsonProperty(PropertyName = "properties.hostPlatformType")] + public string HostPlatformType { get; private set; } + + /// + /// Gets addon Provisioning State. Possible values include: 'Invalid', + /// 'Creating', 'Created', 'Updating', 'Reconfiguring', 'Failed', + /// 'Deleting' + /// + [JsonProperty(PropertyName = "properties.provisioningState")] + public string ProvisioningState { get; private set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "SubscriptionId"); + } + if (ResourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ResourceGroupName"); + } + if (ResourceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ResourceName"); + } + if (ResourceLocation == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ResourceLocation"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/BandwidthSchedule.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/BandwidthSchedule.cs index c5662e8d8ea2..77cd29250155 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/BandwidthSchedule.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/BandwidthSchedule.cs @@ -43,9 +43,12 @@ public BandwidthSchedule() /// object. /// The object name. /// The hierarchical type of the object. - public BandwidthSchedule(string start, string stop, int rateInMbps, IList days, string id = default(string), string name = default(string), string type = default(string)) + /// Bandwidth object related to ASE + /// resource + public BandwidthSchedule(string start, string stop, int rateInMbps, IList days, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) : base(id, name, type) { + SystemData = systemData; Start = start; Stop = stop; RateInMbps = rateInMbps; @@ -58,6 +61,12 @@ public BandwidthSchedule() /// partial void CustomInit(); + /// + /// Gets or sets bandwidth object related to ASE resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets the start time of the schedule in UTC. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CloudEdgeManagementRole.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CloudEdgeManagementRole.cs new file mode 100644 index 000000000000..6dc48f162858 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CloudEdgeManagementRole.cs @@ -0,0 +1,94 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// CloudEdgeManagementRole role, Currently It's in Private Preview + /// + [Newtonsoft.Json.JsonObject("CloudEdgeManagement")] + [Rest.Serialization.JsonTransformation] + public partial class CloudEdgeManagementRole : Role + { + /// + /// Initializes a new instance of the CloudEdgeManagementRole class. + /// + public CloudEdgeManagementRole() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the CloudEdgeManagementRole class. + /// + /// Role status. Possible values include: + /// 'Enabled', 'Disabled' + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Role configured on ASE resource + /// Local Edge Management Status. + /// Possible values include: 'Enabled', 'Disabled' + /// Edge Profile of the resource + public CloudEdgeManagementRole(string roleStatus, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string localManagementStatus = default(string), EdgeProfile edgeProfile = default(EdgeProfile)) + : base(id, name, type, systemData) + { + LocalManagementStatus = localManagementStatus; + EdgeProfile = edgeProfile; + RoleStatus = roleStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets local Edge Management Status. Possible values include: + /// 'Enabled', 'Disabled' + /// + [JsonProperty(PropertyName = "properties.localManagementStatus")] + public string LocalManagementStatus { get; private set; } + + /// + /// Gets edge Profile of the resource + /// + [JsonProperty(PropertyName = "properties.edgeProfile")] + public EdgeProfile EdgeProfile { get; private set; } + + /// + /// Gets or sets role status. Possible values include: 'Enabled', + /// 'Disabled' + /// + [JsonProperty(PropertyName = "properties.roleStatus")] + public string RoleStatus { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (RoleStatus == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "RoleStatus"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CniConfig.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CniConfig.cs new file mode 100644 index 000000000000..a5dd61dda121 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CniConfig.cs @@ -0,0 +1,75 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Cni configuration + /// + public partial class CniConfig + { + /// + /// Initializes a new instance of the CniConfig class. + /// + public CniConfig() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the CniConfig class. + /// + /// Cni type + /// Cni version + /// Pod Subnet + /// Service subnet + public CniConfig(string type = default(string), string version = default(string), string podSubnet = default(string), string serviceSubnet = default(string)) + { + Type = type; + Version = version; + PodSubnet = podSubnet; + ServiceSubnet = serviceSubnet; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets cni type + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; private set; } + + /// + /// Gets cni version + /// + [JsonProperty(PropertyName = "version")] + public string Version { get; private set; } + + /// + /// Gets pod Subnet + /// + [JsonProperty(PropertyName = "podSubnet")] + public string PodSubnet { get; private set; } + + /// + /// Gets service subnet + /// + [JsonProperty(PropertyName = "serviceSubnet")] + public string ServiceSubnet { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ComputeResource.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ComputeResource.cs new file mode 100644 index 000000000000..23a7f835ca89 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ComputeResource.cs @@ -0,0 +1,69 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Compute infrastructure Resource + /// + public partial class ComputeResource + { + /// + /// Initializes a new instance of the ComputeResource class. + /// + public ComputeResource() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ComputeResource class. + /// + /// Processor count + /// Memory in GB + public ComputeResource(int processorCount, long memoryInGB) + { + ProcessorCount = processorCount; + MemoryInGB = memoryInGB; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets processor count + /// + [JsonProperty(PropertyName = "processorCount")] + public int ProcessorCount { get; set; } + + /// + /// Gets or sets memory in GB + /// + [JsonProperty(PropertyName = "memoryInGB")] + public long MemoryInGB { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + //Nothing to validate + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Container.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Container.cs index 44da362f65e7..0bf8ccb9fb5f 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Container.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Container.cs @@ -38,6 +38,7 @@ public Container() /// object. /// The object name. /// The hierarchical type of the object. + /// Container in DataBoxEdge Resource /// Current status of the container. /// Possible values include: 'OK', 'Offline', 'Unknown', 'Updating', /// 'NeedsAttention' @@ -45,9 +46,10 @@ public Container() /// container. /// The UTC time when container got /// created. - public Container(string dataFormat, string id = default(string), string name = default(string), string type = default(string), string containerStatus = default(string), RefreshDetails refreshDetails = default(RefreshDetails), System.DateTime? createdDateTime = default(System.DateTime?)) + public Container(string dataFormat, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string containerStatus = default(string), RefreshDetails refreshDetails = default(RefreshDetails), System.DateTime? createdDateTime = default(System.DateTime?)) : base(id, name, type) { + SystemData = systemData; ContainerStatus = containerStatus; DataFormat = dataFormat; RefreshDetails = refreshDetails; @@ -60,6 +62,12 @@ public Container() /// partial void CustomInit(); + /// + /// Gets or sets container in DataBoxEdge Resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets current status of the container. Possible values include: /// 'OK', 'Offline', 'Unknown', 'Updating', 'NeedsAttention' diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CreatedByType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CreatedByType.cs new file mode 100644 index 000000000000..fecdccf7c795 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/CreatedByType.cs @@ -0,0 +1,24 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for CreatedByType. + /// + public static class CreatedByType + { + public const string User = "User"; + public const string Application = "Application"; + public const string ManagedIdentity = "ManagedIdentity"; + public const string Key = "Key"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DCAccessCode.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DCAccessCode.cs new file mode 100644 index 000000000000..0e2614aaa721 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DCAccessCode.cs @@ -0,0 +1,55 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// DC Access code in the case of Self Managed Shipping. + /// + [Rest.Serialization.JsonTransformation] + public partial class DCAccessCode + { + /// + /// Initializes a new instance of the DCAccessCode class. + /// + public DCAccessCode() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DCAccessCode class. + /// + /// DCAccess Code for the Self Managed + /// shipment. + public DCAccessCode(string authCode = default(string)) + { + AuthCode = authCode; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets dCAccess Code for the Self Managed shipment. + /// + [JsonProperty(PropertyName = "properties.authCode")] + public string AuthCode { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevice.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevice.cs index 1cf358d32e95..94fbd3bee2fb 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevice.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevice.cs @@ -49,6 +49,12 @@ public DataBoxEdgeDevice() /// groups). /// The SKU type. /// The etag for the devices. + /// Msi identity of the resource + /// The kind of the device. Possible values include: + /// 'AzureDataBoxGateway', 'AzureStackEdge', 'AzureStackHub', + /// 'AzureModularDataCentre' + /// DataBoxEdge Resource + /// DataBoxEdge Device Properties /// The status of the Data Box /// Edge/Gateway device. Possible values include: 'ReadyToSetup', /// 'Online', 'Offline', 'NeedsAttention', 'Disconnected', @@ -78,13 +84,23 @@ public DataBoxEdgeDevice() /// Type of compute roles /// configured. /// The number of nodes in the cluster. - public DataBoxEdgeDevice(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), Sku sku = default(Sku), string etag = default(string), string dataBoxEdgeDeviceStatus = default(string), string serialNumber = default(string), string description = default(string), string modelDescription = default(string), string deviceType = default(string), string friendlyName = default(string), string culture = default(string), string deviceModel = default(string), string deviceSoftwareVersion = default(string), long? deviceLocalCapacity = default(long?), string timeZone = default(string), string deviceHcsVersion = default(string), IList configuredRoleTypes = default(IList), int? nodeCount = default(int?)) + /// The details of the move operation + /// on this resource. + /// The details of Edge Profile for this + /// resource + /// The details of data-residency related + /// properties for this resource + public DataBoxEdgeDevice(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), Sku sku = default(Sku), string etag = default(string), ResourceIdentity identity = default(ResourceIdentity), string kind = default(string), SystemData systemData = default(SystemData), SystemData systemData1 = default(SystemData), string dataBoxEdgeDeviceStatus = default(string), string serialNumber = default(string), string description = default(string), string modelDescription = default(string), string deviceType = default(string), string friendlyName = default(string), string culture = default(string), string deviceModel = default(string), string deviceSoftwareVersion = default(string), long? deviceLocalCapacity = default(long?), string timeZone = default(string), string deviceHcsVersion = default(string), IList configuredRoleTypes = default(IList), int? nodeCount = default(int?), ResourceMoveDetails resourceMoveDetails = default(ResourceMoveDetails), EdgeProfile edgeProfile = default(EdgeProfile), DataResidency dataResidency = default(DataResidency)) : base(id, name, type) { Location = location; Tags = tags; Sku = sku; Etag = etag; + Identity = identity; + Kind = kind; + SystemData = systemData; + SystemData1 = systemData1; DataBoxEdgeDeviceStatus = dataBoxEdgeDeviceStatus; SerialNumber = serialNumber; Description = description; @@ -99,6 +115,9 @@ public DataBoxEdgeDevice() DeviceHcsVersion = deviceHcsVersion; ConfiguredRoleTypes = configuredRoleTypes; NodeCount = nodeCount; + ResourceMoveDetails = resourceMoveDetails; + EdgeProfile = edgeProfile; + DataResidency = dataResidency; CustomInit(); } @@ -136,6 +155,32 @@ public DataBoxEdgeDevice() [JsonProperty(PropertyName = "etag")] public string Etag { get; set; } + /// + /// Gets or sets msi identity of the resource + /// + [JsonProperty(PropertyName = "identity")] + public ResourceIdentity Identity { get; set; } + + /// + /// Gets or sets the kind of the device. Possible values include: + /// 'AzureDataBoxGateway', 'AzureStackEdge', 'AzureStackHub', + /// 'AzureModularDataCentre' + /// + [JsonProperty(PropertyName = "kind")] + public string Kind { get; set; } + + /// + /// Gets or sets dataBoxEdge Resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + + /// + /// Gets or sets dataBoxEdge Device Properties + /// + [JsonProperty(PropertyName = "properties.systemData")] + public SystemData SystemData1 { get; set; } + /// /// Gets or sets the status of the Data Box Edge/Gateway device. /// Possible values include: 'ReadyToSetup', 'Online', 'Offline', @@ -152,17 +197,16 @@ public DataBoxEdgeDevice() public string SerialNumber { get; private set; } /// - /// Gets or sets the Description of the Data Box Edge/Gateway device. + /// Gets the Description of the Data Box Edge/Gateway device. /// [JsonProperty(PropertyName = "properties.description")] - public string Description { get; set; } + public string Description { get; private set; } /// - /// Gets or sets the description of the Data Box Edge/Gateway device - /// model. + /// Gets the description of the Data Box Edge/Gateway device model. /// [JsonProperty(PropertyName = "properties.modelDescription")] - public string ModelDescription { get; set; } + public string ModelDescription { get; private set; } /// /// Gets the type of the Data Box Edge/Gateway device. Possible values @@ -172,10 +216,10 @@ public DataBoxEdgeDevice() public string DeviceType { get; private set; } /// - /// Gets or sets the Data Box Edge/Gateway device name. + /// Gets the Data Box Edge/Gateway device name. /// [JsonProperty(PropertyName = "properties.friendlyName")] - public string FriendlyName { get; set; } + public string FriendlyName { get; private set; } /// /// Gets the Data Box Edge/Gateway device culture. @@ -226,6 +270,25 @@ public DataBoxEdgeDevice() [JsonProperty(PropertyName = "properties.nodeCount")] public int? NodeCount { get; private set; } + /// + /// Gets the details of the move operation on this resource. + /// + [JsonProperty(PropertyName = "properties.resourceMoveDetails")] + public ResourceMoveDetails ResourceMoveDetails { get; private set; } + + /// + /// Gets the details of Edge Profile for this resource + /// + [JsonProperty(PropertyName = "properties.edgeProfile")] + public EdgeProfile EdgeProfile { get; private set; } + + /// + /// Gets or sets the details of data-residency related properties for + /// this resource + /// + [JsonProperty(PropertyName = "properties.dataResidency")] + public DataResidency DataResidency { get; set; } + /// /// Validate the object. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfo.cs index 96bceeba29cd..13a1f1dd17e6 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfo.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfo.cs @@ -13,6 +13,8 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models using Microsoft.Rest; using Microsoft.Rest.Serialization; using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; using System.Linq; /// @@ -43,12 +45,32 @@ public DataBoxEdgeDeviceExtendedInfo() /// The public part of the encryption /// certificate. Client uses this to encrypt any secret. /// The Resource ID of the Resource. - public DataBoxEdgeDeviceExtendedInfo(string id = default(string), string name = default(string), string type = default(string), string encryptionKeyThumbprint = default(string), string encryptionKey = default(string), string resourceKey = default(string)) + /// The Key Vault ARM Id for client + /// secrets + /// The url to access the Client Key + /// Vault + /// The name of Channel Integrity + /// Key stored in the Client Key Vault + /// The version of Channel + /// Integrity Key stored in the Client Key Vault + /// Key vault sync status. Possible + /// values include: 'KeyVaultSynced', 'KeyVaultSyncFailed', + /// 'KeyVaultNotConfigured', 'KeyVaultSyncPending', 'KeyVaultSyncing', + /// 'KeyVaultNotSynced' + /// Device secrets, will be returned only + /// with ODataFilter $expand=deviceSecrets + public DataBoxEdgeDeviceExtendedInfo(string id = default(string), string name = default(string), string type = default(string), string encryptionKeyThumbprint = default(string), string encryptionKey = default(string), string resourceKey = default(string), string clientSecretStoreId = default(string), string clientSecretStoreUrl = default(string), string channelIntegrityKeyName = default(string), string channelIntegrityKeyVersion = default(string), string keyVaultSyncStatus = default(string), IDictionary deviceSecrets = default(IDictionary)) : base(id, name, type) { EncryptionKeyThumbprint = encryptionKeyThumbprint; EncryptionKey = encryptionKey; ResourceKey = resourceKey; + ClientSecretStoreId = clientSecretStoreId; + ClientSecretStoreUrl = clientSecretStoreUrl; + ChannelIntegrityKeyName = channelIntegrityKeyName; + ChannelIntegrityKeyVersion = channelIntegrityKeyVersion; + KeyVaultSyncStatus = keyVaultSyncStatus; + DeviceSecrets = deviceSecrets; CustomInit(); } @@ -76,5 +98,46 @@ public DataBoxEdgeDeviceExtendedInfo() [JsonProperty(PropertyName = "properties.resourceKey")] public string ResourceKey { get; private set; } + /// + /// Gets or sets the Key Vault ARM Id for client secrets + /// + [JsonProperty(PropertyName = "properties.clientSecretStoreId")] + public string ClientSecretStoreId { get; set; } + + /// + /// Gets or sets the url to access the Client Key Vault + /// + [JsonProperty(PropertyName = "properties.clientSecretStoreUrl")] + public string ClientSecretStoreUrl { get; set; } + + /// + /// Gets or sets the name of Channel Integrity Key stored in the Client + /// Key Vault + /// + [JsonProperty(PropertyName = "properties.channelIntegrityKeyName")] + public string ChannelIntegrityKeyName { get; set; } + + /// + /// Gets or sets the version of Channel Integrity Key stored in the + /// Client Key Vault + /// + [JsonProperty(PropertyName = "properties.channelIntegrityKeyVersion")] + public string ChannelIntegrityKeyVersion { get; set; } + + /// + /// Gets or sets key vault sync status. Possible values include: + /// 'KeyVaultSynced', 'KeyVaultSyncFailed', 'KeyVaultNotConfigured', + /// 'KeyVaultSyncPending', 'KeyVaultSyncing', 'KeyVaultNotSynced' + /// + [JsonProperty(PropertyName = "properties.keyVaultSyncStatus")] + public string KeyVaultSyncStatus { get; set; } + + /// + /// Gets device secrets, will be returned only with ODataFilter + /// $expand=deviceSecrets + /// + [JsonProperty(PropertyName = "properties.deviceSecrets")] + public IDictionary DeviceSecrets { get; private set; } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfoPatch.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfoPatch.cs new file mode 100644 index 000000000000..8534c4de0ba6 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceExtendedInfoPatch.cs @@ -0,0 +1,100 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// The Data Box Edge/Gateway device extended info patch. + /// + public partial class DataBoxEdgeDeviceExtendedInfoPatch + { + /// + /// Initializes a new instance of the + /// DataBoxEdgeDeviceExtendedInfoPatch class. + /// + public DataBoxEdgeDeviceExtendedInfoPatch() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the + /// DataBoxEdgeDeviceExtendedInfoPatch class. + /// + /// The Key Vault ARM Id for client + /// secrets + /// The url to access the Client Key + /// Vault + /// The name for Channel + /// Integrity Key stored in the Client Key Vault + /// The version of Channel + /// Integrity Key stored in the Client Key Vault + /// For changing or to initiate the resync to + /// key-vault set the status to KeyVaultSyncPending, rest of the status + /// will not be applicable. Possible values include: 'KeyVaultSynced', + /// 'KeyVaultSyncFailed', 'KeyVaultNotConfigured', + /// 'KeyVaultSyncPending', 'KeyVaultSyncing', + /// 'KeyVaultNotSynced' + public DataBoxEdgeDeviceExtendedInfoPatch(string clientSecretStoreId = default(string), string clientSecretStoreUrl = default(string), string channelIntegrityKeyName = default(string), string channelIntegrityKeyVersion = default(string), string syncStatus = default(string)) + { + ClientSecretStoreId = clientSecretStoreId; + ClientSecretStoreUrl = clientSecretStoreUrl; + ChannelIntegrityKeyName = channelIntegrityKeyName; + ChannelIntegrityKeyVersion = channelIntegrityKeyVersion; + SyncStatus = syncStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the Key Vault ARM Id for client secrets + /// + [JsonProperty(PropertyName = "clientSecretStoreId")] + public string ClientSecretStoreId { get; set; } + + /// + /// Gets or sets the url to access the Client Key Vault + /// + [JsonProperty(PropertyName = "clientSecretStoreUrl")] + public string ClientSecretStoreUrl { get; set; } + + /// + /// Gets or sets the name for Channel Integrity Key stored in the + /// Client Key Vault + /// + [JsonProperty(PropertyName = "channelIntegrityKeyName")] + public string ChannelIntegrityKeyName { get; set; } + + /// + /// Gets or sets the version of Channel Integrity Key stored in the + /// Client Key Vault + /// + [JsonProperty(PropertyName = "channelIntegrityKeyVersion")] + public string ChannelIntegrityKeyVersion { get; set; } + + /// + /// Gets or sets for changing or to initiate the resync to key-vault + /// set the status to KeyVaultSyncPending, rest of the status will not + /// be applicable. Possible values include: 'KeyVaultSynced', + /// 'KeyVaultSyncFailed', 'KeyVaultNotConfigured', + /// 'KeyVaultSyncPending', 'KeyVaultSyncing', 'KeyVaultNotSynced' + /// + [JsonProperty(PropertyName = "syncStatus")] + public string SyncStatus { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceKind.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceKind.cs new file mode 100644 index 000000000000..3a286e8bc18a --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDeviceKind.cs @@ -0,0 +1,24 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for DataBoxEdgeDeviceKind. + /// + public static class DataBoxEdgeDeviceKind + { + public const string AzureDataBoxGateway = "AzureDataBoxGateway"; + public const string AzureStackEdge = "AzureStackEdge"; + public const string AzureStackHub = "AzureStackHub"; + public const string AzureModularDataCentre = "AzureModularDataCentre"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevicePatch.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevicePatch.cs index 38ee25286aa0..e7c983409b6c 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevicePatch.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeDevicePatch.cs @@ -10,6 +10,8 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models { + using Microsoft.Rest; + using Microsoft.Rest.Serialization; using Newtonsoft.Json; using System.Collections; using System.Collections.Generic; @@ -18,6 +20,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models /// /// The Data Box Edge/Gateway device patch. /// + [Rest.Serialization.JsonTransformation] public partial class DataBoxEdgeDevicePatch { /// @@ -33,9 +36,14 @@ public DataBoxEdgeDevicePatch() /// /// The tags attached to the Data Box Edge/Gateway /// resource. - public DataBoxEdgeDevicePatch(IDictionary tags = default(IDictionary)) + /// Msi identity of the resource + /// Edge Profile property of the Data Box + /// Edge/Gateway device + public DataBoxEdgeDevicePatch(IDictionary tags = default(IDictionary), ResourceIdentity identity = default(ResourceIdentity), EdgeProfilePatch edgeProfile = default(EdgeProfilePatch)) { Tags = tags; + Identity = identity; + EdgeProfile = edgeProfile; CustomInit(); } @@ -51,5 +59,18 @@ public DataBoxEdgeDevicePatch() [JsonProperty(PropertyName = "tags")] public IDictionary Tags { get; set; } + /// + /// Gets or sets msi identity of the resource + /// + [JsonProperty(PropertyName = "identity")] + public ResourceIdentity Identity { get; set; } + + /// + /// Gets or sets edge Profile property of the Data Box Edge/Gateway + /// device + /// + [JsonProperty(PropertyName = "properties.edgeProfile")] + public EdgeProfilePatch EdgeProfile { get; set; } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeMoveRequest.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeMoveRequest.cs new file mode 100644 index 000000000000..e47b34d921c9 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeMoveRequest.cs @@ -0,0 +1,80 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Resource Move details + /// + public partial class DataBoxEdgeMoveRequest + { + /// + /// Initializes a new instance of the DataBoxEdgeMoveRequest class. + /// + public DataBoxEdgeMoveRequest() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DataBoxEdgeMoveRequest class. + /// + /// Target resource group + /// ARMId + /// List of resources to be moved + public DataBoxEdgeMoveRequest(string targetResourceGroup, IList resources) + { + TargetResourceGroup = targetResourceGroup; + Resources = resources; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets target resource group ARMId + /// + [JsonProperty(PropertyName = "targetResourceGroup")] + public string TargetResourceGroup { get; set; } + + /// + /// Gets or sets list of resources to be moved + /// + [JsonProperty(PropertyName = "resources")] + public IList Resources { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (TargetResourceGroup == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "TargetResourceGroup"); + } + if (Resources == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Resources"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeSku.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeSku.cs new file mode 100644 index 000000000000..450f07804f86 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataBoxEdgeSku.cs @@ -0,0 +1,189 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// The Sku information. + /// + public partial class DataBoxEdgeSku + { + /// + /// Initializes a new instance of the DataBoxEdgeSku class. + /// + public DataBoxEdgeSku() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DataBoxEdgeSku class. + /// + /// The type of the resource. + /// The Sku name. Possible values include: + /// 'Gateway', 'Edge', 'TEA_1Node', 'TEA_1Node_UPS', + /// 'TEA_1Node_Heater', 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', + /// 'TEA_4Node_UPS_Heater', 'TMA', 'TDC', 'TCA_Small', 'GPU', + /// 'TCA_Large', 'EdgeP_Base', 'EdgeP_High', 'EdgePR_Base', + /// 'EdgePR_Base_UPS', 'EP2_64_1VPU_W', 'EP2_128_1T4_Mx1_W', + /// 'EP2_256_2T4_W', 'EdgeMR_Mini', 'RCA_Small', 'RCA_Large', 'RDC', + /// 'Management' + /// The Sku kind. + /// The Sku tier. Possible values include: + /// 'Standard' + /// The Sku kind. + /// The Sku family. + /// Availability of the Sku for the + /// region. + /// The API versions in which Sku is + /// available. + /// Availability of the Sku for the + /// location/zone/site. + /// The pricing info of the Sku. + /// Sku can be signed up by customer or not. + /// Possible values include: 'None', 'Available' + /// Availability of the Sku as preview/stable. + /// Possible values include: 'Stable', 'Preview' + /// Links to the next set of results. + /// Possible values include: 'Available', 'Unavailable' + /// List of Shipment Types supported by + /// this SKU + /// The capability info of the SKU. + public DataBoxEdgeSku(string resourceType = default(string), string name = default(string), string kind = default(string), string tier = default(string), string size = default(string), string family = default(string), IList locations = default(IList), IList apiVersions = default(IList), IList locationInfo = default(IList), IList costs = default(IList), string signupOption = default(string), string version = default(string), string availability = default(string), IList shipmentTypes = default(IList), IList capabilities = default(IList)) + { + ResourceType = resourceType; + Name = name; + Kind = kind; + Tier = tier; + Size = size; + Family = family; + Locations = locations; + ApiVersions = apiVersions; + LocationInfo = locationInfo; + Costs = costs; + SignupOption = signupOption; + Version = version; + Availability = availability; + ShipmentTypes = shipmentTypes; + Capabilities = capabilities; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets the type of the resource. + /// + [JsonProperty(PropertyName = "resourceType")] + public string ResourceType { get; private set; } + + /// + /// Gets the Sku name. Possible values include: 'Gateway', 'Edge', + /// 'TEA_1Node', 'TEA_1Node_UPS', 'TEA_1Node_Heater', + /// 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', 'TEA_4Node_UPS_Heater', + /// 'TMA', 'TDC', 'TCA_Small', 'GPU', 'TCA_Large', 'EdgeP_Base', + /// 'EdgeP_High', 'EdgePR_Base', 'EdgePR_Base_UPS', 'EP2_64_1VPU_W', + /// 'EP2_128_1T4_Mx1_W', 'EP2_256_2T4_W', 'EdgeMR_Mini', 'RCA_Small', + /// 'RCA_Large', 'RDC', 'Management' + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; private set; } + + /// + /// Gets the Sku kind. + /// + [JsonProperty(PropertyName = "kind")] + public string Kind { get; private set; } + + /// + /// Gets the Sku tier. Possible values include: 'Standard' + /// + [JsonProperty(PropertyName = "tier")] + public string Tier { get; private set; } + + /// + /// Gets the Sku kind. + /// + [JsonProperty(PropertyName = "size")] + public string Size { get; private set; } + + /// + /// Gets the Sku family. + /// + [JsonProperty(PropertyName = "family")] + public string Family { get; private set; } + + /// + /// Gets availability of the Sku for the region. + /// + [JsonProperty(PropertyName = "locations")] + public IList Locations { get; private set; } + + /// + /// Gets the API versions in which Sku is available. + /// + [JsonProperty(PropertyName = "apiVersions")] + public IList ApiVersions { get; private set; } + + /// + /// Gets availability of the Sku for the location/zone/site. + /// + [JsonProperty(PropertyName = "locationInfo")] + public IList LocationInfo { get; private set; } + + /// + /// Gets the pricing info of the Sku. + /// + [JsonProperty(PropertyName = "costs")] + public IList Costs { get; private set; } + + /// + /// Gets sku can be signed up by customer or not. Possible values + /// include: 'None', 'Available' + /// + [JsonProperty(PropertyName = "signupOption")] + public string SignupOption { get; private set; } + + /// + /// Gets availability of the Sku as preview/stable. Possible values + /// include: 'Stable', 'Preview' + /// + [JsonProperty(PropertyName = "version")] + public string Version { get; private set; } + + /// + /// Gets links to the next set of results. Possible values include: + /// 'Available', 'Unavailable' + /// + [JsonProperty(PropertyName = "availability")] + public string Availability { get; private set; } + + /// + /// Gets list of Shipment Types supported by this SKU + /// + [JsonProperty(PropertyName = "shipmentTypes")] + public IList ShipmentTypes { get; private set; } + + /// + /// Gets the capability info of the SKU. + /// + [JsonProperty(PropertyName = "capabilities")] + public IList Capabilities { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidency.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidency.cs new file mode 100644 index 000000000000..5f62f7d50cec --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidency.cs @@ -0,0 +1,54 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Wraps data-residency related information for edge-resource and this + /// should be used with ARM layer. + /// + public partial class DataResidency + { + /// + /// Initializes a new instance of the DataResidency class. + /// + public DataResidency() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DataResidency class. + /// + /// DataResidencyType enum. Possible values include: + /// 'GeoZoneReplication', 'ZoneReplication' + public DataResidency(string type = default(string)) + { + Type = type; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets dataResidencyType enum. Possible values include: + /// 'GeoZoneReplication', 'ZoneReplication' + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionReasonCode.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidencyType.cs similarity index 65% rename from sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionReasonCode.cs rename to sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidencyType.cs index dd75a573f58f..72fab6fa2108 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionReasonCode.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DataResidencyType.cs @@ -12,11 +12,11 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models { /// - /// Defines values for SkuRestrictionReasonCode. + /// Defines values for DataResidencyType. /// - public static class SkuRestrictionReasonCode + public static class DataResidencyType { - public const string NotAvailableForSubscription = "NotAvailableForSubscription"; - public const string QuotaId = "QuotaId"; + public const string GeoZoneReplication = "GeoZoneReplication"; + public const string ZoneReplication = "ZoneReplication"; } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticProactiveLogCollectionSettings.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticProactiveLogCollectionSettings.cs new file mode 100644 index 000000000000..f89ded5026a2 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticProactiveLogCollectionSettings.cs @@ -0,0 +1,85 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// The diagnostic proactive log collection settings of a device. + /// + [Rest.Serialization.JsonTransformation] + public partial class DiagnosticProactiveLogCollectionSettings : ARMBaseModel + { + /// + /// Initializes a new instance of the + /// DiagnosticProactiveLogCollectionSettings class. + /// + public DiagnosticProactiveLogCollectionSettings() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the + /// DiagnosticProactiveLogCollectionSettings class. + /// + /// Proactive diagnostic collection consent + /// flag. Possible values include: 'Enabled', 'Disabled' + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// DiagnosticProactiveLogCollectionSettings + public DiagnosticProactiveLogCollectionSettings(string userConsent, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) + : base(id, name, type) + { + SystemData = systemData; + UserConsent = userConsent; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets diagnosticProactiveLogCollectionSettings + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + + /// + /// Gets or sets proactive diagnostic collection consent flag. Possible + /// values include: 'Enabled', 'Disabled' + /// + [JsonProperty(PropertyName = "properties.userConsent")] + public string UserConsent { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (UserConsent == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "UserConsent"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticRemoteSupportSettings.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticRemoteSupportSettings.cs new file mode 100644 index 000000000000..52e0fb563c4c --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/DiagnosticRemoteSupportSettings.cs @@ -0,0 +1,73 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// The remote support settings of a device. + /// + [Rest.Serialization.JsonTransformation] + public partial class DiagnosticRemoteSupportSettings : ARMBaseModel + { + /// + /// Initializes a new instance of the DiagnosticRemoteSupportSettings + /// class. + /// + public DiagnosticRemoteSupportSettings() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the DiagnosticRemoteSupportSettings + /// class. + /// + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// DiagnosticRemoteSupportSettings + /// Remote support settings + /// list according to the RemoteApplicationType + public DiagnosticRemoteSupportSettings(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), IList remoteSupportSettingsList = default(IList)) + : base(id, name, type) + { + SystemData = systemData; + RemoteSupportSettingsList = remoteSupportSettingsList; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets diagnosticRemoteSupportSettings + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + + /// + /// Gets or sets remote support settings list according to the + /// RemoteApplicationType + /// + [JsonProperty(PropertyName = "properties.remoteSupportSettingsList")] + public IList RemoteSupportSettingsList { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfile.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfile.cs new file mode 100644 index 000000000000..b0423f20b38d --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfile.cs @@ -0,0 +1,51 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Details about Edge Profile for the resource + /// + public partial class EdgeProfile + { + /// + /// Initializes a new instance of the EdgeProfile class. + /// + public EdgeProfile() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the EdgeProfile class. + /// + /// Edge Profile Subscription + public EdgeProfile(EdgeProfileSubscription subscription = default(EdgeProfileSubscription)) + { + Subscription = subscription; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets edge Profile Subscription + /// + [JsonProperty(PropertyName = "subscription")] + public EdgeProfileSubscription Subscription { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfilePatch.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfilePatch.cs new file mode 100644 index 000000000000..ea050fe15313 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfilePatch.cs @@ -0,0 +1,53 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// The Data Box Edge/Gateway Edge Profile patch. + /// + public partial class EdgeProfilePatch + { + /// + /// Initializes a new instance of the EdgeProfilePatch class. + /// + public EdgeProfilePatch() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the EdgeProfilePatch class. + /// + /// The Data Box Edge/Gateway Edge Profile + /// Subscription patch + public EdgeProfilePatch(EdgeProfileSubscriptionPatch subscription = default(EdgeProfileSubscriptionPatch)) + { + Subscription = subscription; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the Data Box Edge/Gateway Edge Profile Subscription + /// patch + /// + [JsonProperty(PropertyName = "subscription")] + public EdgeProfileSubscriptionPatch Subscription { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscription.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscription.cs new file mode 100644 index 000000000000..04866d79a126 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscription.cs @@ -0,0 +1,117 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Subscription details for the Edge Profile + /// + [Rest.Serialization.JsonTransformation] + public partial class EdgeProfileSubscription + { + /// + /// Initializes a new instance of the EdgeProfileSubscription class. + /// + public EdgeProfileSubscription() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the EdgeProfileSubscription class. + /// + /// Edge Subscription Registration + /// ID + /// ARM ID of the subscription + /// Possible values include: 'Registered', + /// 'Warned', 'Suspended', 'Deleted', 'Unregistered' + public EdgeProfileSubscription(string registrationId = default(string), string id = default(string), string state = default(string), string registrationDate = default(string), string subscriptionId = default(string), string tenantId = default(string), string locationPlacementId = default(string), string quotaId = default(string), string serializedDetails = default(string), IList registeredFeatures = default(IList)) + { + RegistrationId = registrationId; + Id = id; + State = state; + RegistrationDate = registrationDate; + SubscriptionId = subscriptionId; + TenantId = tenantId; + LocationPlacementId = locationPlacementId; + QuotaId = quotaId; + SerializedDetails = serializedDetails; + RegisteredFeatures = registeredFeatures; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets edge Subscription Registration ID + /// + [JsonProperty(PropertyName = "registrationId")] + public string RegistrationId { get; set; } + + /// + /// Gets or sets ARM ID of the subscription + /// + [JsonProperty(PropertyName = "id")] + public string Id { get; set; } + + /// + /// Gets or sets possible values include: 'Registered', 'Warned', + /// 'Suspended', 'Deleted', 'Unregistered' + /// + [JsonProperty(PropertyName = "state")] + public string State { get; set; } + + /// + /// + [JsonProperty(PropertyName = "registrationDate")] + public string RegistrationDate { get; set; } + + /// + /// + [JsonProperty(PropertyName = "subscriptionId")] + public string SubscriptionId { get; set; } + + /// + /// + [JsonProperty(PropertyName = "properties.tenantId")] + public string TenantId { get; set; } + + /// + /// + [JsonProperty(PropertyName = "properties.locationPlacementId")] + public string LocationPlacementId { get; set; } + + /// + /// + [JsonProperty(PropertyName = "properties.quotaId")] + public string QuotaId { get; set; } + + /// + /// + [JsonProperty(PropertyName = "properties.serializedDetails")] + public string SerializedDetails { get; set; } + + /// + /// + [JsonProperty(PropertyName = "properties.registeredFeatures")] + public IList RegisteredFeatures { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscriptionPatch.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscriptionPatch.cs new file mode 100644 index 000000000000..8bf6b40ca3af --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EdgeProfileSubscriptionPatch.cs @@ -0,0 +1,55 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// The Data Box Edge/Gateway Edge Profile Subscription patch. + /// + public partial class EdgeProfileSubscriptionPatch + { + /// + /// Initializes a new instance of the EdgeProfileSubscriptionPatch + /// class. + /// + public EdgeProfileSubscriptionPatch() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the EdgeProfileSubscriptionPatch + /// class. + /// + /// The path ID that uniquely identifies the + /// subscription of the edge profile. + public EdgeProfileSubscriptionPatch(string id = default(string)) + { + Id = id; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the path ID that uniquely identifies the subscription + /// of the edge profile. + /// + [JsonProperty(PropertyName = "id")] + public string Id { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EtcdInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EtcdInfo.cs new file mode 100644 index 000000000000..4474ad0d99bb --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/EtcdInfo.cs @@ -0,0 +1,59 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Etcd configuration + /// + public partial class EtcdInfo + { + /// + /// Initializes a new instance of the EtcdInfo class. + /// + public EtcdInfo() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the EtcdInfo class. + /// + /// Etcd type + /// Etcd version + public EtcdInfo(string type = default(string), string version = default(string)) + { + Type = type; + Version = version; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets etcd type + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; private set; } + + /// + /// Gets etcd version + /// + [JsonProperty(PropertyName = "version")] + public string Version { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/FileEventTrigger.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/FileEventTrigger.cs index c9772605cb7a..78c4285ac914 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/FileEventTrigger.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/FileEventTrigger.cs @@ -39,13 +39,14 @@ public FileEventTrigger() /// object. /// The object name. /// The hierarchical type of the object. + /// Trigger in DataBoxEdge Resource /// A custom context tag typically used /// to correlate the trigger against its usage. For example, if a /// periodic timer trigger is intended for certain specific IoT modules /// in the device, the tag can be the name or the image URL of the /// module. - public FileEventTrigger(FileSourceInfo sourceInfo, RoleSinkInfo sinkInfo, string id = default(string), string name = default(string), string type = default(string), string customContextTag = default(string)) - : base(id, name, type) + public FileEventTrigger(FileSourceInfo sourceInfo, RoleSinkInfo sinkInfo, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string customContextTag = default(string)) + : base(id, name, type, systemData) { SourceInfo = sourceInfo; SinkInfo = sinkInfo; @@ -103,6 +104,13 @@ public virtual void Validate() { SinkInfo.Validate(); } + if (CustomContextTag != null) + { + if (CustomContextTag.Length > 192) + { + throw new ValidationException(ValidationRules.MaxLength, "CustomContextTag", 192); + } + } } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/GenerateCertResponse.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/GenerateCertResponse.cs new file mode 100644 index 000000000000..01764c06d93e --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/GenerateCertResponse.cs @@ -0,0 +1,74 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Used in activation key generation flow. + /// + public partial class GenerateCertResponse + { + /// + /// Initializes a new instance of the GenerateCertResponse class. + /// + public GenerateCertResponse() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the GenerateCertResponse class. + /// + /// Gets or sets base64 encoded certificate raw + /// data, + /// this is the public part needed to be uploaded to cert vault + /// Gets or sets base64 encoded private part + /// of the certificate, + /// needed to form the activation key + /// Gets or sets expiry time in + /// UTC + public GenerateCertResponse(string publicKey = default(string), string privateKey = default(string), string expiryTimeInUTC = default(string)) + { + PublicKey = publicKey; + PrivateKey = privateKey; + ExpiryTimeInUTC = expiryTimeInUTC; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets base64 encoded certificate raw data, + /// this is the public part needed to be uploaded to cert vault + /// + [JsonProperty(PropertyName = "publicKey")] + public string PublicKey { get; set; } + + /// + /// Gets or sets base64 encoded private part of the certificate, + /// needed to form the activation key + /// + [JsonProperty(PropertyName = "privateKey")] + public string PrivateKey { get; set; } + + /// + /// Gets or sets expiry time in UTC + /// + [JsonProperty(PropertyName = "expiryTimeInUTC")] + public string ExpiryTimeInUTC { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/HostPlatformType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/HostPlatformType.cs new file mode 100644 index 000000000000..e9775e4bf042 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/HostPlatformType.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for HostPlatformType. + /// + public static class HostPlatformType + { + public const string KubernetesCluster = "KubernetesCluster"; + public const string LinuxVM = "LinuxVM"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ImageRepositoryCredential.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ImageRepositoryCredential.cs new file mode 100644 index 000000000000..09079da1c5ec --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ImageRepositoryCredential.cs @@ -0,0 +1,90 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Image repository credential. + /// + public partial class ImageRepositoryCredential + { + /// + /// Initializes a new instance of the ImageRepositoryCredential class. + /// + public ImageRepositoryCredential() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ImageRepositoryCredential class. + /// + /// Image repository url (e.g.: + /// mcr.microsoft.com). + /// Repository user name. + /// Repository user password. + public ImageRepositoryCredential(string imageRepositoryUrl, string userName, AsymmetricEncryptedSecret password = default(AsymmetricEncryptedSecret)) + { + ImageRepositoryUrl = imageRepositoryUrl; + UserName = userName; + Password = password; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets image repository url (e.g.: mcr.microsoft.com). + /// + [JsonProperty(PropertyName = "imageRepositoryUrl")] + public string ImageRepositoryUrl { get; set; } + + /// + /// Gets or sets repository user name. + /// + [JsonProperty(PropertyName = "userName")] + public string UserName { get; set; } + + /// + /// Gets or sets repository user password. + /// + [JsonProperty(PropertyName = "password")] + public AsymmetricEncryptedSecret Password { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (ImageRepositoryUrl == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ImageRepositoryUrl"); + } + if (UserName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "UserName"); + } + if (Password != null) + { + Password.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/InstallationImpact.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/InstallationImpact.cs new file mode 100644 index 000000000000..0aa971ab121e --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/InstallationImpact.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for InstallationImpact. + /// + public static class InstallationImpact + { + public const string None = "None"; + public const string DeviceRebooted = "DeviceRebooted"; + public const string KubernetesWorkloadsDown = "KubernetesWorkloadsDown"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTAddon.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTAddon.cs new file mode 100644 index 000000000000..48f9de7adfab --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTAddon.cs @@ -0,0 +1,140 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// IoT Addon. + /// + [Newtonsoft.Json.JsonObject("IotEdge")] + [Rest.Serialization.JsonTransformation] + public partial class IoTAddon : Addon + { + /// + /// Initializes a new instance of the IoTAddon class. + /// + public IoTAddon() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the IoTAddon class. + /// + /// IoT device metadata to which + /// appliance needs to be connected. + /// IoT edge device to which the IoT + /// Addon needs to be configured. + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Addon type + /// Version of IoT running on the + /// appliance. + /// Host OS supported by the IoT addon. + /// Possible values include: 'Windows', 'Linux' + /// Platform where the runtime is + /// hosted. Possible values include: 'KubernetesCluster', + /// 'LinuxVM' + /// Addon Provisioning State. Possible + /// values include: 'Invalid', 'Creating', 'Created', 'Updating', + /// 'Reconfiguring', 'Failed', 'Deleting' + public IoTAddon(IoTDeviceInfo ioTDeviceDetails, IoTDeviceInfo ioTEdgeDeviceDetails, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string version = default(string), string hostPlatform = default(string), string hostPlatformType = default(string), string provisioningState = default(string)) + : base(id, name, type, systemData) + { + IoTDeviceDetails = ioTDeviceDetails; + IoTEdgeDeviceDetails = ioTEdgeDeviceDetails; + Version = version; + HostPlatform = hostPlatform; + HostPlatformType = hostPlatformType; + ProvisioningState = provisioningState; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets ioT device metadata to which appliance needs to be + /// connected. + /// + [JsonProperty(PropertyName = "properties.ioTDeviceDetails")] + public IoTDeviceInfo IoTDeviceDetails { get; set; } + + /// + /// Gets or sets ioT edge device to which the IoT Addon needs to be + /// configured. + /// + [JsonProperty(PropertyName = "properties.ioTEdgeDeviceDetails")] + public IoTDeviceInfo IoTEdgeDeviceDetails { get; set; } + + /// + /// Gets version of IoT running on the appliance. + /// + [JsonProperty(PropertyName = "properties.version")] + public string Version { get; private set; } + + /// + /// Gets host OS supported by the IoT addon. Possible values include: + /// 'Windows', 'Linux' + /// + [JsonProperty(PropertyName = "properties.hostPlatform")] + public string HostPlatform { get; private set; } + + /// + /// Gets platform where the runtime is hosted. Possible values include: + /// 'KubernetesCluster', 'LinuxVM' + /// + [JsonProperty(PropertyName = "properties.hostPlatformType")] + public string HostPlatformType { get; private set; } + + /// + /// Gets addon Provisioning State. Possible values include: 'Invalid', + /// 'Creating', 'Created', 'Updating', 'Reconfiguring', 'Failed', + /// 'Deleting' + /// + [JsonProperty(PropertyName = "properties.provisioningState")] + public string ProvisioningState { get; private set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (IoTDeviceDetails == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "IoTDeviceDetails"); + } + if (IoTEdgeDeviceDetails == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "IoTEdgeDeviceDetails"); + } + if (IoTDeviceDetails != null) + { + IoTDeviceDetails.Validate(); + } + if (IoTEdgeDeviceDetails != null) + { + IoTEdgeDeviceDetails.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTDeviceInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTDeviceInfo.cs index 4b4a3389ecde..5c0479ea58df 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTDeviceInfo.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTDeviceInfo.cs @@ -35,8 +35,8 @@ public IoTDeviceInfo() /// the device. /// Id for the IoT hub associated to the /// device. - /// IoT device authentication - /// info. + /// Encrypted IoT device/IoT edge device + /// connection string. public IoTDeviceInfo(string deviceId, string ioTHostHub, string ioTHostHubId = default(string), Authentication authentication = default(Authentication)) { DeviceId = deviceId; @@ -70,7 +70,8 @@ public IoTDeviceInfo() public string IoTHostHubId { get; set; } /// - /// Gets or sets ioT device authentication info. + /// Gets or sets encrypted IoT device/IoT edge device connection + /// string. /// [JsonProperty(PropertyName = "authentication")] public Authentication Authentication { get; set; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTEdgeAgentInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTEdgeAgentInfo.cs new file mode 100644 index 000000000000..eed259b5b5aa --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTEdgeAgentInfo.cs @@ -0,0 +1,90 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Linq; + + /// + /// IoT edge agent details is optional, this will be used for download + /// system Agent module while bootstrapping IoT Role if specified. + /// + public partial class IoTEdgeAgentInfo + { + /// + /// Initializes a new instance of the IoTEdgeAgentInfo class. + /// + public IoTEdgeAgentInfo() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the IoTEdgeAgentInfo class. + /// + /// Name of the IoT edge agent image. + /// Image Tag. + /// Image repository details. + public IoTEdgeAgentInfo(string imageName, string tag, ImageRepositoryCredential imageRepository = default(ImageRepositoryCredential)) + { + ImageName = imageName; + Tag = tag; + ImageRepository = imageRepository; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets name of the IoT edge agent image. + /// + [JsonProperty(PropertyName = "imageName")] + public string ImageName { get; set; } + + /// + /// Gets or sets image Tag. + /// + [JsonProperty(PropertyName = "tag")] + public string Tag { get; set; } + + /// + /// Gets or sets image repository details. + /// + [JsonProperty(PropertyName = "imageRepository")] + public ImageRepositoryCredential ImageRepository { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (ImageName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ImageName"); + } + if (Tag == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Tag"); + } + if (ImageRepository != null) + { + ImageRepository.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTRole.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTRole.cs index 2387f3ffd574..543c8cd8854e 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTRole.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/IoTRole.cs @@ -47,15 +47,25 @@ public IoTRole() /// object. /// The object name. /// The hierarchical type of the object. + /// Role configured on ASE resource /// Mount points of shares in /// role(s). - public IoTRole(string hostPlatform, IoTDeviceInfo ioTDeviceDetails, IoTDeviceInfo ioTEdgeDeviceDetails, string roleStatus, string id = default(string), string name = default(string), string type = default(string), IList shareMappings = default(IList)) - : base(id, name, type) + /// Iot edge agent details to download + /// the agent and bootstrap iot runtime. + /// Platform where the Iot runtime is + /// hosted. Possible values include: 'KubernetesCluster', + /// 'LinuxVM' + /// Resource allocation + public IoTRole(string hostPlatform, IoTDeviceInfo ioTDeviceDetails, IoTDeviceInfo ioTEdgeDeviceDetails, string roleStatus, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), IList shareMappings = default(IList), IoTEdgeAgentInfo ioTEdgeAgentInfo = default(IoTEdgeAgentInfo), string hostPlatformType = default(string), ComputeResource computeResource = default(ComputeResource)) + : base(id, name, type, systemData) { HostPlatform = hostPlatform; IoTDeviceDetails = ioTDeviceDetails; IoTEdgeDeviceDetails = ioTEdgeDeviceDetails; ShareMappings = shareMappings; + IoTEdgeAgentInfo = ioTEdgeAgentInfo; + HostPlatformType = hostPlatformType; + ComputeResource = computeResource; RoleStatus = roleStatus; CustomInit(); } @@ -92,6 +102,26 @@ public IoTRole() [JsonProperty(PropertyName = "properties.shareMappings")] public IList ShareMappings { get; set; } + /// + /// Gets or sets iot edge agent details to download the agent and + /// bootstrap iot runtime. + /// + [JsonProperty(PropertyName = "properties.ioTEdgeAgentInfo")] + public IoTEdgeAgentInfo IoTEdgeAgentInfo { get; set; } + + /// + /// Gets platform where the Iot runtime is hosted. Possible values + /// include: 'KubernetesCluster', 'LinuxVM' + /// + [JsonProperty(PropertyName = "properties.hostPlatformType")] + public string HostPlatformType { get; private set; } + + /// + /// Gets or sets resource allocation + /// + [JsonProperty(PropertyName = "properties.computeResource")] + public ComputeResource ComputeResource { get; set; } + /// /// Gets or sets role status. Possible values include: 'Enabled', /// 'Disabled' @@ -141,6 +171,14 @@ public virtual void Validate() } } } + if (IoTEdgeAgentInfo != null) + { + IoTEdgeAgentInfo.Validate(); + } + if (ComputeResource != null) + { + ComputeResource.Validate(); + } } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Job.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Job.cs index cee41f92c233..6306e0d79c84 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Job.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Job.cs @@ -48,7 +48,8 @@ public Job() /// The error details. /// The type of the job. Possible values include: /// 'Invalid', 'ScanForUpdates', 'DownloadUpdates', 'InstallUpdates', - /// 'RefreshShare', 'RefreshContainer' + /// 'RefreshShare', 'RefreshContainer', 'Backup', 'Restore', + /// 'TriggerSupportPackage' /// Current stage of the update operation. /// Possible values include: 'Unknown', 'Initial', 'ScanStarted', /// 'ScanComplete', 'ScanFailed', 'DownloadStarted', @@ -146,7 +147,8 @@ public Job() /// /// Gets the type of the job. Possible values include: 'Invalid', /// 'ScanForUpdates', 'DownloadUpdates', 'InstallUpdates', - /// 'RefreshShare', 'RefreshContainer' + /// 'RefreshShare', 'RefreshContainer', 'Backup', 'Restore', + /// 'TriggerSupportPackage' /// [JsonProperty(PropertyName = "properties.jobType")] public string JobType { get; private set; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/JobType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/JobType.cs index d4cca1910e13..21481b6656b8 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/JobType.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/JobType.cs @@ -22,5 +22,8 @@ public static class JobType public const string InstallUpdates = "InstallUpdates"; public const string RefreshShare = "RefreshShare"; public const string RefreshContainer = "RefreshContainer"; + public const string Backup = "Backup"; + public const string Restore = "Restore"; + public const string TriggerSupportPackage = "TriggerSupportPackage"; } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KeyVaultSyncStatus.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KeyVaultSyncStatus.cs new file mode 100644 index 000000000000..d7c3e8940f91 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KeyVaultSyncStatus.cs @@ -0,0 +1,26 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for KeyVaultSyncStatus. + /// + public static class KeyVaultSyncStatus + { + public const string KeyVaultSynced = "KeyVaultSynced"; + public const string KeyVaultSyncFailed = "KeyVaultSyncFailed"; + public const string KeyVaultNotConfigured = "KeyVaultNotConfigured"; + public const string KeyVaultSyncPending = "KeyVaultSyncPending"; + public const string KeyVaultSyncing = "KeyVaultSyncing"; + public const string KeyVaultNotSynced = "KeyVaultNotSynced"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesClusterInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesClusterInfo.cs new file mode 100644 index 000000000000..a393bd018864 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesClusterInfo.cs @@ -0,0 +1,83 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Kubernetes cluster configuration + /// + public partial class KubernetesClusterInfo + { + /// + /// Initializes a new instance of the KubernetesClusterInfo class. + /// + public KubernetesClusterInfo() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesClusterInfo class. + /// + /// Kubernetes cluster version + /// Etcd configuration + /// Kubernetes cluster nodes + public KubernetesClusterInfo(string version, EtcdInfo etcdInfo = default(EtcdInfo), IList nodes = default(IList)) + { + EtcdInfo = etcdInfo; + Nodes = nodes; + Version = version; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets etcd configuration + /// + [JsonProperty(PropertyName = "etcdInfo")] + public EtcdInfo EtcdInfo { get; private set; } + + /// + /// Gets kubernetes cluster nodes + /// + [JsonProperty(PropertyName = "nodes")] + public IList Nodes { get; private set; } + + /// + /// Gets or sets kubernetes cluster version + /// + [JsonProperty(PropertyName = "version")] + public string Version { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (Version == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Version"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesIPConfiguration.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesIPConfiguration.cs new file mode 100644 index 000000000000..493f53904535 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesIPConfiguration.cs @@ -0,0 +1,59 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes node IP configuration + /// + public partial class KubernetesIPConfiguration + { + /// + /// Initializes a new instance of the KubernetesIPConfiguration class. + /// + public KubernetesIPConfiguration() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesIPConfiguration class. + /// + /// Port of the Kubernetes node. + /// IP address of the Kubernetes node. + public KubernetesIPConfiguration(string port = default(string), string ipAddress = default(string)) + { + Port = port; + IpAddress = ipAddress; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets port of the Kubernetes node. + /// + [JsonProperty(PropertyName = "port")] + public string Port { get; private set; } + + /// + /// Gets or sets IP address of the Kubernetes node. + /// + [JsonProperty(PropertyName = "ipAddress")] + public string IpAddress { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesNodeType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesNodeType.cs new file mode 100644 index 000000000000..2d3b2c4bb37e --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesNodeType.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for KubernetesNodeType. + /// + public static class KubernetesNodeType + { + public const string Invalid = "Invalid"; + public const string Master = "Master"; + public const string Worker = "Worker"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRole.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRole.cs new file mode 100644 index 000000000000..6db823eeb751 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRole.cs @@ -0,0 +1,147 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes role, Currently it's in Private Preview + /// + [Newtonsoft.Json.JsonObject("Kubernetes")] + [Rest.Serialization.JsonTransformation] + public partial class KubernetesRole : Role + { + /// + /// Initializes a new instance of the KubernetesRole class. + /// + public KubernetesRole() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRole class. + /// + /// Host OS supported by the Kubernetes + /// role. Possible values include: 'Windows', 'Linux' + /// Kubernetes cluster + /// configuration + /// Kubernetes role + /// resources + /// Role status. Possible values include: + /// 'Enabled', 'Disabled' + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Role configured on ASE resource + /// State of Kubernetes deployment. + /// Possible values include: 'Invalid', 'Creating', 'Created', + /// 'Updating', 'Reconfiguring', 'Failed', 'Deleting' + /// Platform where the runtime is + /// hosted. Possible values include: 'KubernetesCluster', + /// 'LinuxVM' + public KubernetesRole(string hostPlatform, KubernetesClusterInfo kubernetesClusterInfo, KubernetesRoleResources kubernetesRoleResources, string roleStatus, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string provisioningState = default(string), string hostPlatformType = default(string)) + : base(id, name, type, systemData) + { + HostPlatform = hostPlatform; + ProvisioningState = provisioningState; + HostPlatformType = hostPlatformType; + KubernetesClusterInfo = kubernetesClusterInfo; + KubernetesRoleResources = kubernetesRoleResources; + RoleStatus = roleStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets host OS supported by the Kubernetes role. Possible + /// values include: 'Windows', 'Linux' + /// + [JsonProperty(PropertyName = "properties.hostPlatform")] + public string HostPlatform { get; set; } + + /// + /// Gets state of Kubernetes deployment. Possible values include: + /// 'Invalid', 'Creating', 'Created', 'Updating', 'Reconfiguring', + /// 'Failed', 'Deleting' + /// + [JsonProperty(PropertyName = "properties.provisioningState")] + public string ProvisioningState { get; private set; } + + /// + /// Gets platform where the runtime is hosted. Possible values include: + /// 'KubernetesCluster', 'LinuxVM' + /// + [JsonProperty(PropertyName = "properties.hostPlatformType")] + public string HostPlatformType { get; private set; } + + /// + /// Gets or sets kubernetes cluster configuration + /// + [JsonProperty(PropertyName = "properties.kubernetesClusterInfo")] + public KubernetesClusterInfo KubernetesClusterInfo { get; set; } + + /// + /// Gets or sets kubernetes role resources + /// + [JsonProperty(PropertyName = "properties.kubernetesRoleResources")] + public KubernetesRoleResources KubernetesRoleResources { get; set; } + + /// + /// Gets or sets role status. Possible values include: 'Enabled', + /// 'Disabled' + /// + [JsonProperty(PropertyName = "properties.roleStatus")] + public string RoleStatus { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (HostPlatform == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "HostPlatform"); + } + if (KubernetesClusterInfo == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "KubernetesClusterInfo"); + } + if (KubernetesRoleResources == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "KubernetesRoleResources"); + } + if (RoleStatus == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "RoleStatus"); + } + if (KubernetesClusterInfo != null) + { + KubernetesClusterInfo.Validate(); + } + if (KubernetesRoleResources != null) + { + KubernetesRoleResources.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleCompute.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleCompute.cs new file mode 100644 index 000000000000..7411559ca894 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleCompute.cs @@ -0,0 +1,81 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes role compute resource + /// + public partial class KubernetesRoleCompute + { + /// + /// Initializes a new instance of the KubernetesRoleCompute class. + /// + public KubernetesRoleCompute() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRoleCompute class. + /// + /// VM profile + /// Memory in bytes + /// Processor count + public KubernetesRoleCompute(string vmProfile, long? memoryInBytes = default(long?), int? processorCount = default(int?)) + { + VmProfile = vmProfile; + MemoryInBytes = memoryInBytes; + ProcessorCount = processorCount; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets VM profile + /// + [JsonProperty(PropertyName = "vmProfile")] + public string VmProfile { get; set; } + + /// + /// Gets memory in bytes + /// + [JsonProperty(PropertyName = "memoryInBytes")] + public long? MemoryInBytes { get; private set; } + + /// + /// Gets processor count + /// + [JsonProperty(PropertyName = "processorCount")] + public int? ProcessorCount { get; private set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (VmProfile == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "VmProfile"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleNetwork.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleNetwork.cs new file mode 100644 index 000000000000..fead572233d8 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleNetwork.cs @@ -0,0 +1,60 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes role network resource + /// + public partial class KubernetesRoleNetwork + { + /// + /// Initializes a new instance of the KubernetesRoleNetwork class. + /// + public KubernetesRoleNetwork() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRoleNetwork class. + /// + /// Cni configuration + /// Load balancer + /// configuration + public KubernetesRoleNetwork(CniConfig cniConfig = default(CniConfig), LoadBalancerConfig loadBalancerConfig = default(LoadBalancerConfig)) + { + CniConfig = cniConfig; + LoadBalancerConfig = loadBalancerConfig; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets cni configuration + /// + [JsonProperty(PropertyName = "cniConfig")] + public CniConfig CniConfig { get; private set; } + + /// + /// Gets load balancer configuration + /// + [JsonProperty(PropertyName = "loadBalancerConfig")] + public LoadBalancerConfig LoadBalancerConfig { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleResources.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleResources.cs new file mode 100644 index 000000000000..9dc961659e07 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleResources.cs @@ -0,0 +1,85 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes role resources + /// + public partial class KubernetesRoleResources + { + /// + /// Initializes a new instance of the KubernetesRoleResources class. + /// + public KubernetesRoleResources() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRoleResources class. + /// + /// Kubernetes role compute resource + /// Kubernetes role storage resource + /// Kubernetes role network resource + public KubernetesRoleResources(KubernetesRoleCompute compute, KubernetesRoleStorage storage = default(KubernetesRoleStorage), KubernetesRoleNetwork network = default(KubernetesRoleNetwork)) + { + Storage = storage; + Compute = compute; + Network = network; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets kubernetes role storage resource + /// + [JsonProperty(PropertyName = "storage")] + public KubernetesRoleStorage Storage { get; set; } + + /// + /// Gets or sets kubernetes role compute resource + /// + [JsonProperty(PropertyName = "compute")] + public KubernetesRoleCompute Compute { get; set; } + + /// + /// Gets kubernetes role network resource + /// + [JsonProperty(PropertyName = "network")] + public KubernetesRoleNetwork Network { get; private set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (Compute == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Compute"); + } + if (Compute != null) + { + Compute.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorage.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorage.cs new file mode 100644 index 000000000000..59b870deef38 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorage.cs @@ -0,0 +1,61 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Kubernetes role storage resource + /// + public partial class KubernetesRoleStorage + { + /// + /// Initializes a new instance of the KubernetesRoleStorage class. + /// + public KubernetesRoleStorage() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRoleStorage class. + /// + /// Kubernetes storage class info. + /// Mount points of shares in role(s). + public KubernetesRoleStorage(IList storageClasses = default(IList), IList endpoints = default(IList)) + { + StorageClasses = storageClasses; + Endpoints = endpoints; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets kubernetes storage class info. + /// + [JsonProperty(PropertyName = "storageClasses")] + public IList StorageClasses { get; private set; } + + /// + /// Gets or sets mount points of shares in role(s). + /// + [JsonProperty(PropertyName = "endpoints")] + public IList Endpoints { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorageClassInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorageClassInfo.cs new file mode 100644 index 000000000000..715834af501f --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesRoleStorageClassInfo.cs @@ -0,0 +1,72 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Kubernetes storage class info. + /// + public partial class KubernetesRoleStorageClassInfo + { + /// + /// Initializes a new instance of the KubernetesRoleStorageClassInfo + /// class. + /// + public KubernetesRoleStorageClassInfo() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the KubernetesRoleStorageClassInfo + /// class. + /// + /// Storage class name. + /// Storage class type. + /// If provisioned storage is posix + /// compliant. Possible values include: 'Invalid', 'Enabled', + /// 'Disabled' + public KubernetesRoleStorageClassInfo(string name = default(string), string type = default(string), string posixCompliant = default(string)) + { + Name = name; + Type = type; + PosixCompliant = posixCompliant; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets storage class name. + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; private set; } + + /// + /// Gets storage class type. + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; private set; } + + /// + /// Gets if provisioned storage is posix compliant. Possible values + /// include: 'Invalid', 'Enabled', 'Disabled' + /// + [JsonProperty(PropertyName = "posixCompliant")] + public string PosixCompliant { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesState.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesState.cs new file mode 100644 index 000000000000..6bbcd966e378 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/KubernetesState.cs @@ -0,0 +1,27 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for KubernetesState. + /// + public static class KubernetesState + { + public const string Invalid = "Invalid"; + public const string Creating = "Creating"; + public const string Created = "Created"; + public const string Updating = "Updating"; + public const string Reconfiguring = "Reconfiguring"; + public const string Failed = "Failed"; + public const string Deleting = "Deleting"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/LoadBalancerConfig.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/LoadBalancerConfig.cs new file mode 100644 index 000000000000..dd711a9dc617 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/LoadBalancerConfig.cs @@ -0,0 +1,59 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Load balancer configuration + /// + public partial class LoadBalancerConfig + { + /// + /// Initializes a new instance of the LoadBalancerConfig class. + /// + public LoadBalancerConfig() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the LoadBalancerConfig class. + /// + /// Load balancer type + /// Load balancer version + public LoadBalancerConfig(string type = default(string), string version = default(string)) + { + Type = type; + Version = version; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets load balancer type + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; private set; } + + /// + /// Gets load balancer version + /// + [JsonProperty(PropertyName = "version")] + public string Version { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MECRole.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MECRole.cs new file mode 100644 index 000000000000..ddb38874742b --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MECRole.cs @@ -0,0 +1,104 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// MEC role. + /// + [Newtonsoft.Json.JsonObject("MEC")] + [Rest.Serialization.JsonTransformation] + public partial class MECRole : Role + { + /// + /// Initializes a new instance of the MECRole class. + /// + public MECRole() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MECRole class. + /// + /// Role status. Possible values include: + /// 'Enabled', 'Disabled' + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// Role configured on ASE resource + /// Activation key of the MEC. + /// Controller Endpoint. + /// Unique Id of the Resource. + public MECRole(string roleStatus, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), AsymmetricEncryptedSecret connectionString = default(AsymmetricEncryptedSecret), string controllerEndpoint = default(string), string resourceUniqueId = default(string)) + : base(id, name, type, systemData) + { + ConnectionString = connectionString; + ControllerEndpoint = controllerEndpoint; + ResourceUniqueId = resourceUniqueId; + RoleStatus = roleStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets activation key of the MEC. + /// + [JsonProperty(PropertyName = "properties.connectionString")] + public AsymmetricEncryptedSecret ConnectionString { get; set; } + + /// + /// Gets or sets controller Endpoint. + /// + [JsonProperty(PropertyName = "properties.controllerEndpoint")] + public string ControllerEndpoint { get; set; } + + /// + /// Gets or sets unique Id of the Resource. + /// + [JsonProperty(PropertyName = "properties.resourceUniqueId")] + public string ResourceUniqueId { get; set; } + + /// + /// Gets or sets role status. Possible values include: 'Enabled', + /// 'Disabled' + /// + [JsonProperty(PropertyName = "properties.roleStatus")] + public string RoleStatus { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (RoleStatus == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "RoleStatus"); + } + if (ConnectionString != null) + { + ConnectionString.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricConfiguration.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricConfiguration.cs new file mode 100644 index 000000000000..aa655e08e73c --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricConfiguration.cs @@ -0,0 +1,112 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Metric configuration. + /// + public partial class MetricConfiguration + { + /// + /// Initializes a new instance of the MetricConfiguration class. + /// + public MetricConfiguration() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MetricConfiguration class. + /// + /// The Resource ID on which the metrics + /// should be pushed. + /// Host name for the IoT hub associated to + /// the device. + /// The MDM account to which the counters + /// should be pushed. + /// The MDM namespace to which the + /// counters should be pushed. This is required if MDMAccount is + /// specified + public MetricConfiguration(string resourceId, IList counterSets, string mdmAccount = default(string), string metricNameSpace = default(string)) + { + ResourceId = resourceId; + MdmAccount = mdmAccount; + MetricNameSpace = metricNameSpace; + CounterSets = counterSets; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the Resource ID on which the metrics should be pushed. + /// + [JsonProperty(PropertyName = "resourceId")] + public string ResourceId { get; set; } + + /// + /// Gets or sets the MDM account to which the counters should be + /// pushed. + /// + [JsonProperty(PropertyName = "mdmAccount")] + public string MdmAccount { get; set; } + + /// + /// Gets or sets the MDM namespace to which the counters should be + /// pushed. This is required if MDMAccount is specified + /// + [JsonProperty(PropertyName = "metricNameSpace")] + public string MetricNameSpace { get; set; } + + /// + /// Gets or sets host name for the IoT hub associated to the device. + /// + [JsonProperty(PropertyName = "counterSets")] + public IList CounterSets { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (ResourceId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "ResourceId"); + } + if (CounterSets == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "CounterSets"); + } + if (CounterSets != null) + { + foreach (var element in CounterSets) + { + if (element != null) + { + element.Validate(); + } + } + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounter.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounter.cs new file mode 100644 index 000000000000..fa7489fae6e1 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounter.cs @@ -0,0 +1,113 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// The metric counter + /// + public partial class MetricCounter + { + /// + /// Initializes a new instance of the MetricCounter class. + /// + public MetricCounter() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MetricCounter class. + /// + /// The counter name. + /// The instance from which counter should be + /// collected. + /// The dimension filter. + /// The additional dimensions to be + /// added to metric. + public MetricCounter(string name, string instance = default(string), IList dimensionFilter = default(IList), IList additionalDimensions = default(IList)) + { + Name = name; + Instance = instance; + DimensionFilter = dimensionFilter; + AdditionalDimensions = additionalDimensions; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the counter name. + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; set; } + + /// + /// Gets or sets the instance from which counter should be collected. + /// + [JsonProperty(PropertyName = "instance")] + public string Instance { get; set; } + + /// + /// Gets or sets the dimension filter. + /// + [JsonProperty(PropertyName = "dimensionFilter")] + public IList DimensionFilter { get; set; } + + /// + /// Gets or sets the additional dimensions to be added to metric. + /// + [JsonProperty(PropertyName = "additionalDimensions")] + public IList AdditionalDimensions { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (Name == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Name"); + } + if (DimensionFilter != null) + { + foreach (var element in DimensionFilter) + { + if (element != null) + { + element.Validate(); + } + } + } + if (AdditionalDimensions != null) + { + foreach (var element1 in AdditionalDimensions) + { + if (element1 != null) + { + element1.Validate(); + } + } + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounterSet.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounterSet.cs new file mode 100644 index 000000000000..640e2eed9b60 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricCounterSet.cs @@ -0,0 +1,78 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// The metric counter set + /// + public partial class MetricCounterSet + { + /// + /// Initializes a new instance of the MetricCounterSet class. + /// + public MetricCounterSet() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MetricCounterSet class. + /// + /// The counters that should be collected in + /// this set. + public MetricCounterSet(IList counters) + { + Counters = counters; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the counters that should be collected in this set. + /// + [JsonProperty(PropertyName = "counters")] + public IList Counters { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (Counters == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "Counters"); + } + if (Counters != null) + { + foreach (var element in Counters) + { + if (element != null) + { + element.Validate(); + } + } + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricDimension.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricDimension.cs new file mode 100644 index 000000000000..2ca4e66fbc12 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MetricDimension.cs @@ -0,0 +1,77 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Newtonsoft.Json; + using System.Linq; + + /// + /// The metric dimension + /// + public partial class MetricDimension + { + /// + /// Initializes a new instance of the MetricDimension class. + /// + public MetricDimension() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MetricDimension class. + /// + /// The dimension type. + /// The dimension value. + public MetricDimension(string sourceType, string sourceName) + { + SourceType = sourceType; + SourceName = sourceName; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the dimension type. + /// + [JsonProperty(PropertyName = "sourceType")] + public string SourceType { get; set; } + + /// + /// Gets or sets the dimension value. + /// + [JsonProperty(PropertyName = "sourceName")] + public string SourceName { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (SourceType == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "SourceType"); + } + if (SourceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "SourceName"); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MonitoringMetricConfiguration.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MonitoringMetricConfiguration.cs new file mode 100644 index 000000000000..d24c0efdd02e --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MonitoringMetricConfiguration.cs @@ -0,0 +1,96 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// The metric setting details for the role + /// + [Rest.Serialization.JsonTransformation] + public partial class MonitoringMetricConfiguration : ARMBaseModel + { + /// + /// Initializes a new instance of the MonitoringMetricConfiguration + /// class. + /// + public MonitoringMetricConfiguration() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the MonitoringMetricConfiguration + /// class. + /// + /// The metrics configuration + /// details + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// MonitoringConfiguration on ASE + /// device + public MonitoringMetricConfiguration(IList metricConfigurations, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) + : base(id, name, type) + { + SystemData = systemData; + MetricConfigurations = metricConfigurations; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets monitoringConfiguration on ASE device + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + + /// + /// Gets or sets the metrics configuration details + /// + [JsonProperty(PropertyName = "properties.metricConfigurations")] + public IList MetricConfigurations { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (MetricConfigurations == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "MetricConfigurations"); + } + if (MetricConfigurations != null) + { + foreach (var element in MetricConfigurations) + { + if (element != null) + { + element.Validate(); + } + } + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountPointMap.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountPointMap.cs index add08712e4b4..67e30bc6af22 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountPointMap.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountPointMap.cs @@ -35,13 +35,17 @@ public MountPointMap() /// ID of the role to which share is /// mounted. /// Mount point for the share. + /// Mounting type. Possible values include: + /// 'Volume', 'HostPath' /// Role type. Possible values include: 'IOT', - /// 'ASA', 'Functions', 'Cognitive' - public MountPointMap(string shareId, string roleId = default(string), string mountPoint = default(string), string roleType = default(string)) + /// 'ASA', 'Functions', 'Cognitive', 'MEC', 'CloudEdgeManagement', + /// 'Kubernetes' + public MountPointMap(string shareId, string roleId = default(string), string mountPoint = default(string), string mountType = default(string), string roleType = default(string)) { ShareId = shareId; RoleId = roleId; MountPoint = mountPoint; + MountType = mountType; RoleType = roleType; CustomInit(); } @@ -69,9 +73,15 @@ public MountPointMap() [JsonProperty(PropertyName = "mountPoint")] public string MountPoint { get; private set; } + /// + /// Gets mounting type. Possible values include: 'Volume', 'HostPath' + /// + [JsonProperty(PropertyName = "mountType")] + public string MountType { get; private set; } + /// /// Gets role type. Possible values include: 'IOT', 'ASA', 'Functions', - /// 'Cognitive' + /// 'Cognitive', 'MEC', 'CloudEdgeManagement', 'Kubernetes' /// [JsonProperty(PropertyName = "roleType")] public string RoleType { get; private set; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountType.cs new file mode 100644 index 000000000000..442ace6da8fe --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MountType.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for MountType. + /// + public static class MountType + { + public const string Volume = "Volume"; + public const string HostPath = "HostPath"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MsiIdentityType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MsiIdentityType.cs new file mode 100644 index 000000000000..4839730fec33 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/MsiIdentityType.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for MsiIdentityType. + /// + public static class MsiIdentityType + { + public const string None = "None"; + public const string SystemAssigned = "SystemAssigned"; + public const string UserAssigned = "UserAssigned"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NetworkSettings.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NetworkSettings.cs index 5bd47f380813..faf696fbe635 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NetworkSettings.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NetworkSettings.cs @@ -38,11 +38,13 @@ public NetworkSettings() /// object. /// The object name. /// The hierarchical type of the object. + /// NetworkSettings on ASE device /// The network adapter list on the /// device. - public NetworkSettings(string id = default(string), string name = default(string), string type = default(string), IList networkAdapters = default(IList)) + public NetworkSettings(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), IList networkAdapters = default(IList)) : base(id, name, type) { + SystemData = systemData; NetworkAdapters = networkAdapters; CustomInit(); } @@ -52,6 +54,12 @@ public NetworkSettings() /// partial void CustomInit(); + /// + /// Gets or sets networkSettings on ASE device + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets the network adapter list on the device. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NodeInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NodeInfo.cs new file mode 100644 index 000000000000..75eb86281d85 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/NodeInfo.cs @@ -0,0 +1,72 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Kubernetes node info + /// + public partial class NodeInfo + { + /// + /// Initializes a new instance of the NodeInfo class. + /// + public NodeInfo() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NodeInfo class. + /// + /// Node name. + /// Node type - Master/Worker. Possible values + /// include: 'Invalid', 'Master', 'Worker' + /// IP Configuration of the Kubernetes + /// node. + public NodeInfo(string name = default(string), string type = default(string), IList ipConfiguration = default(IList)) + { + Name = name; + Type = type; + IpConfiguration = ipConfiguration; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets node name. + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; private set; } + + /// + /// Gets node type - Master/Worker. Possible values include: 'Invalid', + /// 'Master', 'Worker' + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; private set; } + + /// + /// Gets or sets IP Configuration of the Kubernetes node. + /// + [JsonProperty(PropertyName = "ipConfiguration")] + public IList IpConfiguration { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Operation.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Operation.cs index 48745c6705ce..b761eae029d6 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Operation.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Operation.cs @@ -33,13 +33,15 @@ public Operation() /// Initializes a new instance of the Operation class. /// /// Name of the operation. + /// Is data action. /// Properties displayed for the /// operation. /// Origin of the operation. /// Service specification. - public Operation(string name = default(string), OperationDisplay display = default(OperationDisplay), string origin = default(string), ServiceSpecification serviceSpecification = default(ServiceSpecification)) + public Operation(string name = default(string), bool? isDataAction = default(bool?), OperationDisplay display = default(OperationDisplay), string origin = default(string), ServiceSpecification serviceSpecification = default(ServiceSpecification)) { Name = name; + IsDataAction = isDataAction; Display = display; Origin = origin; ServiceSpecification = serviceSpecification; @@ -57,6 +59,12 @@ public Operation() [JsonProperty(PropertyName = "name")] public string Name { get; set; } + /// + /// Gets or sets is data action. + /// + [JsonProperty(PropertyName = "isDataAction")] + public bool? IsDataAction { get; set; } + /// /// Gets or sets properties displayed for the operation. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Order.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Order.cs index 7d865c04d785..3321213c69af 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Order.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Order.cs @@ -35,11 +35,12 @@ public Order() /// Initializes a new instance of the Order class. /// /// The contact details. - /// The shipping address. /// The path ID that uniquely identifies the /// object. /// The object name. /// The hierarchical type of the object. + /// Order configured on ASE resource + /// The shipping address. /// Current status of the order. /// List of status changes in the /// order. @@ -50,9 +51,13 @@ public Order() /// Tracking information for the /// package returned from the customer whether it has an original or a /// replacement device. - public Order(ContactDetails contactInformation, Address shippingAddress, string id = default(string), string name = default(string), string type = default(string), OrderStatus currentStatus = default(OrderStatus), IList orderHistory = default(IList), string serialNumber = default(string), IList deliveryTrackingInfo = default(IList), IList returnTrackingInfo = default(IList)) + /// ShipmentType of the order. Possible + /// values include: 'NotApplicable', 'ShippedToCustomer', + /// 'SelfPickup' + public Order(ContactDetails contactInformation, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), Address shippingAddress = default(Address), OrderStatus currentStatus = default(OrderStatus), IList orderHistory = default(IList), string serialNumber = default(string), IList deliveryTrackingInfo = default(IList), IList returnTrackingInfo = default(IList), string shipmentType = default(string)) : base(id, name, type) { + SystemData = systemData; ContactInformation = contactInformation; ShippingAddress = shippingAddress; CurrentStatus = currentStatus; @@ -60,6 +65,7 @@ public Order() SerialNumber = serialNumber; DeliveryTrackingInfo = deliveryTrackingInfo; ReturnTrackingInfo = returnTrackingInfo; + ShipmentType = shipmentType; CustomInit(); } @@ -68,6 +74,12 @@ public Order() /// partial void CustomInit(); + /// + /// Gets or sets order configured on ASE resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets the contact details. /// @@ -81,10 +93,10 @@ public Order() public Address ShippingAddress { get; set; } /// - /// Gets or sets current status of the order. + /// Gets current status of the order. /// [JsonProperty(PropertyName = "properties.currentStatus")] - public OrderStatus CurrentStatus { get; set; } + public OrderStatus CurrentStatus { get; private set; } /// /// Gets list of status changes in the order. @@ -112,6 +124,13 @@ public Order() [JsonProperty(PropertyName = "properties.returnTrackingInfo")] public IList ReturnTrackingInfo { get; private set; } + /// + /// Gets or sets shipmentType of the order. Possible values include: + /// 'NotApplicable', 'ShippedToCustomer', 'SelfPickup' + /// + [JsonProperty(PropertyName = "properties.shipmentType")] + public string ShipmentType { get; set; } + /// /// Validate the object. /// @@ -124,10 +143,6 @@ public virtual void Validate() { throw new ValidationException(ValidationRules.CannotBeNull, "ContactInformation"); } - if (ShippingAddress == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "ShippingAddress"); - } if (ContactInformation != null) { ContactInformation.Validate(); diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderState.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderState.cs index bee9de653830..23e45d020966 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderState.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderState.cs @@ -17,7 +17,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models public static class OrderState { public const string Untracked = "Untracked"; - public const string AwaitingFulfilment = "AwaitingFulfilment"; + public const string AwaitingFulfillment = "AwaitingFulfillment"; public const string AwaitingPreparation = "AwaitingPreparation"; public const string AwaitingShipment = "AwaitingShipment"; public const string Shipped = "Shipped"; @@ -30,5 +30,8 @@ public static class OrderState public const string AwaitingReturnShipment = "AwaitingReturnShipment"; public const string ShippedBack = "ShippedBack"; public const string CollectedAtMicrosoft = "CollectedAtMicrosoft"; + public const string AwaitingPickup = "AwaitingPickup"; + public const string PickupCompleted = "PickupCompleted"; + public const string AwaitingDrop = "AwaitingDrop"; } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderStatus.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderStatus.cs index be4f936dc57b..6e8a67a61a1e 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderStatus.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/OrderStatus.cs @@ -33,22 +33,26 @@ public OrderStatus() /// Initializes a new instance of the OrderStatus class. /// /// Status of the order as per the allowed status - /// types. Possible values include: 'Untracked', 'AwaitingFulfilment', + /// types. Possible values include: 'Untracked', 'AwaitingFulfillment', /// 'AwaitingPreparation', 'AwaitingShipment', 'Shipped', 'Arriving', /// 'Delivered', 'ReplacementRequested', 'LostDevice', 'Declined', /// 'ReturnInitiated', 'AwaitingReturnShipment', 'ShippedBack', - /// 'CollectedAtMicrosoft' + /// 'CollectedAtMicrosoft', 'AwaitingPickup', 'PickupCompleted', + /// 'AwaitingDrop' /// Time of status update. /// Comments related to this status /// change. + /// Tracking information related to + /// the state in the ordering flow /// Dictionary to hold generic /// information which is not stored /// by the already existing properties - public OrderStatus(string status, System.DateTime? updateDateTime = default(System.DateTime?), string comments = default(string), IDictionary additionalOrderDetails = default(IDictionary)) + public OrderStatus(string status, System.DateTime? updateDateTime = default(System.DateTime?), string comments = default(string), TrackingInfo trackingInformation = default(TrackingInfo), IDictionary additionalOrderDetails = default(IDictionary)) { Status = status; UpdateDateTime = updateDateTime; Comments = comments; + TrackingInformation = trackingInformation; AdditionalOrderDetails = additionalOrderDetails; CustomInit(); } @@ -60,11 +64,12 @@ public OrderStatus() /// /// Gets or sets status of the order as per the allowed status types. - /// Possible values include: 'Untracked', 'AwaitingFulfilment', + /// Possible values include: 'Untracked', 'AwaitingFulfillment', /// 'AwaitingPreparation', 'AwaitingShipment', 'Shipped', 'Arriving', /// 'Delivered', 'ReplacementRequested', 'LostDevice', 'Declined', /// 'ReturnInitiated', 'AwaitingReturnShipment', 'ShippedBack', - /// 'CollectedAtMicrosoft' + /// 'CollectedAtMicrosoft', 'AwaitingPickup', 'PickupCompleted', + /// 'AwaitingDrop' /// [JsonProperty(PropertyName = "status")] public string Status { get; set; } @@ -81,6 +86,12 @@ public OrderStatus() [JsonProperty(PropertyName = "comments")] public string Comments { get; set; } + /// + /// Gets tracking information related to the state in the ordering flow + /// + [JsonProperty(PropertyName = "trackingInformation")] + public TrackingInfo TrackingInformation { get; private set; } + /// /// Gets dictionary to hold generic information which is not stored /// by the already existing properties diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Page1.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Page1.cs deleted file mode 100644 index 6f772b479e32..000000000000 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Page1.cs +++ /dev/null @@ -1,53 +0,0 @@ -// -// 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.DataBoxEdge.Models -{ - using Microsoft.Rest; - using Microsoft.Rest.Azure; - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - - /// - /// Defines a page in Azure responses. - /// - /// Type of the page content items - [JsonObject] - public class Page1 : IPage - { - /// - /// Gets the link to the next page. - /// - [JsonProperty("")] - public string NextPageLink { get; private set; } - - [JsonProperty("value")] - private IList Items{ get; set; } - - /// - /// Returns an enumerator that iterates through the collection. - /// - /// A an enumerator that can be used to iterate through the collection. - public IEnumerator GetEnumerator() - { - return Items == null ? System.Linq.Enumerable.Empty().GetEnumerator() : Items.GetEnumerator(); - } - - /// - /// Returns an enumerator that iterates through the collection. - /// - /// A an enumerator that can be used to iterate through the collection. - IEnumerator IEnumerable.GetEnumerator() - { - return GetEnumerator(); - } - } -} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PeriodicTimerEventTrigger.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PeriodicTimerEventTrigger.cs index 140fef6d505a..dfb631559c7b 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PeriodicTimerEventTrigger.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PeriodicTimerEventTrigger.cs @@ -39,13 +39,14 @@ public PeriodicTimerEventTrigger() /// object. /// The object name. /// The hierarchical type of the object. + /// Trigger in DataBoxEdge Resource /// A custom context tag typically used /// to correlate the trigger against its usage. For example, if a /// periodic timer trigger is intended for certain specific IoT modules /// in the device, the tag can be the name or the image URL of the /// module. - public PeriodicTimerEventTrigger(PeriodicTimerSourceInfo sourceInfo, RoleSinkInfo sinkInfo, string id = default(string), string name = default(string), string type = default(string), string customContextTag = default(string)) - : base(id, name, type) + public PeriodicTimerEventTrigger(PeriodicTimerSourceInfo sourceInfo, RoleSinkInfo sinkInfo, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string customContextTag = default(string)) + : base(id, name, type, systemData) { SourceInfo = sourceInfo; SinkInfo = sinkInfo; @@ -103,6 +104,13 @@ public virtual void Validate() { SinkInfo.Validate(); } + if (CustomContextTag != null) + { + if (CustomContextTag.Length > 192) + { + throw new ValidationException(ValidationRules.MaxLength, "CustomContextTag", 192); + } + } } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PosixComplianceStatus.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PosixComplianceStatus.cs new file mode 100644 index 000000000000..d033b6e2f42b --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/PosixComplianceStatus.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for PosixComplianceStatus. + /// + public static class PosixComplianceStatus + { + public const string Invalid = "Invalid"; + public const string Enabled = "Enabled"; + public const string Disabled = "Disabled"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ProactiveDiagnosticsConsent.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ProactiveDiagnosticsConsent.cs new file mode 100644 index 000000000000..dc95db8db0bf --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ProactiveDiagnosticsConsent.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for ProactiveDiagnosticsConsent. + /// + public static class ProactiveDiagnosticsConsent + { + public const string Enabled = "Enabled"; + public const string Disabled = "Disabled"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteApplicationType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteApplicationType.cs new file mode 100644 index 000000000000..c7856fd1bd57 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteApplicationType.cs @@ -0,0 +1,24 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for RemoteApplicationType. + /// + public static class RemoteApplicationType + { + public const string Powershell = "Powershell"; + public const string WAC = "WAC"; + public const string LocalUI = "LocalUI"; + public const string AllApplications = "AllApplications"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteSupportSettings.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteSupportSettings.cs new file mode 100644 index 000000000000..eaa2330a4671 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RemoteSupportSettings.cs @@ -0,0 +1,76 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// RemoteApplicationType for which remote support settings is being + /// modified + /// + public partial class RemoteSupportSettings + { + /// + /// Initializes a new instance of the RemoteSupportSettings class. + /// + public RemoteSupportSettings() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the RemoteSupportSettings class. + /// + /// Remote application type. + /// Possible values include: 'Powershell', 'WAC', 'LocalUI', + /// 'AllApplications' + /// Access level allowed for this remote + /// application type. Possible values include: 'None', 'ReadOnly', + /// 'ReadWrite', 'FullAccess' + /// Expiration time + /// stamp + public RemoteSupportSettings(string remoteApplicationType = default(string), string accessLevel = default(string), System.DateTime? expirationTimeStampInUTC = default(System.DateTime?)) + { + RemoteApplicationType = remoteApplicationType; + AccessLevel = accessLevel; + ExpirationTimeStampInUTC = expirationTimeStampInUTC; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets remote application type. Possible values include: + /// 'Powershell', 'WAC', 'LocalUI', 'AllApplications' + /// + [JsonProperty(PropertyName = "remoteApplicationType")] + public string RemoteApplicationType { get; set; } + + /// + /// Gets or sets access level allowed for this remote application type. + /// Possible values include: 'None', 'ReadOnly', 'ReadWrite', + /// 'FullAccess' + /// + [JsonProperty(PropertyName = "accessLevel")] + public string AccessLevel { get; set; } + + /// + /// Gets or sets expiration time stamp + /// + [JsonProperty(PropertyName = "expirationTimeStampInUTC")] + public System.DateTime? ExpirationTimeStampInUTC { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceIdentity.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceIdentity.cs new file mode 100644 index 000000000000..8d1b09290570 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceIdentity.cs @@ -0,0 +1,70 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Msi identity details of the resource + /// + public partial class ResourceIdentity + { + /// + /// Initializes a new instance of the ResourceIdentity class. + /// + public ResourceIdentity() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ResourceIdentity class. + /// + /// Identity type. Possible values include: 'None', + /// 'SystemAssigned', 'UserAssigned' + /// Service Principal Id backing the + /// Msi + /// Home Tenant Id + public ResourceIdentity(string type = default(string), string principalId = default(string), string tenantId = default(string)) + { + Type = type; + PrincipalId = principalId; + TenantId = tenantId; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets identity type. Possible values include: 'None', + /// 'SystemAssigned', 'UserAssigned' + /// + [JsonProperty(PropertyName = "type")] + public string Type { get; set; } + + /// + /// Gets service Principal Id backing the Msi + /// + [JsonProperty(PropertyName = "principalId")] + public string PrincipalId { get; private set; } + + /// + /// Gets home Tenant Id + /// + [JsonProperty(PropertyName = "tenantId")] + public string TenantId { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveDetails.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveDetails.cs new file mode 100644 index 000000000000..be57cec477e2 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveDetails.cs @@ -0,0 +1,64 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Fields for tracking resource move + /// + public partial class ResourceMoveDetails + { + /// + /// Initializes a new instance of the ResourceMoveDetails class. + /// + public ResourceMoveDetails() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ResourceMoveDetails class. + /// + /// Denotes whether move operation is + /// in progress. Possible values include: 'None', + /// 'ResourceMoveInProgress', 'ResourceMoveFailed' + /// Denotes the + /// timeout of the operation to finish + public ResourceMoveDetails(string operationInProgress = default(string), System.DateTime? operationInProgressLockTimeoutInUTC = default(System.DateTime?)) + { + OperationInProgress = operationInProgress; + OperationInProgressLockTimeoutInUTC = operationInProgressLockTimeoutInUTC; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets denotes whether move operation is in progress. + /// Possible values include: 'None', 'ResourceMoveInProgress', + /// 'ResourceMoveFailed' + /// + [JsonProperty(PropertyName = "operationInProgress")] + public string OperationInProgress { get; set; } + + /// + /// Gets or sets denotes the timeout of the operation to finish + /// + [JsonProperty(PropertyName = "operationInProgressLockTimeoutInUTC")] + public System.DateTime? OperationInProgressLockTimeoutInUTC { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveStatus.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveStatus.cs new file mode 100644 index 000000000000..5d96ad301fd2 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceMoveStatus.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for ResourceMoveStatus. + /// + public static class ResourceMoveStatus + { + public const string None = "None"; + public const string ResourceMoveInProgress = "ResourceMoveInProgress"; + public const string ResourceMoveFailed = "ResourceMoveFailed"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceTypeSku.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceTypeSku.cs index ec0186fe7c3b..907d0db91ca5 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceTypeSku.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ResourceTypeSku.cs @@ -16,7 +16,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models using System.Linq; /// - /// SkuInformation object + /// Resource type Sku object /// public partial class ResourceTypeSku { @@ -31,36 +31,12 @@ public ResourceTypeSku() /// /// Initializes a new instance of the ResourceTypeSku class. /// - /// The type of the resource - /// The Sku name. Possible values include: - /// 'Gateway', 'Edge', 'TEA_1Node', 'TEA_1Node_UPS', - /// 'TEA_1Node_Heater', 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', - /// 'TEA_4Node_UPS_Heater', 'TMA' - /// The Sku kind - /// The Sku tier. Possible values include: - /// 'Standard' - /// The Sku family - /// Availability of the SKU for the - /// region - /// The API versions in which SKU is - /// available - /// Availability of the SKU for the - /// location/zone - /// The pricing info of the Sku. - /// Restrictions of the SKU - /// availability. - public ResourceTypeSku(string resourceType = default(string), string name = default(string), string kind = default(string), string tier = default(string), string family = default(string), IList locations = default(IList), IList apiVersions = default(IList), IList locationInfo = default(IList), IList costs = default(IList), IList restrictions = default(IList)) + /// The resource type. + /// The skus. + public ResourceTypeSku(string resourceType = default(string), IList skus = default(IList)) { ResourceType = resourceType; - Name = name; - Kind = kind; - Tier = tier; - Family = family; - Locations = locations; - ApiVersions = apiVersions; - LocationInfo = locationInfo; - Costs = costs; - Restrictions = restrictions; + Skus = skus; CustomInit(); } @@ -70,67 +46,16 @@ public ResourceTypeSku() partial void CustomInit(); /// - /// Gets the type of the resource + /// Gets the resource type. /// [JsonProperty(PropertyName = "resourceType")] public string ResourceType { get; private set; } /// - /// Gets the Sku name. Possible values include: 'Gateway', 'Edge', - /// 'TEA_1Node', 'TEA_1Node_UPS', 'TEA_1Node_Heater', - /// 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', 'TEA_4Node_UPS_Heater', - /// 'TMA' + /// Gets the skus. /// - [JsonProperty(PropertyName = "name")] - public string Name { get; private set; } - - /// - /// Gets the Sku kind - /// - [JsonProperty(PropertyName = "kind")] - public string Kind { get; private set; } - - /// - /// Gets the Sku tier. Possible values include: 'Standard' - /// - [JsonProperty(PropertyName = "tier")] - public string Tier { get; private set; } - - /// - /// Gets the Sku family - /// - [JsonProperty(PropertyName = "family")] - public string Family { get; private set; } - - /// - /// Gets availability of the SKU for the region - /// - [JsonProperty(PropertyName = "locations")] - public IList Locations { get; private set; } - - /// - /// Gets the API versions in which SKU is available - /// - [JsonProperty(PropertyName = "apiVersions")] - public IList ApiVersions { get; private set; } - - /// - /// Gets availability of the SKU for the location/zone - /// - [JsonProperty(PropertyName = "locationInfo")] - public IList LocationInfo { get; private set; } - - /// - /// Gets the pricing info of the Sku. - /// - [JsonProperty(PropertyName = "costs")] - public IList Costs { get; private set; } - - /// - /// Gets restrictions of the SKU availability. - /// - [JsonProperty(PropertyName = "restrictions")] - public IList Restrictions { get; private set; } + [JsonProperty(PropertyName = "skus")] + public IList Skus { get; private set; } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Role.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Role.cs index 440e7fc12d3e..4517a52c1bf2 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Role.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Role.cs @@ -10,6 +10,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models { + using Newtonsoft.Json; using System.Linq; /// @@ -32,9 +33,11 @@ public Role() /// object. /// The object name. /// The hierarchical type of the object. - public Role(string id = default(string), string name = default(string), string type = default(string)) + /// Role configured on ASE resource + public Role(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) : base(id, name, type) { + SystemData = systemData; CustomInit(); } @@ -43,5 +46,11 @@ public Role() /// partial void CustomInit(); + /// + /// Gets or sets role configured on ASE resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RoleTypes.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RoleTypes.cs index 94034e2a2f0c..adcd994e9121 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RoleTypes.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/RoleTypes.cs @@ -20,5 +20,8 @@ public static class RoleTypes public const string ASA = "ASA"; public const string Functions = "Functions"; public const string Cognitive = "Cognitive"; + public const string MEC = "MEC"; + public const string CloudEdgeManagement = "CloudEdgeManagement"; + public const string Kubernetes = "Kubernetes"; } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Secret.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Secret.cs new file mode 100644 index 000000000000..cadbde3396ac --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Secret.cs @@ -0,0 +1,77 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Holds device secret either as a KeyVault reference or as an encrypted + /// value. + /// + public partial class Secret + { + /// + /// Initializes a new instance of the Secret class. + /// + public Secret() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the Secret class. + /// + /// Encrypted (using device public key) + /// secret value. + /// Id of the Key-Vault where secret is stored + /// (ex: + /// secrets/AuthClientSecret/82ef4346187a4033a10d629cde07d740). + public Secret(AsymmetricEncryptedSecret encryptedSecret = default(AsymmetricEncryptedSecret), string keyVaultId = default(string)) + { + EncryptedSecret = encryptedSecret; + KeyVaultId = keyVaultId; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets encrypted (using device public key) secret value. + /// + [JsonProperty(PropertyName = "encryptedSecret")] + public AsymmetricEncryptedSecret EncryptedSecret { get; set; } + + /// + /// Gets or sets id of the Key-Vault where secret is stored (ex: + /// secrets/AuthClientSecret/82ef4346187a4033a10d629cde07d740). + /// + [JsonProperty(PropertyName = "keyVaultId")] + public string KeyVaultId { get; set; } + + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (EncryptedSecret != null) + { + EncryptedSecret.Validate(); + } + } + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Share.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Share.cs index 63b1742b7504..40ef50f18000 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Share.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Share.cs @@ -45,6 +45,7 @@ public Share() /// object. /// The object name. /// The hierarchical type of the object. + /// Share on ASE device /// Description for the share. /// Azure container mapping for the /// share. @@ -58,9 +59,10 @@ public Share() /// Share mount point to the role. /// Data policy of the share. Possible values /// include: 'Cloud', 'Local' - public Share(string shareStatus, string monitoringStatus, string accessProtocol, string id = default(string), string name = default(string), string type = default(string), string description = default(string), AzureContainerInfo azureContainerInfo = default(AzureContainerInfo), IList userAccessRights = default(IList), IList clientAccessRights = default(IList), RefreshDetails refreshDetails = default(RefreshDetails), IList shareMappings = default(IList), string dataPolicy = default(string)) + public Share(string shareStatus, string monitoringStatus, string accessProtocol, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string description = default(string), AzureContainerInfo azureContainerInfo = default(AzureContainerInfo), IList userAccessRights = default(IList), IList clientAccessRights = default(IList), RefreshDetails refreshDetails = default(RefreshDetails), IList shareMappings = default(IList), string dataPolicy = default(string)) : base(id, name, type) { + SystemData = systemData; Description = description; ShareStatus = shareStatus; MonitoringStatus = monitoringStatus; @@ -79,6 +81,12 @@ public Share() /// partial void CustomInit(); + /// + /// Gets or sets share on ASE device + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets description for the share. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ShipmentType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ShipmentType.cs new file mode 100644 index 000000000000..e4c97551af38 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/ShipmentType.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for ShipmentType. + /// + public static class ShipmentType + { + public const string NotApplicable = "NotApplicable"; + public const string ShippedToCustomer = "ShippedToCustomer"; + public const string SelfPickup = "SelfPickup"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Sku.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Sku.cs index 2472861f8aa8..b41d590ed579 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Sku.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Sku.cs @@ -32,7 +32,10 @@ public Sku() /// SKU name. Possible values include: 'Gateway', /// 'Edge', 'TEA_1Node', 'TEA_1Node_UPS', 'TEA_1Node_Heater', /// 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', 'TEA_4Node_UPS_Heater', - /// 'TMA' + /// 'TMA', 'TDC', 'TCA_Small', 'GPU', 'TCA_Large', 'EdgeP_Base', + /// 'EdgeP_High', 'EdgePR_Base', 'EdgePR_Base_UPS', 'EP2_64_1VPU_W', + /// 'EP2_128_1T4_Mx1_W', 'EP2_256_2T4_W', 'EdgeMR_Mini', 'RCA_Small', + /// 'RCA_Large', 'RDC', 'Management' /// The SKU tier. This is based on the SKU name. /// Possible values include: 'Standard' public Sku(string name = default(string), string tier = default(string)) @@ -51,7 +54,10 @@ public Sku() /// Gets or sets SKU name. Possible values include: 'Gateway', 'Edge', /// 'TEA_1Node', 'TEA_1Node_UPS', 'TEA_1Node_Heater', /// 'TEA_1Node_UPS_Heater', 'TEA_4Node_Heater', 'TEA_4Node_UPS_Heater', - /// 'TMA' + /// 'TMA', 'TDC', 'TCA_Small', 'GPU', 'TCA_Large', 'EdgeP_Base', + /// 'EdgeP_High', 'EdgePR_Base', 'EdgePR_Base_UPS', 'EP2_64_1VPU_W', + /// 'EP2_128_1T4_Mx1_W', 'EP2_256_2T4_W', 'EdgeMR_Mini', 'RCA_Small', + /// 'RCA_Large', 'RDC', 'Management' /// [JsonProperty(PropertyName = "name")] public string Name { get; set; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuAvailability.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuAvailability.cs new file mode 100644 index 000000000000..042394959e99 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuAvailability.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for SkuAvailability. + /// + public static class SkuAvailability + { + public const string Available = "Available"; + public const string Unavailable = "Unavailable"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCapability.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCapability.cs new file mode 100644 index 000000000000..b6e1d2632e9d --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCapability.cs @@ -0,0 +1,60 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// The metadata to describe the capability. + /// + public partial class SkuCapability + { + /// + /// Initializes a new instance of the SkuCapability class. + /// + public SkuCapability() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the SkuCapability class. + /// + /// An invariant to describe the feature. + /// An invariant if the feature is measured by + /// quantity. + public SkuCapability(string name = default(string), string value = default(string)) + { + Name = name; + Value = value; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets an invariant to describe the feature. + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; private set; } + + /// + /// Gets an invariant if the feature is measured by quantity. + /// + [JsonProperty(PropertyName = "value")] + public string Value { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCost.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCost.cs index 6c73419da186..cc20814178b4 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCost.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuCost.cs @@ -32,8 +32,7 @@ public SkuCost() /// Used for querying price from /// commerce. /// The cost quantity. - /// Restriction of the SKU for the - /// location/zone + /// The extended unit. public SkuCost(string meterId = default(string), long? quantity = default(long?), string extendedUnit = default(string)) { MeterId = meterId; @@ -60,7 +59,7 @@ public SkuCost() public long? Quantity { get; private set; } /// - /// Gets restriction of the SKU for the location/zone + /// Gets the extended unit. /// [JsonProperty(PropertyName = "extendedUnit")] public string ExtendedUnit { get; private set; } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformation.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformation.cs new file mode 100644 index 000000000000..34bb0ffd803f --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformation.cs @@ -0,0 +1,121 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Sku information + /// + public partial class SkuInformation + { + /// + /// Initializes a new instance of the SkuInformation class. + /// + public SkuInformation() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the SkuInformation class. + /// + /// The sku name. + /// The sku tier. + /// The sku kind. + /// The Sku family. + /// The pricing info of the Sku. + /// The locations where Sku is + /// available. + /// The locations where Sku is available + /// with zones and sites info + /// The required quotaIds for the sku to + /// be available. + /// The required features for the sku to + /// be available. + public SkuInformation(string name = default(string), string tier = default(string), string kind = default(string), string family = default(string), IList costs = default(IList), IList locations = default(IList), IList locationInfo = default(IList), IList requiredQuotaIds = default(IList), IList requiredFeatures = default(IList)) + { + Name = name; + Tier = tier; + Kind = kind; + Family = family; + Costs = costs; + Locations = locations; + LocationInfo = locationInfo; + RequiredQuotaIds = requiredQuotaIds; + RequiredFeatures = requiredFeatures; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets the sku name. + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; private set; } + + /// + /// Gets the sku tier. + /// + [JsonProperty(PropertyName = "tier")] + public string Tier { get; private set; } + + /// + /// Gets the sku kind. + /// + [JsonProperty(PropertyName = "kind")] + public string Kind { get; private set; } + + /// + /// Gets the Sku family. + /// + [JsonProperty(PropertyName = "family")] + public string Family { get; private set; } + + /// + /// Gets the pricing info of the Sku. + /// + [JsonProperty(PropertyName = "costs")] + public IList Costs { get; private set; } + + /// + /// Gets the locations where Sku is available. + /// + [JsonProperty(PropertyName = "locations")] + public IList Locations { get; private set; } + + /// + /// Gets the locations where Sku is available with zones and sites info + /// + [JsonProperty(PropertyName = "locationInfo")] + public IList LocationInfo { get; private set; } + + /// + /// Gets the required quotaIds for the sku to be available. + /// + [JsonProperty(PropertyName = "requiredQuotaIds")] + public IList RequiredQuotaIds { get; private set; } + + /// + /// Gets the required features for the sku to be available. + /// + [JsonProperty(PropertyName = "requiredFeatures")] + public IList RequiredFeatures { get; private set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionInfo.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformationList.cs similarity index 53% rename from sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionInfo.cs rename to sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformationList.cs index 95b79b1d1a35..8d1bcc1fbcf0 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestrictionInfo.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuInformationList.cs @@ -16,27 +16,27 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models using System.Linq; /// - /// The restriction info with locations and zones. + /// List of SKU Information objects /// - public partial class SkuRestrictionInfo + public partial class SkuInformationList { /// - /// Initializes a new instance of the SkuRestrictionInfo class. + /// Initializes a new instance of the SkuInformationList class. /// - public SkuRestrictionInfo() + public SkuInformationList() { CustomInit(); } /// - /// Initializes a new instance of the SkuRestrictionInfo class. + /// Initializes a new instance of the SkuInformationList class. /// - /// The locations. - /// The zones. - public SkuRestrictionInfo(IList locations = default(IList), IList zones = default(IList)) + /// List of ResourceTypeSku objects + /// Links to the next set of results + public SkuInformationList(IList value = default(IList), string nextLink = default(string)) { - Locations = locations; - Zones = zones; + Value = value; + NextLink = nextLink; CustomInit(); } @@ -46,16 +46,16 @@ public SkuRestrictionInfo() partial void CustomInit(); /// - /// Gets the locations. + /// Gets list of ResourceTypeSku objects /// - [JsonProperty(PropertyName = "locations")] - public IList Locations { get; private set; } + [JsonProperty(PropertyName = "value")] + public IList Value { get; private set; } /// - /// Gets the zones. + /// Gets links to the next set of results /// - [JsonProperty(PropertyName = "zones")] - public IList Zones { get; private set; } + [JsonProperty(PropertyName = "nextLink")] + public string NextLink { get; private set; } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuName.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuName.cs index 2df1b968f4a6..b0b289937c65 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuName.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuName.cs @@ -25,5 +25,21 @@ public static class SkuName public const string TEA4NodeHeater = "TEA_4Node_Heater"; public const string TEA4NodeUPSHeater = "TEA_4Node_UPS_Heater"; public const string TMA = "TMA"; + public const string TDC = "TDC"; + public const string TCASmall = "TCA_Small"; + public const string GPU = "GPU"; + public const string TCALarge = "TCA_Large"; + public const string EdgePBase = "EdgeP_Base"; + public const string EdgePHigh = "EdgeP_High"; + public const string EdgePRBase = "EdgePR_Base"; + public const string EdgePRBaseUPS = "EdgePR_Base_UPS"; + public const string EP2641VPUW = "EP2_64_1VPU_W"; + public const string EP21281T4Mx1W = "EP2_128_1T4_Mx1_W"; + public const string EP22562T4W = "EP2_256_2T4_W"; + public const string EdgeMRMini = "EdgeMR_Mini"; + public const string RCASmall = "RCA_Small"; + public const string RCALarge = "RCA_Large"; + public const string RDC = "RDC"; + public const string Management = "Management"; } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestriction.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestriction.cs deleted file mode 100644 index 35efc64e0170..000000000000 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuRestriction.cs +++ /dev/null @@ -1,80 +0,0 @@ -// -// 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.DataBoxEdge.Models -{ - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - using System.Linq; - - /// - /// The restrictions because of which SKU cannot be used. - /// - public partial class SkuRestriction - { - /// - /// Initializes a new instance of the SkuRestriction class. - /// - public SkuRestriction() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the SkuRestriction class. - /// - /// The type of the restriction. - /// The locations where sku is restricted. - /// The SKU restriction reason. Possible - /// values include: 'NotAvailableForSubscription', 'QuotaId' - /// Restriction of the SKU for the - /// location/zone - public SkuRestriction(string type = default(string), IList values = default(IList), string reasonCode = default(string), SkuRestrictionInfo restrictionInfo = default(SkuRestrictionInfo)) - { - Type = type; - Values = values; - ReasonCode = reasonCode; - RestrictionInfo = restrictionInfo; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets the type of the restriction. - /// - [JsonProperty(PropertyName = "type")] - public string Type { get; private set; } - - /// - /// Gets the locations where sku is restricted. - /// - [JsonProperty(PropertyName = "values")] - public IList Values { get; private set; } - - /// - /// Gets the SKU restriction reason. Possible values include: - /// 'NotAvailableForSubscription', 'QuotaId' - /// - [JsonProperty(PropertyName = "reasonCode")] - public string ReasonCode { get; private set; } - - /// - /// Gets restriction of the SKU for the location/zone - /// - [JsonProperty(PropertyName = "restrictionInfo")] - public SkuRestrictionInfo RestrictionInfo { get; private set; } - - } -} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuSignupOption.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuSignupOption.cs new file mode 100644 index 000000000000..ee9b26ab4e93 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuSignupOption.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for SkuSignupOption. + /// + public static class SkuSignupOption + { + public const string None = "None"; + public const string Available = "Available"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuVersion.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuVersion.cs new file mode 100644 index 000000000000..d638790bd989 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SkuVersion.cs @@ -0,0 +1,22 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for SkuVersion. + /// + public static class SkuVersion + { + public const string Stable = "Stable"; + public const string Preview = "Preview"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccount.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccount.cs index 22cb6a5623ff..c4c8df92119d 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccount.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccount.cs @@ -32,25 +32,28 @@ public StorageAccount() /// /// Initializes a new instance of the StorageAccount class. /// + /// Data policy of the storage Account. + /// Possible values include: 'Cloud', 'Local' /// The path ID that uniquely identifies the /// object. /// The object name. /// The hierarchical type of the object. + /// StorageAccount object on ASE + /// device /// Description for the storage /// Account. /// Current status of the storage /// account. Possible values include: 'OK', 'Offline', 'Unknown', /// 'Updating', 'NeedsAttention' - /// Data policy of the storage Account. - /// Possible values include: 'Cloud', 'Local' /// Storage Account Credential /// Id /// BlobEndpoint of Storage Account /// The Container Count. Present only for /// Storage Accounts with DataPolicy set to Cloud. - public StorageAccount(string id = default(string), string name = default(string), string type = default(string), string description = default(string), string storageAccountStatus = default(string), string dataPolicy = default(string), string storageAccountCredentialId = default(string), string blobEndpoint = default(string), int? containerCount = default(int?)) + public StorageAccount(string dataPolicy, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string description = default(string), string storageAccountStatus = default(string), string storageAccountCredentialId = default(string), string blobEndpoint = default(string), int? containerCount = default(int?)) : base(id, name, type) { + SystemData = systemData; Description = description; StorageAccountStatus = storageAccountStatus; DataPolicy = dataPolicy; @@ -65,6 +68,12 @@ public StorageAccount() /// partial void CustomInit(); + /// + /// Gets or sets storageAccount object on ASE device + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets description for the storage Account. /// @@ -104,5 +113,18 @@ public StorageAccount() [JsonProperty(PropertyName = "properties.containerCount")] public int? ContainerCount { get; private set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (DataPolicy == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "DataPolicy"); + } + } } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccountCredential.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccountCredential.cs index 6262294f65dc..493339debf6f 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccountCredential.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/StorageAccountCredential.cs @@ -42,6 +42,7 @@ public StorageAccountCredential() /// object. /// The object name. /// The hierarchical type of the object. + /// StorageAccountCredential object /// Username for the storage account. /// Encrypted storage key. /// Connection string for the storage @@ -50,9 +51,10 @@ public StorageAccountCredential() /// Blob end point for private /// clouds. /// Id of the storage account. - public StorageAccountCredential(string alias, string sslStatus, string accountType, string id = default(string), string name = default(string), string type = default(string), string userName = default(string), AsymmetricEncryptedSecret accountKey = default(AsymmetricEncryptedSecret), string connectionString = default(string), string blobDomainName = default(string), string storageAccountId = default(string)) + public StorageAccountCredential(string alias, string sslStatus, string accountType, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string userName = default(string), AsymmetricEncryptedSecret accountKey = default(AsymmetricEncryptedSecret), string connectionString = default(string), string blobDomainName = default(string), string storageAccountId = default(string)) : base(id, name, type) { + SystemData = systemData; Alias = alias; UserName = userName; AccountKey = accountKey; @@ -69,6 +71,12 @@ public StorageAccountCredential() /// partial void CustomInit(); + /// + /// Gets or sets storageAccountCredential object + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets alias for the storage account. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionRegisteredFeatures.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionRegisteredFeatures.cs new file mode 100644 index 000000000000..71af7d374855 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionRegisteredFeatures.cs @@ -0,0 +1,54 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + public partial class SubscriptionRegisteredFeatures + { + /// + /// Initializes a new instance of the SubscriptionRegisteredFeatures + /// class. + /// + public SubscriptionRegisteredFeatures() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the SubscriptionRegisteredFeatures + /// class. + /// + public SubscriptionRegisteredFeatures(string name = default(string), string state = default(string)) + { + Name = name; + State = state; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// + [JsonProperty(PropertyName = "name")] + public string Name { get; set; } + + /// + /// + [JsonProperty(PropertyName = "state")] + public string State { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionState.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionState.cs new file mode 100644 index 000000000000..65695a15ad4d --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SubscriptionState.cs @@ -0,0 +1,25 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for SubscriptionState. + /// + public static class SubscriptionState + { + public const string Registered = "Registered"; + public const string Warned = "Warned"; + public const string Suspended = "Suspended"; + public const string Deleted = "Deleted"; + public const string Unregistered = "Unregistered"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SystemData.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SystemData.cs new file mode 100644 index 000000000000..036ed1c2c356 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/SystemData.cs @@ -0,0 +1,103 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Metadata pertaining to creation and last modification of the resource. + /// + public partial class SystemData + { + /// + /// Initializes a new instance of the SystemData class. + /// + public SystemData() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the SystemData class. + /// + /// The identity that created the + /// resource. + /// The type of identity that created the + /// resource. Possible values include: 'User', 'Application', + /// 'ManagedIdentity', 'Key' + /// The timestamp of resource creation + /// (UTC). + /// The identity that last modified the + /// resource. + /// The type of identity that last + /// modified the resource. Possible values include: 'User', + /// 'Application', 'ManagedIdentity', 'Key' + /// The type of identity that last + /// modified the resource. + public SystemData(string createdBy = default(string), string createdByType = default(string), System.DateTime? createdAt = default(System.DateTime?), string lastModifiedBy = default(string), string lastModifiedByType = default(string), System.DateTime? lastModifiedAt = default(System.DateTime?)) + { + CreatedBy = createdBy; + CreatedByType = createdByType; + CreatedAt = createdAt; + LastModifiedBy = lastModifiedBy; + LastModifiedByType = lastModifiedByType; + LastModifiedAt = lastModifiedAt; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the identity that created the resource. + /// + [JsonProperty(PropertyName = "createdBy")] + public string CreatedBy { get; set; } + + /// + /// Gets or sets the type of identity that created the resource. + /// Possible values include: 'User', 'Application', 'ManagedIdentity', + /// 'Key' + /// + [JsonProperty(PropertyName = "createdByType")] + public string CreatedByType { get; set; } + + /// + /// Gets or sets the timestamp of resource creation (UTC). + /// + [JsonProperty(PropertyName = "createdAt")] + public System.DateTime? CreatedAt { get; set; } + + /// + /// Gets or sets the identity that last modified the resource. + /// + [JsonProperty(PropertyName = "lastModifiedBy")] + public string LastModifiedBy { get; set; } + + /// + /// Gets or sets the type of identity that last modified the resource. + /// Possible values include: 'User', 'Application', 'ManagedIdentity', + /// 'Key' + /// + [JsonProperty(PropertyName = "lastModifiedByType")] + public string LastModifiedByType { get; set; } + + /// + /// Gets or sets the type of identity that last modified the resource. + /// + [JsonProperty(PropertyName = "lastModifiedAt")] + public System.DateTime? LastModifiedAt { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Trigger.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Trigger.cs index 0e9f6ce28dc7..3b284d18668f 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Trigger.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/Trigger.cs @@ -10,6 +10,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge.Models { + using Newtonsoft.Json; using System.Linq; /// @@ -32,9 +33,11 @@ public Trigger() /// object. /// The object name. /// The hierarchical type of the object. - public Trigger(string id = default(string), string name = default(string), string type = default(string)) + /// Trigger in DataBoxEdge Resource + public Trigger(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) : base(id, name, type) { + SystemData = systemData; CustomInit(); } @@ -43,5 +46,11 @@ public Trigger() /// partial void CustomInit(); + /// + /// Gets or sets trigger in DataBoxEdge Resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/TriggerSupportPackageRequest.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/TriggerSupportPackageRequest.cs new file mode 100644 index 000000000000..fedf74826336 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/TriggerSupportPackageRequest.cs @@ -0,0 +1,86 @@ +// +// 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.DataBoxEdge.Models +{ + using Microsoft.Rest; + using Microsoft.Rest.Serialization; + using Newtonsoft.Json; + using System.Linq; + + /// + /// The request object for trigger support package. + /// + [Rest.Serialization.JsonTransformation] + public partial class TriggerSupportPackageRequest : ARMBaseModel + { + /// + /// Initializes a new instance of the TriggerSupportPackageRequest + /// class. + /// + public TriggerSupportPackageRequest() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TriggerSupportPackageRequest + /// class. + /// + /// The path ID that uniquely identifies the + /// object. + /// The object name. + /// The hierarchical type of the object. + /// MinimumTimeStamp from where logs + /// need to be collected + /// MaximumTimeStamp until where logs + /// need to be collected + /// Type of files, which need to be included in + /// the logs + /// This will contain the type of logs + /// (Default/DefaultWithDumps/None/All/DefaultWithArchived) + /// or a comma separated list of log types that are required + public TriggerSupportPackageRequest(string id = default(string), string name = default(string), string type = default(string), System.DateTime? minimumTimeStamp = default(System.DateTime?), System.DateTime? maximumTimeStamp = default(System.DateTime?), string include = default(string)) + : base(id, name, type) + { + MinimumTimeStamp = minimumTimeStamp; + MaximumTimeStamp = maximumTimeStamp; + Include = include; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets minimumTimeStamp from where logs need to be collected + /// + [JsonProperty(PropertyName = "properties.minimumTimeStamp")] + public System.DateTime? MinimumTimeStamp { get; set; } + + /// + /// Gets or sets maximumTimeStamp until where logs need to be collected + /// + [JsonProperty(PropertyName = "properties.maximumTimeStamp")] + public System.DateTime? MaximumTimeStamp { get; set; } + + /// + /// Gets or sets type of files, which need to be included in the logs + /// This will contain the type of logs + /// (Default/DefaultWithDumps/None/All/DefaultWithArchived) + /// or a comma separated list of log types that are required + /// + [JsonProperty(PropertyName = "properties.include")] + public string Include { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateDetails.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateDetails.cs new file mode 100644 index 000000000000..cb47d9713337 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateDetails.cs @@ -0,0 +1,129 @@ +// +// 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.DataBoxEdge.Models +{ + using Newtonsoft.Json; + using System.Linq; + + /// + /// Update Specific attributes + /// + public partial class UpdateDetails + { + /// + /// Initializes a new instance of the UpdateDetails class. + /// + public UpdateDetails() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the UpdateDetails class. + /// + /// Title of the Update + /// Size of the update(In Bytes) + /// Type of the Update. Possible values + /// include: 'Software', 'Kubernetes', 'Firmware' + /// Target Version number + /// Friendly Version Number + /// Estimated Install Time for + /// the update + /// Indicates if updates are available and + /// at least one of the updates needs a reboot. Possible values + /// include: 'NeverReboots', 'RequiresReboot', 'RequestReboot' + /// Impact of Installing an + /// updateType. Possible values include: 'None', 'DeviceRebooted', + /// 'KubernetesWorkloadsDown' + /// Status of the update. Possible values include: + /// 'DownloadPending', 'DownloadStarted', 'DownloadCompleted', + /// 'InstallStarted', 'InstallCompleted' + public UpdateDetails(string updateTitle = default(string), double? updateSize = default(double?), string updateType = default(string), string targetVersion = default(string), string friendlyVersionNumber = default(string), int? estimatedInstallTimeInMins = default(int?), string rebootBehavior = default(string), string installationImpact = default(string), string status = default(string)) + { + UpdateTitle = updateTitle; + UpdateSize = updateSize; + UpdateType = updateType; + TargetVersion = targetVersion; + FriendlyVersionNumber = friendlyVersionNumber; + EstimatedInstallTimeInMins = estimatedInstallTimeInMins; + RebootBehavior = rebootBehavior; + InstallationImpact = installationImpact; + Status = status; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets title of the Update + /// + [JsonProperty(PropertyName = "updateTitle")] + public string UpdateTitle { get; set; } + + /// + /// Gets or sets size of the update(In Bytes) + /// + [JsonProperty(PropertyName = "updateSize")] + public double? UpdateSize { get; set; } + + /// + /// Gets or sets type of the Update. Possible values include: + /// 'Software', 'Kubernetes', 'Firmware' + /// + [JsonProperty(PropertyName = "updateType")] + public string UpdateType { get; set; } + + /// + /// Gets or sets target Version number + /// + [JsonProperty(PropertyName = "targetVersion")] + public string TargetVersion { get; set; } + + /// + /// Gets or sets friendly Version Number + /// + [JsonProperty(PropertyName = "friendlyVersionNumber")] + public string FriendlyVersionNumber { get; set; } + + /// + /// Gets or sets estimated Install Time for the update + /// + [JsonProperty(PropertyName = "estimatedInstallTimeInMins")] + public int? EstimatedInstallTimeInMins { get; set; } + + /// + /// Gets or sets indicates if updates are available and at least one of + /// the updates needs a reboot. Possible values include: + /// 'NeverReboots', 'RequiresReboot', 'RequestReboot' + /// + [JsonProperty(PropertyName = "rebootBehavior")] + public string RebootBehavior { get; set; } + + /// + /// Gets or sets impact of Installing an updateType. Possible values + /// include: 'None', 'DeviceRebooted', 'KubernetesWorkloadsDown' + /// + [JsonProperty(PropertyName = "installationImpact")] + public string InstallationImpact { get; set; } + + /// + /// Gets or sets status of the update. Possible values include: + /// 'DownloadPending', 'DownloadStarted', 'DownloadCompleted', + /// 'InstallStarted', 'InstallCompleted' + /// + [JsonProperty(PropertyName = "status")] + public string Status { get; set; } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateStatus.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateStatus.cs new file mode 100644 index 000000000000..642a6c15d450 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateStatus.cs @@ -0,0 +1,25 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for UpdateStatus. + /// + public static class UpdateStatus + { + public const string DownloadPending = "DownloadPending"; + public const string DownloadStarted = "DownloadStarted"; + public const string DownloadCompleted = "DownloadCompleted"; + public const string InstallStarted = "InstallStarted"; + public const string InstallCompleted = "InstallCompleted"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateSummary.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateSummary.cs index e58f849d38a3..28df83fb8012 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateSummary.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateSummary.cs @@ -39,6 +39,7 @@ public UpdateSummary() /// object. /// The object name. /// The hierarchical type of the object. + /// UpdateSummary Result /// The current version of the device /// in format: 1.2.17312.13.", /// The current version of the @@ -48,12 +49,27 @@ public UpdateSummary() /// The time when the last /// scan job was completed (success/cancelled/failed) on the /// appliance. + /// Time when the last scan job + /// is successfully completed. /// The time when the /// last Download job was completed (success/cancelled/failed) on the /// appliance. + /// JobId of the last ran + /// download job.(Can be success/cancelled/failed) + /// JobStatus of the last ran + /// download job. Possible values include: 'Invalid', 'Running', + /// 'Succeeded', 'Failed', 'Canceled', 'Paused', 'Scheduled' + /// The time when the + /// Last Install job was completed successfully on the + /// appliance /// The time when the /// last Install job was completed (success/cancelled/failed) on the /// appliance. + /// JobId of the last ran + /// install job.(Can be success/cancelled/failed) + /// JobStatus of the last ran + /// install job. Possible values include: 'Invalid', 'Running', + /// 'Succeeded', 'Failed', 'Canceled', 'Paused', 'Scheduled' /// The number of updates /// available for the current device version as per the last device /// scan. @@ -77,17 +93,27 @@ public UpdateSummary() /// currently running install (if any) started. /// The list of updates available for /// install. + /// The list of updates available for + /// install. /// The total size of updates /// available for download in bytes. - public UpdateSummary(string id = default(string), string name = default(string), string type = default(string), string deviceVersionNumber = default(string), string friendlyDeviceVersionName = default(string), System.DateTime? deviceLastScannedDateTime = default(System.DateTime?), System.DateTime? lastCompletedScanJobDateTime = default(System.DateTime?), System.DateTime? lastCompletedDownloadJobDateTime = default(System.DateTime?), System.DateTime? lastCompletedInstallJobDateTime = default(System.DateTime?), int? totalNumberOfUpdatesAvailable = default(int?), int? totalNumberOfUpdatesPendingDownload = default(int?), int? totalNumberOfUpdatesPendingInstall = default(int?), string rebootBehavior = default(string), string ongoingUpdateOperation = default(string), string inProgressDownloadJobId = default(string), string inProgressInstallJobId = default(string), System.DateTime? inProgressDownloadJobStartedDateTime = default(System.DateTime?), System.DateTime? inProgressInstallJobStartedDateTime = default(System.DateTime?), IList updateTitles = default(IList), double? totalUpdateSizeInBytes = default(double?)) + /// The total time in Minutes + public UpdateSummary(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string deviceVersionNumber = default(string), string friendlyDeviceVersionName = default(string), System.DateTime? deviceLastScannedDateTime = default(System.DateTime?), System.DateTime? lastCompletedScanJobDateTime = default(System.DateTime?), System.DateTime? lastSuccessfulScanJobTime = default(System.DateTime?), System.DateTime? lastCompletedDownloadJobDateTime = default(System.DateTime?), string lastCompletedDownloadJobId = default(string), string lastDownloadJobStatus = default(string), System.DateTime? lastSuccessfulInstallJobDateTime = default(System.DateTime?), System.DateTime? lastCompletedInstallJobDateTime = default(System.DateTime?), string lastCompletedInstallJobId = default(string), string lastInstallJobStatus = default(string), int? totalNumberOfUpdatesAvailable = default(int?), int? totalNumberOfUpdatesPendingDownload = default(int?), int? totalNumberOfUpdatesPendingInstall = default(int?), string rebootBehavior = default(string), string ongoingUpdateOperation = default(string), string inProgressDownloadJobId = default(string), string inProgressInstallJobId = default(string), System.DateTime? inProgressDownloadJobStartedDateTime = default(System.DateTime?), System.DateTime? inProgressInstallJobStartedDateTime = default(System.DateTime?), IList updateTitles = default(IList), IList updates = default(IList), double? totalUpdateSizeInBytes = default(double?), int? totalTimeInMinutes = default(int?)) : base(id, name, type) { + SystemData = systemData; DeviceVersionNumber = deviceVersionNumber; FriendlyDeviceVersionName = friendlyDeviceVersionName; DeviceLastScannedDateTime = deviceLastScannedDateTime; LastCompletedScanJobDateTime = lastCompletedScanJobDateTime; + LastSuccessfulScanJobTime = lastSuccessfulScanJobTime; LastCompletedDownloadJobDateTime = lastCompletedDownloadJobDateTime; + LastCompletedDownloadJobId = lastCompletedDownloadJobId; + LastDownloadJobStatus = lastDownloadJobStatus; + LastSuccessfulInstallJobDateTime = lastSuccessfulInstallJobDateTime; LastCompletedInstallJobDateTime = lastCompletedInstallJobDateTime; + LastCompletedInstallJobId = lastCompletedInstallJobId; + LastInstallJobStatus = lastInstallJobStatus; TotalNumberOfUpdatesAvailable = totalNumberOfUpdatesAvailable; TotalNumberOfUpdatesPendingDownload = totalNumberOfUpdatesPendingDownload; TotalNumberOfUpdatesPendingInstall = totalNumberOfUpdatesPendingInstall; @@ -98,7 +124,9 @@ public UpdateSummary() InProgressDownloadJobStartedDateTime = inProgressDownloadJobStartedDateTime; InProgressInstallJobStartedDateTime = inProgressInstallJobStartedDateTime; UpdateTitles = updateTitles; + Updates = updates; TotalUpdateSizeInBytes = totalUpdateSizeInBytes; + TotalTimeInMinutes = totalTimeInMinutes; CustomInit(); } @@ -107,6 +135,12 @@ public UpdateSummary() /// partial void CustomInit(); + /// + /// Gets or sets updateSummary Result + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets the current version of the device in format: /// 1.2.17312.13.", @@ -133,6 +167,12 @@ public UpdateSummary() [JsonProperty(PropertyName = "properties.lastCompletedScanJobDateTime")] public System.DateTime? LastCompletedScanJobDateTime { get; set; } + /// + /// Gets or sets time when the last scan job is successfully completed. + /// + [JsonProperty(PropertyName = "properties.lastSuccessfulScanJobTime")] + public System.DateTime? LastSuccessfulScanJobTime { get; set; } + /// /// Gets the time when the last Download job was completed /// (success/cancelled/failed) on the appliance. @@ -140,6 +180,28 @@ public UpdateSummary() [JsonProperty(PropertyName = "properties.lastCompletedDownloadJobDateTime")] public System.DateTime? LastCompletedDownloadJobDateTime { get; private set; } + /// + /// Gets jobId of the last ran download job.(Can be + /// success/cancelled/failed) + /// + [JsonProperty(PropertyName = "properties.lastCompletedDownloadJobId")] + public string LastCompletedDownloadJobId { get; private set; } + + /// + /// Gets jobStatus of the last ran download job. Possible values + /// include: 'Invalid', 'Running', 'Succeeded', 'Failed', 'Canceled', + /// 'Paused', 'Scheduled' + /// + [JsonProperty(PropertyName = "properties.lastDownloadJobStatus")] + public string LastDownloadJobStatus { get; private set; } + + /// + /// Gets or sets the time when the Last Install job was completed + /// successfully on the appliance + /// + [JsonProperty(PropertyName = "properties.lastSuccessfulInstallJobDateTime")] + public System.DateTime? LastSuccessfulInstallJobDateTime { get; set; } + /// /// Gets the time when the last Install job was completed /// (success/cancelled/failed) on the appliance. @@ -147,6 +209,21 @@ public UpdateSummary() [JsonProperty(PropertyName = "properties.lastCompletedInstallJobDateTime")] public System.DateTime? LastCompletedInstallJobDateTime { get; private set; } + /// + /// Gets jobId of the last ran install job.(Can be + /// success/cancelled/failed) + /// + [JsonProperty(PropertyName = "properties.lastCompletedInstallJobId")] + public string LastCompletedInstallJobId { get; private set; } + + /// + /// Gets jobStatus of the last ran install job. Possible values + /// include: 'Invalid', 'Running', 'Succeeded', 'Failed', 'Canceled', + /// 'Paused', 'Scheduled' + /// + [JsonProperty(PropertyName = "properties.lastInstallJobStatus")] + public string LastInstallJobStatus { get; private set; } + /// /// Gets the number of updates available for the current device version /// as per the last device scan. @@ -211,11 +288,23 @@ public UpdateSummary() [JsonProperty(PropertyName = "properties.updateTitles")] public IList UpdateTitles { get; private set; } + /// + /// Gets the list of updates available for install. + /// + [JsonProperty(PropertyName = "properties.updates")] + public IList Updates { get; private set; } + /// /// Gets the total size of updates available for download in bytes. /// [JsonProperty(PropertyName = "properties.totalUpdateSizeInBytes")] public double? TotalUpdateSizeInBytes { get; private set; } + /// + /// Gets the total time in Minutes + /// + [JsonProperty(PropertyName = "properties.totalTimeInMinutes")] + public int? TotalTimeInMinutes { get; private set; } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateType.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateType.cs new file mode 100644 index 000000000000..305372853809 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/UpdateType.cs @@ -0,0 +1,23 @@ +// +// 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.DataBoxEdge.Models +{ + + /// + /// Defines values for UpdateType. + /// + public static class UpdateType + { + public const string Software = "Software"; + public const string Kubernetes = "Kubernetes"; + public const string Firmware = "Firmware"; + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/User.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/User.cs index 696494aef447..6844aa7daf98 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/User.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/Models/User.cs @@ -41,13 +41,15 @@ public User() /// object. /// The object name. /// The hierarchical type of the object. + /// User in DataBoxEdge Resource /// The password details. /// List of shares that the user has /// rights on. This field should not be specified during user /// creation. - public User(string userType, string id = default(string), string name = default(string), string type = default(string), AsymmetricEncryptedSecret encryptedPassword = default(AsymmetricEncryptedSecret), IList shareAccessRights = default(IList)) + public User(string userType, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), AsymmetricEncryptedSecret encryptedPassword = default(AsymmetricEncryptedSecret), IList shareAccessRights = default(IList)) : base(id, name, type) { + SystemData = systemData; EncryptedPassword = encryptedPassword; ShareAccessRights = shareAccessRights; UserType = userType; @@ -59,6 +61,12 @@ public User() /// partial void CustomInit(); + /// + /// Gets or sets user in DataBoxEdge Resource + /// + [JsonProperty(PropertyName = "systemData")] + public SystemData SystemData { get; set; } + /// /// Gets or sets the password details. /// @@ -66,11 +74,11 @@ public User() public AsymmetricEncryptedSecret EncryptedPassword { get; set; } /// - /// Gets or sets list of shares that the user has rights on. This field - /// should not be specified during user creation. + /// Gets list of shares that the user has rights on. This field should + /// not be specified during user creation. /// [JsonProperty(PropertyName = "properties.shareAccessRights")] - public IList ShareAccessRights { get; set; } + public IList ShareAccessRights { get; private set; } /// /// Gets or sets type of the user. Possible values include: 'Share', diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperations.cs new file mode 100644 index 000000000000..9cfdda556bed --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperations.cs @@ -0,0 +1,1097 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + using System.Net; + using System.Net.Http; + using System.Threading; + using System.Threading.Tasks; + + /// + /// MonitoringConfigOperations operations. + /// + internal partial class MonitoringConfigOperations : IServiceOperations, IMonitoringConfigOperations + { + /// + /// Initializes a new instance of the MonitoringConfigOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal MonitoringConfigOperations(DataBoxEdgeManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + Client = client; + } + + /// + /// Gets a reference to the DataBoxEdgeManagementClient + /// + public DataBoxEdgeManagementClient Client { get; private set; } + + /// + /// Lists metric configurations in a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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>> ListWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "List", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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 a metric configuration of a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// 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> GetWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "Get", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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; + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task> CreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send Request + AzureOperationResponse _response = await BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, monitoringMetricConfiguration, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task DeleteWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send request + AzureOperationResponse _response = await BeginDeleteWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// 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> BeginCreateOrUpdateWithHttpMessagesAsync(string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (monitoringMetricConfiguration == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "monitoringMetricConfiguration"); + } + if (monitoringMetricConfiguration != null) + { + monitoringMetricConfiguration.Validate(); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("monitoringMetricConfiguration", monitoringMetricConfiguration); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginCreateOrUpdate", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("PUT"); + _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; + if(monitoringMetricConfiguration != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(monitoringMetricConfiguration, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // 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 && (int)_statusCode != 202) + { + 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; + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// 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 BeginDeleteWithHttpMessagesAsync(string deviceName, string roleName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (roleName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "roleName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("roleName", roleName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "BeginDelete", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{roleName}/monitoringConfig/default").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{roleName}", System.Uri.EscapeDataString(roleName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("DELETE"); + _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 && (int)_statusCode != 202 && (int)_statusCode != 204) + { + 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(); + } + if (_shouldTrace) + { + ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + } + + /// + /// Lists metric configurations in a role. + /// + /// + /// 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>> ListNextWithHttpMessagesAsync(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, "ListNext", 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; + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperationsExtensions.cs new file mode 100644 index 000000000000..2d5f2b1e15a5 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/MonitoringConfigOperationsExtensions.cs @@ -0,0 +1,341 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Threading; + using System.Threading.Tasks; + + /// + /// Extension methods for MonitoringConfigOperations. + /// + public static partial class MonitoringConfigOperationsExtensions + { + /// + /// Lists metric configurations in a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + public static IPage List(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName) + { + return operations.ListAsync(deviceName, roleName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Lists metric configurations in a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task> ListAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Gets a metric configuration of a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + public static MonitoringMetricConfiguration Get(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName) + { + return operations.GetAsync(deviceName, roleName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Gets a metric configuration of a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task GetAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + public static MonitoringMetricConfiguration CreateOrUpdate(this IMonitoringConfigOperations operations, string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName) + { + return operations.CreateOrUpdateAsync(deviceName, roleName, monitoringMetricConfiguration, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task CreateOrUpdateAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, monitoringMetricConfiguration, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + public static void Delete(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName) + { + operations.DeleteAsync(deviceName, roleName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task DeleteAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.DeleteWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + public static MonitoringMetricConfiguration BeginCreateOrUpdate(this IMonitoringConfigOperations operations, string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName) + { + return operations.BeginCreateOrUpdateAsync(deviceName, roleName, monitoringMetricConfiguration, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Creates a new metric configuration or updates an existing one for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The metric configuration. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginCreateOrUpdateAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, MonitoringMetricConfiguration monitoringMetricConfiguration, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, roleName, monitoringMetricConfiguration, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + public static void BeginDelete(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName) + { + operations.BeginDeleteAsync(deviceName, roleName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// deletes a new metric configuration for a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The role name. + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginDeleteAsync(this IMonitoringConfigOperations operations, string deviceName, string roleName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.BeginDeleteWithHttpMessagesAsync(deviceName, roleName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Lists metric configurations in a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static IPage ListNext(this IMonitoringConfigOperations operations, string nextPageLink) + { + return operations.ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Lists metric configurations in a role. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async Task> ListNextAsync(this IMonitoringConfigOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperations.cs index c9e7528f5fd0..5eab67625c47 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperations.cs @@ -80,7 +80,7 @@ internal NodesOperations(DataBoxEdgeManagementClient client) /// /// A response object containing the response body and response headers. /// - public async Task>> ListByDataBoxEdgeDeviceWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + public async Task>> ListByDataBoxEdgeDeviceWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { if (deviceName == null) { @@ -214,7 +214,7 @@ internal NodesOperations(DataBoxEdgeManagementClient client) throw ex; } // Create Result - var _result = new AzureOperationResponse>(); + var _result = new AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; if (_httpResponse.Headers.Contains("x-ms-request-id")) @@ -227,7 +227,180 @@ internal NodesOperations(DataBoxEdgeManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings); + _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 all the nodes currently configured under this Data Box Edge device + /// + /// + /// 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>> ListByDataBoxEdgeDeviceNextWithHttpMessagesAsync(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, "ListByDataBoxEdgeDeviceNext", 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) { diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperationsExtensions.cs index 5146a92b0730..2d1e296c8c40 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperationsExtensions.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/NodesOperationsExtensions.cs @@ -13,8 +13,6 @@ namespace Microsoft.Azure.Management.DataBoxEdge using Microsoft.Rest; using Microsoft.Rest.Azure; using Models; - using System.Collections; - using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; @@ -35,7 +33,7 @@ public static partial class NodesOperationsExtensions /// /// The resource group name. /// - public static IEnumerable ListByDataBoxEdgeDevice(this INodesOperations operations, string deviceName, string resourceGroupName) + public static IPage ListByDataBoxEdgeDevice(this INodesOperations operations, string deviceName, string resourceGroupName) { return operations.ListByDataBoxEdgeDeviceAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); } @@ -55,7 +53,7 @@ public static IEnumerable ListByDataBoxEdgeDevice(this INodesOperations op /// /// The cancellation token. /// - public static async Task> ListByDataBoxEdgeDeviceAsync(this INodesOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + public static async Task> ListByDataBoxEdgeDeviceAsync(this INodesOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.ListByDataBoxEdgeDeviceWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) { @@ -63,5 +61,39 @@ public static IEnumerable ListByDataBoxEdgeDevice(this INodesOperations op } } + /// + /// Gets all the nodes currently configured under this Data Box Edge device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static IPage ListByDataBoxEdgeDeviceNext(this INodesOperations operations, string nextPageLink) + { + return operations.ListByDataBoxEdgeDeviceNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets all the nodes currently configured under this Data Box Edge device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async Task> ListByDataBoxEdgeDeviceNextAsync(this INodesOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListByDataBoxEdgeDeviceNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } } diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperations.cs index e0848931ce23..8cc4600093e1 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperations.cs @@ -489,6 +489,202 @@ internal OrdersOperations(DataBoxEdgeManagementClient client) return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); } + /// + /// Gets the DCAccess Code + /// + /// + /// The device name + /// + /// + /// The resource group name. + /// + /// + /// 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> ListDCAccessCodeWithHttpMessagesAsync(string deviceName, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (Client.SubscriptionId == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (Client.ApiVersion == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + // Tracing + bool _shouldTrace = ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = ServiceClientTracing.NextInvocationId.ToString(); + Dictionary tracingParameters = new Dictionary(); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("cancellationToken", cancellationToken); + ServiceClientTracing.Enter(_invocationId, this, "ListDCAccessCode", 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.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default/listDCAccessCode").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + 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("POST"); + _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; + } + /// /// Creates or updates an order. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperationsExtensions.cs index 034c72e55275..84f251eec9a2 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperationsExtensions.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/OrdersOperationsExtensions.cs @@ -184,6 +184,46 @@ public static void Delete(this IOrdersOperations operations, string deviceName, (await operations.DeleteWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); } + /// + /// Gets the DCAccess Code + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name + /// + /// + /// The resource group name. + /// + public static DCAccessCode ListDCAccessCode(this IOrdersOperations operations, string deviceName, string resourceGroupName) + { + return operations.ListDCAccessCodeAsync(deviceName, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Gets the DCAccess Code + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task ListDCAccessCodeAsync(this IOrdersOperations operations, string deviceName, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + using (var _result = await operations.ListDCAccessCodeWithHttpMessagesAsync(deviceName, resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// /// Creates or updates an order. /// diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SdkInfo_DataBoxEdgeManagementClient.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SdkInfo_DataBoxEdgeManagementClient.cs index a9d05ff76087..cfebc65a4328 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SdkInfo_DataBoxEdgeManagementClient.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SdkInfo_DataBoxEdgeManagementClient.cs @@ -19,35 +19,28 @@ public static IEnumerable> ApiInfo_DataBoxEdgeMana { return new Tuple[] { - new Tuple("DataBoxEdge", "Alerts", "2019-08-01"), - new Tuple("DataBoxEdge", "BandwidthSchedules", "2019-08-01"), - new Tuple("DataBoxEdge", "Containers", "2019-08-01"), - new Tuple("DataBoxEdge", "Devices", "2019-08-01"), - new Tuple("DataBoxEdge", "Jobs", "2019-08-01"), - new Tuple("DataBoxEdge", "Nodes", "2019-08-01"), - new Tuple("DataBoxEdge", "Operations", "2019-08-01"), - new Tuple("DataBoxEdge", "OperationsStatus", "2019-08-01"), - new Tuple("DataBoxEdge", "Orders", "2019-08-01"), - new Tuple("DataBoxEdge", "Roles", "2019-08-01"), - new Tuple("DataBoxEdge", "Shares", "2019-08-01"), - new Tuple("DataBoxEdge", "Skus", "2019-08-01"), - new Tuple("DataBoxEdge", "StorageAccountCredentials", "2019-08-01"), - new Tuple("DataBoxEdge", "StorageAccounts", "2019-08-01"), - new Tuple("DataBoxEdge", "Triggers", "2019-08-01"), - new Tuple("DataBoxEdge", "Users", "2019-08-01"), + new Tuple("DataBoxEdge", "Addons", "2021-02-01"), + new Tuple("DataBoxEdge", "Alerts", "2021-02-01"), + new Tuple("DataBoxEdge", "AvailableSkus", "2021-02-01"), + new Tuple("DataBoxEdge", "BandwidthSchedules", "2021-02-01"), + new Tuple("DataBoxEdge", "Containers", "2021-02-01"), + new Tuple("DataBoxEdge", "Devices", "2021-02-01"), + new Tuple("DataBoxEdge", "DiagnosticSettings", "2021-02-01"), + new Tuple("DataBoxEdge", "Jobs", "2021-02-01"), + new Tuple("DataBoxEdge", "MonitoringConfig", "2021-02-01"), + new Tuple("DataBoxEdge", "Nodes", "2021-02-01"), + new Tuple("DataBoxEdge", "Operations", "2021-02-01"), + new Tuple("DataBoxEdge", "OperationsStatus", "2021-02-01"), + new Tuple("DataBoxEdge", "Orders", "2021-02-01"), + new Tuple("DataBoxEdge", "Roles", "2021-02-01"), + new Tuple("DataBoxEdge", "Shares", "2021-02-01"), + new Tuple("DataBoxEdge", "StorageAccountCredentials", "2021-02-01"), + new Tuple("DataBoxEdge", "StorageAccounts", "2021-02-01"), + new Tuple("DataBoxEdge", "SupportPackages", "2021-02-01"), + new Tuple("DataBoxEdge", "Triggers", "2021-02-01"), + new Tuple("DataBoxEdge", "Users", "2021-02-01"), }.AsEnumerable(); } } - // BEGIN: Code Generation Metadata Section - public static readonly String AutoRestVersion = "latest"; - public static readonly String AutoRestBootStrapperVersion = "autorest@2.0.4407"; - public static readonly String AutoRestCmdExecuted = "cmd.exe /c autorest.cmd https://github.com/Azure/azure-rest-api-specs/blob/master/specification/databoxedge/resource-manager/readme.md --csharp --version=latest --reflect-api-versions --csharp-sdks-folder=D:\\Code\\azure-sdk-for-net\\azure-sdk-for-net\\sdk"; - public static readonly String GithubForkName = "Azure"; - public static readonly String GithubBranchName = "master"; - public static readonly String GithubCommidId = "ef354ec8d6580227707ed935684e533b898beabe"; - public static readonly String CodeGenerationErrors = ""; - public static readonly String GithubRepoName = "azure-rest-api-specs"; - // END: Code Generation Metadata Section } } - diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperationsExtensions.cs deleted file mode 100644 index 85c568596188..000000000000 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperationsExtensions.cs +++ /dev/null @@ -1,61 +0,0 @@ -// -// 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.DataBoxEdge -{ - using Microsoft.Rest; - using Microsoft.Rest.Azure; - using Models; - using System.Collections; - using System.Collections.Generic; - using System.Threading; - using System.Threading.Tasks; - - /// - /// Extension methods for SkusOperations. - /// - public static partial class SkusOperationsExtensions - { - /// - /// List all the available Skus in the region and information related to them - /// - /// - /// The operations group for this extension method. - /// - /// - /// Specify $filter='location eq <location>' to filter on location. - /// - public static IEnumerable List(this ISkusOperations operations, string filter = default(string)) - { - return operations.ListAsync(filter).GetAwaiter().GetResult(); - } - - /// - /// List all the available Skus in the region and information related to them - /// - /// - /// The operations group for this extension method. - /// - /// - /// Specify $filter='location eq <location>' to filter on location. - /// - /// - /// The cancellation token. - /// - public static async Task> ListAsync(this ISkusOperations operations, string filter = default(string), CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.ListWithHttpMessagesAsync(filter, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - - } -} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperations.cs index f9c78df13e9b..e4559499d587 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperations.cs @@ -51,7 +51,7 @@ internal StorageAccountsOperations(DataBoxEdgeManagementClient client) public DataBoxEdgeManagementClient Client { get; private set; } /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The device name. @@ -556,6 +556,10 @@ internal StorageAccountsOperations(DataBoxEdgeManagementClient client) { throw new ValidationException(ValidationRules.CannotBeNull, "storageAccount"); } + if (storageAccount != null) + { + storageAccount.Validate(); + } if (Client.SubscriptionId == null) { throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); @@ -910,7 +914,7 @@ internal StorageAccountsOperations(DataBoxEdgeManagementClient client) } /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The NextLink from the previous successful call to List operation. diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperationsExtensions.cs index 6f1f0ed7555e..53be0e49695f 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperationsExtensions.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/StorageAccountsOperationsExtensions.cs @@ -22,7 +22,7 @@ namespace Microsoft.Azure.Management.DataBoxEdge public static partial class StorageAccountsOperationsExtensions { /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The operations group for this extension method. @@ -39,7 +39,7 @@ public static IPage ListByDataBoxEdgeDevice(this IStorageAccount } /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The operations group for this extension method. @@ -302,7 +302,7 @@ public static void BeginDelete(this IStorageAccountsOperations operations, strin } /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The operations group for this extension method. @@ -316,7 +316,7 @@ public static IPage ListByDataBoxEdgeDeviceNext(this IStorageAcc } /// - /// Lists all the storage accounts in a Data Box Edge/Data Box Gateway device. + /// Lists all the StorageAccounts in a Data Box Edge/Data Box Gateway device. /// /// /// The operations group for this extension method. diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperations.cs similarity index 66% rename from sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperations.cs rename to sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperations.cs index 254642d4b1c7..b8ef9efc4d9d 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SkusOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperations.cs @@ -23,12 +23,12 @@ namespace Microsoft.Azure.Management.DataBoxEdge using System.Threading.Tasks; /// - /// SkusOperations operations. + /// SupportPackagesOperations operations. /// - internal partial class SkusOperations : IServiceOperations, ISkusOperations + internal partial class SupportPackagesOperations : IServiceOperations, ISupportPackagesOperations { /// - /// Initializes a new instance of the SkusOperations class. + /// Initializes a new instance of the SupportPackagesOperations class. /// /// /// Reference to the service client. @@ -36,7 +36,7 @@ internal partial class SkusOperations : IServiceOperations /// Thrown when a required parameter is null /// - internal SkusOperations(DataBoxEdgeManagementClient client) + internal SupportPackagesOperations(DataBoxEdgeManagementClient client) { if (client == null) { @@ -51,10 +51,41 @@ internal SkusOperations(DataBoxEdgeManagementClient client) public DataBoxEdgeManagementClient Client { get; private set; } /// - /// List all the available Skus in the region and information related to them + /// Triggers support package on the device /// - /// - /// Specify $filter='location eq <location>' to filter on location. + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async Task TriggerSupportPackageWithHttpMessagesAsync(string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + { + // Send request + AzureOperationResponse _response = await BeginTriggerSupportPackageWithHttpMessagesAsync(deviceName, triggerSupportPackageRequest, resourceGroupName, customHeaders, cancellationToken).ConfigureAwait(false); + return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Triggers support package on the device + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. /// /// /// Headers that will be added to request. @@ -65,9 +96,6 @@ internal SkusOperations(DataBoxEdgeManagementClient client) /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// /// /// Thrown when a required parameter is null /// @@ -77,12 +105,24 @@ internal SkusOperations(DataBoxEdgeManagementClient client) /// /// A response object containing the response body and response headers. /// - public async Task>> ListWithHttpMessagesAsync(string filter = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) + public async Task BeginTriggerSupportPackageWithHttpMessagesAsync(string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { + if (deviceName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "deviceName"); + } + if (triggerSupportPackageRequest == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "triggerSupportPackageRequest"); + } if (Client.SubscriptionId == null) { throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); } + if (resourceGroupName == null) + { + throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName"); + } if (Client.ApiVersion == null) { throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion"); @@ -94,23 +134,23 @@ internal SkusOperations(DataBoxEdgeManagementClient client) { _invocationId = ServiceClientTracing.NextInvocationId.ToString(); Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("filter", filter); + tracingParameters.Add("deviceName", deviceName); + tracingParameters.Add("triggerSupportPackageRequest", triggerSupportPackageRequest); + tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + ServiceClientTracing.Enter(_invocationId, this, "BeginTriggerSupportPackage", tracingParameters); } // Construct URL var _baseUrl = Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/skus").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggerSupportPackage").ToString(); + _url = _url.Replace("{deviceName}", System.Uri.EscapeDataString(deviceName)); _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId)); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); List _queryParameters = new List(); if (Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion))); } - if (filter != null) - { - _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -118,7 +158,7 @@ internal SkusOperations(DataBoxEdgeManagementClient client) // Create HTTP transport objects var _httpRequest = new HttpRequestMessage(); HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("GET"); + _httpRequest.Method = new HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value) @@ -149,6 +189,12 @@ internal SkusOperations(DataBoxEdgeManagementClient client) // Serialize Request string _requestContent = null; + if(triggerSupportPackageRequest != null) + { + _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(triggerSupportPackageRequest, Client.SerializationSettings); + _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (Client.Credentials != null) { @@ -169,7 +215,7 @@ internal SkusOperations(DataBoxEdgeManagementClient client) HttpStatusCode _statusCode = _httpResponse.StatusCode; cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200) + if ((int)_statusCode != 200 && (int)_statusCode != 202) { var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try @@ -204,31 +250,13 @@ internal SkusOperations(DataBoxEdgeManagementClient client) throw ex; } // Create Result - var _result = new AzureOperationResponse>(); + 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); diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperationsExtensions.cs new file mode 100644 index 000000000000..464776aae081 --- /dev/null +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/SupportPackagesOperationsExtensions.cs @@ -0,0 +1,111 @@ +// +// 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.DataBoxEdge +{ + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + using System.Threading; + using System.Threading.Tasks; + + /// + /// Extension methods for SupportPackagesOperations. + /// + public static partial class SupportPackagesOperationsExtensions + { + /// + /// Triggers support package on the device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + public static void TriggerSupportPackage(this ISupportPackagesOperations operations, string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName) + { + operations.TriggerSupportPackageAsync(deviceName, triggerSupportPackageRequest, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Triggers support package on the device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task TriggerSupportPackageAsync(this ISupportPackagesOperations operations, string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.TriggerSupportPackageWithHttpMessagesAsync(deviceName, triggerSupportPackageRequest, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + /// + /// Triggers support package on the device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + public static void BeginTriggerSupportPackage(this ISupportPackagesOperations operations, string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName) + { + operations.BeginTriggerSupportPackageAsync(deviceName, triggerSupportPackageRequest, resourceGroupName).GetAwaiter().GetResult(); + } + + /// + /// Triggers support package on the device + /// + /// + /// The operations group for this extension method. + /// + /// + /// The device name. + /// + /// + /// The trigger support package request object + /// + /// + /// The resource group name. + /// + /// + /// The cancellation token. + /// + public static async Task BeginTriggerSupportPackageAsync(this ISupportPackagesOperations operations, string deviceName, TriggerSupportPackageRequest triggerSupportPackageRequest, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken)) + { + (await operations.BeginTriggerSupportPackageWithHttpMessagesAsync(deviceName, triggerSupportPackageRequest, resourceGroupName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + + } +} diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperations.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperations.cs index 4976bc38e2cd..061e2e011605 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperations.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperations.cs @@ -60,7 +60,7 @@ internal UsersOperations(DataBoxEdgeManagementClient client) /// The resource group name. /// /// - /// Specify $filter='UserType eq <type>' to filter on user type property + /// Specify $filter='Type eq <type>' to filter on user type property /// /// /// Headers that will be added to request. diff --git a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperationsExtensions.cs b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperationsExtensions.cs index 2db1900b1e55..91a026c7e3ac 100644 --- a/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperationsExtensions.cs +++ b/sdk/databoxedge/Microsoft.Azure.Management.DataBoxEdge/src/Generated/UsersOperationsExtensions.cs @@ -34,7 +34,7 @@ public static partial class UsersOperationsExtensions /// The resource group name. /// /// - /// Specify $filter='UserType eq <type>' to filter on user type property + /// Specify $filter='Type eq <type>' to filter on user type property /// public static IPage ListByDataBoxEdgeDevice(this IUsersOperations operations, string deviceName, string resourceGroupName, string filter = default(string)) { @@ -54,7 +54,7 @@ public static partial class UsersOperationsExtensions /// The resource group name. /// /// - /// Specify $filter='UserType eq <type>' to filter on user type property + /// Specify $filter='Type eq <type>' to filter on user type property /// /// /// The cancellation token.