diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/HybridComputeManagementClient.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/HybridComputeManagementClient.cs
new file mode 100644
index 0000000000000..759463785cee0
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/HybridComputeManagementClient.cs
@@ -0,0 +1,374 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Microsoft.Rest.Serialization;
+ using Models;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+ using System.Net;
+ using System.Net.Http;
+
+ ///
+ /// The Hybrid Compute Management Client.
+ ///
+ public partial class HybridComputeManagementClient : ServiceClient, IHybridComputeManagementClient, IAzureClient
+ {
+ ///
+ /// The base URI of the service.
+ ///
+ public System.Uri BaseUri { get; set; }
+
+ ///
+ /// Gets or sets json serialization settings.
+ ///
+ public JsonSerializerSettings SerializationSettings { get; private set; }
+
+ ///
+ /// Gets or sets json deserialization settings.
+ ///
+ public JsonSerializerSettings DeserializationSettings { get; private set; }
+
+ ///
+ /// Credentials needed for the client to connect to Azure.
+ ///
+ public ServiceClientCredentials Credentials { get; private set; }
+
+ ///
+ /// Subscription credentials which uniquely identify Microsoft Azure
+ /// subscription. The subscription ID forms part of the URI for every service
+ /// call.
+ ///
+ public string SubscriptionId { get; set; }
+
+ ///
+ /// Client Api Version.
+ ///
+ public string ApiVersion { get; private set; }
+
+ ///
+ /// The preferred language for the response.
+ ///
+ public string AcceptLanguage { get; set; }
+
+ ///
+ /// The retry timeout in seconds for Long Running Operations. Default value is
+ /// 30.
+ ///
+ public int? LongRunningOperationRetryTimeout { get; set; }
+
+ ///
+ /// Whether a unique x-ms-client-request-id should be generated. When set to
+ /// true a unique x-ms-client-request-id value is generated and included in
+ /// each request. Default is true.
+ ///
+ public bool? GenerateClientRequestId { get; set; }
+
+ ///
+ /// Gets the IMachinesOperations.
+ ///
+ public virtual IMachinesOperations Machines { get; private set; }
+
+ ///
+ /// Gets the IMachineExtensionsOperations.
+ ///
+ public virtual IMachineExtensionsOperations MachineExtensions { get; private set; }
+
+ ///
+ /// Gets the IOperations.
+ ///
+ public virtual IOperations Operations { get; private set; }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// HttpClient to be used
+ ///
+ ///
+ /// True: will dispose the provided httpClient on calling HybridComputeManagementClient.Dispose(). False: will not dispose provided httpClient
+ protected HybridComputeManagementClient(HttpClient httpClient, bool disposeHttpClient) : base(httpClient, disposeHttpClient)
+ {
+ Initialize();
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ protected HybridComputeManagementClient(params DelegatingHandler[] handlers) : base(handlers)
+ {
+ Initialize();
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The http client handler used to handle http transport.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ protected HybridComputeManagementClient(HttpClientHandler rootHandler, params DelegatingHandler[] handlers) : base(rootHandler, handlers)
+ {
+ Initialize();
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The base URI of the service.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ protected HybridComputeManagementClient(System.Uri baseUri, params DelegatingHandler[] handlers) : this(handlers)
+ {
+ if (baseUri == null)
+ {
+ throw new System.ArgumentNullException("baseUri");
+ }
+ BaseUri = baseUri;
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The base URI of the service.
+ ///
+ ///
+ /// Optional. The http client handler used to handle http transport.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ protected HybridComputeManagementClient(System.Uri baseUri, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) : this(rootHandler, handlers)
+ {
+ if (baseUri == null)
+ {
+ throw new System.ArgumentNullException("baseUri");
+ }
+ BaseUri = baseUri;
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Required. Credentials needed for the client to connect to Azure.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ public HybridComputeManagementClient(ServiceClientCredentials credentials, params DelegatingHandler[] handlers) : this(handlers)
+ {
+ if (credentials == null)
+ {
+ throw new System.ArgumentNullException("credentials");
+ }
+ Credentials = credentials;
+ if (Credentials != null)
+ {
+ Credentials.InitializeServiceClient(this);
+ }
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Required. Credentials needed for the client to connect to Azure.
+ ///
+ ///
+ /// HttpClient to be used
+ ///
+ ///
+ /// True: will dispose the provided httpClient on calling HybridComputeManagementClient.Dispose(). False: will not dispose provided httpClient
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ public HybridComputeManagementClient(ServiceClientCredentials credentials, HttpClient httpClient, bool disposeHttpClient) : this(httpClient, disposeHttpClient)
+ {
+ if (credentials == null)
+ {
+ throw new System.ArgumentNullException("credentials");
+ }
+ Credentials = credentials;
+ if (Credentials != null)
+ {
+ Credentials.InitializeServiceClient(this);
+ }
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Required. Credentials needed for the client to connect to Azure.
+ ///
+ ///
+ /// Optional. The http client handler used to handle http transport.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ public HybridComputeManagementClient(ServiceClientCredentials credentials, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) : this(rootHandler, handlers)
+ {
+ if (credentials == null)
+ {
+ throw new System.ArgumentNullException("credentials");
+ }
+ Credentials = credentials;
+ if (Credentials != null)
+ {
+ Credentials.InitializeServiceClient(this);
+ }
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The base URI of the service.
+ ///
+ ///
+ /// Required. Credentials needed for the client to connect to Azure.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ public HybridComputeManagementClient(System.Uri baseUri, ServiceClientCredentials credentials, params DelegatingHandler[] handlers) : this(handlers)
+ {
+ if (baseUri == null)
+ {
+ throw new System.ArgumentNullException("baseUri");
+ }
+ if (credentials == null)
+ {
+ throw new System.ArgumentNullException("credentials");
+ }
+ BaseUri = baseUri;
+ Credentials = credentials;
+ if (Credentials != null)
+ {
+ Credentials.InitializeServiceClient(this);
+ }
+ }
+
+ ///
+ /// Initializes a new instance of the HybridComputeManagementClient class.
+ ///
+ ///
+ /// Optional. The base URI of the service.
+ ///
+ ///
+ /// Required. Credentials needed for the client to connect to Azure.
+ ///
+ ///
+ /// Optional. The http client handler used to handle http transport.
+ ///
+ ///
+ /// Optional. The delegating handlers to add to the http client pipeline.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ public HybridComputeManagementClient(System.Uri baseUri, ServiceClientCredentials credentials, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) : this(rootHandler, handlers)
+ {
+ if (baseUri == null)
+ {
+ throw new System.ArgumentNullException("baseUri");
+ }
+ if (credentials == null)
+ {
+ throw new System.ArgumentNullException("credentials");
+ }
+ BaseUri = baseUri;
+ Credentials = credentials;
+ if (Credentials != null)
+ {
+ Credentials.InitializeServiceClient(this);
+ }
+ }
+
+ ///
+ /// An optional partial-method to perform custom initialization.
+ ///
+ partial void CustomInitialize();
+ ///
+ /// Initializes client properties.
+ ///
+ private void Initialize()
+ {
+ Machines = new MachinesOperations(this);
+ MachineExtensions = new MachineExtensionsOperations(this);
+ Operations = new Operations(this);
+ BaseUri = new System.Uri("https://management.azure.com");
+ ApiVersion = "2020-08-02";
+ AcceptLanguage = "en-US";
+ LongRunningOperationRetryTimeout = 30;
+ GenerateClientRequestId = true;
+ SerializationSettings = new JsonSerializerSettings
+ {
+ Formatting = Newtonsoft.Json.Formatting.Indented,
+ DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
+ DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc,
+ NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore,
+ ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize,
+ ContractResolver = new ReadOnlyJsonContractResolver(),
+ Converters = new List
+ {
+ new Iso8601TimeSpanConverter()
+ }
+ };
+ SerializationSettings.Converters.Add(new TransformationJsonConverter());
+ DeserializationSettings = new JsonSerializerSettings
+ {
+ DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
+ DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc,
+ NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore,
+ ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize,
+ ContractResolver = new ReadOnlyJsonContractResolver(),
+ Converters = new List
+ {
+ new Iso8601TimeSpanConverter()
+ }
+ };
+ CustomInitialize();
+ DeserializationSettings.Converters.Add(new TransformationJsonConverter());
+ DeserializationSettings.Converters.Add(new CloudErrorJsonConverter());
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IHybridComputeManagementClient.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IHybridComputeManagementClient.cs
new file mode 100644
index 0000000000000..955e0ff6866b6
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IHybridComputeManagementClient.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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using Newtonsoft.Json;
+
+ ///
+ /// The Hybrid Compute Management Client.
+ ///
+ public partial interface IHybridComputeManagementClient : System.IDisposable
+ {
+ ///
+ /// The base URI of the service.
+ ///
+ System.Uri BaseUri { get; set; }
+
+ ///
+ /// Gets or sets json serialization settings.
+ ///
+ JsonSerializerSettings SerializationSettings { get; }
+
+ ///
+ /// Gets or sets json deserialization settings.
+ ///
+ JsonSerializerSettings DeserializationSettings { get; }
+
+ ///
+ /// Credentials needed for the client to connect to Azure.
+ ///
+ ServiceClientCredentials Credentials { get; }
+
+ ///
+ /// Subscription credentials which uniquely identify Microsoft Azure
+ /// subscription. The subscription ID forms part of the URI for every
+ /// service call.
+ ///
+ string SubscriptionId { get; set; }
+
+ ///
+ /// Client Api Version.
+ ///
+ string ApiVersion { get; }
+
+ ///
+ /// The preferred language for the response.
+ ///
+ string AcceptLanguage { get; set; }
+
+ ///
+ /// The retry timeout in seconds for Long Running Operations. Default
+ /// value is 30.
+ ///
+ int? LongRunningOperationRetryTimeout { get; set; }
+
+ ///
+ /// Whether a unique x-ms-client-request-id should be generated. When
+ /// set to true a unique x-ms-client-request-id value is generated and
+ /// included in each request. Default is true.
+ ///
+ bool? GenerateClientRequestId { get; set; }
+
+
+ ///
+ /// Gets the IMachinesOperations.
+ ///
+ IMachinesOperations Machines { get; }
+
+ ///
+ /// Gets the IMachineExtensionsOperations.
+ ///
+ IMachineExtensionsOperations MachineExtensions { get; }
+
+ ///
+ /// Gets the IOperations.
+ ///
+ IOperations Operations { get; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachineExtensionsOperations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachineExtensionsOperations.cs
new file mode 100644
index 0000000000000..7e1ec55e1077f
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachineExtensionsOperations.cs
@@ -0,0 +1,283 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// MachineExtensionsOperations operations.
+ ///
+ public partial interface IMachineExtensionsOperations
+ {
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or
+ /// updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> CreateOrUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or
+ /// updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> UpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to get the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The expand expression to apply on the 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>> ListWithHttpMessagesAsync(string resourceGroupName, string name, string expand = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or
+ /// updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> BeginCreateOrUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or
+ /// updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> BeginUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachinesOperations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachinesOperations.cs
new file mode 100644
index 0000000000000..07e538b8653f5
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IMachinesOperations.cs
@@ -0,0 +1,172 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// MachinesOperations operations.
+ ///
+ public partial interface IMachinesOperations
+ {
+ ///
+ /// The operation to remove a hybrid machine identity in Azure.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Retrieves information about the model view or the instance view of
+ /// a hybrid machine.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// The expand expression to apply on the operation. Possible values
+ /// include: 'instanceView'
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string expand = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use
+ /// the nextLink property in the response to get the next page of
+ /// hybrid machines.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// 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>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use
+ /// the nextLink property in the response to get the next page of
+ /// hybrid machines.
+ ///
+ ///
+ /// 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>> ListBySubscriptionWithHttpMessagesAsync(Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use
+ /// the nextLink property in the response to get the next page of
+ /// hybrid machines.
+ ///
+ ///
+ /// 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>> ListByResourceGroupNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use
+ /// the nextLink property in the response to get the next page of
+ /// hybrid machines.
+ ///
+ ///
+ /// 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>> ListBySubscriptionNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IOperations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IOperations.cs
new file mode 100644
index 0000000000000..ba20f1fd6abc2
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/IOperations.cs
@@ -0,0 +1,46 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// Operations operations.
+ ///
+ public partial interface IOperations
+ {
+ ///
+ /// Gets a list of hybrid compute operations.
+ ///
+ ///
+ /// 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));
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperations.cs
new file mode 100644
index 0000000000000..b8c942f820b92
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperations.cs
@@ -0,0 +1,1343 @@
+//
+// 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.HybridCompute
+{
+ 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;
+
+ ///
+ /// MachineExtensionsOperations operations.
+ ///
+ internal partial class MachineExtensionsOperations : IServiceOperations, IMachineExtensionsOperations
+ {
+ ///
+ /// Initializes a new instance of the MachineExtensionsOperations class.
+ ///
+ ///
+ /// Reference to the service client.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ internal MachineExtensionsOperations(HybridComputeManagementClient client)
+ {
+ if (client == null)
+ {
+ throw new System.ArgumentNullException("client");
+ }
+ Client = client;
+ }
+
+ ///
+ /// Gets a reference to the HybridComputeManagementClient
+ ///
+ public HybridComputeManagementClient Client { get; private set; }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public async Task> CreateOrUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ // Send Request
+ AzureOperationResponse _response = await BeginCreateOrUpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, customHeaders, cancellationToken).ConfigureAwait(false);
+ return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public async Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ // Send Request
+ AzureOperationResponse _response = await BeginUpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, customHeaders, cancellationToken).ConfigureAwait(false);
+ return await Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public async Task DeleteWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ // Send request
+ AzureOperationResponse _response = await BeginDeleteWithHttpMessagesAsync(resourceGroupName, name, extensionName, customHeaders, cancellationToken).ConfigureAwait(false);
+ return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// The operation to get the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ if (extensionName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionName");
+ }
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("extensionName", extensionName);
+ 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.HybridCompute/machines/{name}/extensions/{extensionName}").ToString();
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ _url = _url.Replace("{extensionName}", System.Uri.EscapeDataString(extensionName));
+ _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;
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The expand expression to apply on the 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>> ListWithHttpMessagesAsync(string resourceGroupName, string name, string expand = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("expand", expand);
+ 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.HybridCompute/machines/{name}/extensions").ToString();
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
+ List _queryParameters = new List();
+ if (expand != null)
+ {
+ _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand)));
+ }
+ 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;
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> BeginCreateOrUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ if (extensionName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionName");
+ }
+ if (extensionParameters == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionParameters");
+ }
+ if (extensionParameters != null)
+ {
+ extensionParameters.Validate();
+ }
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("extensionName", extensionName);
+ tracingParameters.Add("extensionParameters", extensionParameters);
+ 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.HybridCompute/machines/{name}/extensions/{extensionName}").ToString();
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ _url = _url.Replace("{extensionName}", System.Uri.EscapeDataString(extensionName));
+ _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("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(extensionParameters != null)
+ {
+ _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(extensionParameters, 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;
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension 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> BeginUpdateWithHttpMessagesAsync(string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ if (extensionName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionName");
+ }
+ if (extensionParameters == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionParameters");
+ }
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("extensionName", extensionName);
+ tracingParameters.Add("extensionParameters", extensionParameters);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "BeginUpdate", 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.HybridCompute/machines/{name}/extensions/{extensionName}").ToString();
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ _url = _url.Replace("{extensionName}", System.Uri.EscapeDataString(extensionName));
+ _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("PATCH");
+ _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(extensionParameters != null)
+ {
+ _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(extensionParameters, 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;
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string extensionName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ if (extensionName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "extensionName");
+ }
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("extensionName", extensionName);
+ 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.HybridCompute/machines/{name}/extensions/{extensionName}").ToString();
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ _url = _url.Replace("{extensionName}", System.Uri.EscapeDataString(extensionName));
+ _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("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;
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperationsExtensions.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperationsExtensions.cs
new file mode 100644
index 0000000000000..3c5997a1dc5dd
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachineExtensionsOperationsExtensions.cs
@@ -0,0 +1,445 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// Extension methods for MachineExtensionsOperations.
+ ///
+ public static partial class MachineExtensionsOperationsExtensions
+ {
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ public static MachineExtension CreateOrUpdate(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters)
+ {
+ return operations.CreateOrUpdateAsync(resourceGroupName, name, extensionName, extensionParameters).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task CreateOrUpdateAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ public static MachineExtension Update(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters)
+ {
+ return operations.UpdateAsync(resourceGroupName, name, extensionName, extensionParameters).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task UpdateAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ public static void Delete(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName)
+ {
+ operations.DeleteAsync(resourceGroupName, name, extensionName).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task DeleteAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, name, extensionName, null, cancellationToken).ConfigureAwait(false)).Dispose();
+ }
+
+ ///
+ /// The operation to get the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ public static MachineExtension Get(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName)
+ {
+ return operations.GetAsync(resourceGroupName, name, extensionName).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to get the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task GetAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, name, extensionName, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The expand expression to apply on the operation.
+ ///
+ public static IPage List(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string expand = default(string))
+ {
+ return operations.ListAsync(resourceGroupName, name, expand).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine containing the extension.
+ ///
+ ///
+ /// The expand expression to apply on the operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string expand = default(string), CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, name, expand, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ public static MachineExtension BeginCreateOrUpdate(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters)
+ {
+ return operations.BeginCreateOrUpdateAsync(resourceGroupName, name, extensionName, extensionParameters).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task BeginCreateOrUpdateAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtension extensionParameters, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ public static MachineExtension BeginUpdate(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters)
+ {
+ return operations.BeginUpdateAsync(resourceGroupName, name, extensionName, extensionParameters).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to create or update the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be created or updated.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// Parameters supplied to the Create Machine Extension operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task BeginUpdateAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, MachineExtensionUpdate extensionParameters, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.BeginUpdateWithHttpMessagesAsync(resourceGroupName, name, extensionName, extensionParameters, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ public static void BeginDelete(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName)
+ {
+ operations.BeginDeleteAsync(resourceGroupName, name, extensionName).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to delete the extension.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the machine where the extension should be deleted.
+ ///
+ ///
+ /// The name of the machine extension.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task BeginDeleteAsync(this IMachineExtensionsOperations operations, string resourceGroupName, string name, string extensionName, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ (await operations.BeginDeleteWithHttpMessagesAsync(resourceGroupName, name, extensionName, null, cancellationToken).ConfigureAwait(false)).Dispose();
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ public static IPage ListNext(this IMachineExtensionsOperations operations, string nextPageLink)
+ {
+ return operations.ListNextAsync(nextPageLink).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to get all extensions of a non-Azure machine
+ ///
+ ///
+ /// 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 IMachineExtensionsOperations 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperations.cs
new file mode 100644
index 0000000000000..7939c0540f1d3
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperations.cs
@@ -0,0 +1,1120 @@
+//
+// 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.HybridCompute
+{
+ 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;
+
+ ///
+ /// MachinesOperations operations.
+ ///
+ internal partial class MachinesOperations : IServiceOperations, IMachinesOperations
+ {
+ ///
+ /// Initializes a new instance of the MachinesOperations class.
+ ///
+ ///
+ /// Reference to the service client.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ internal MachinesOperations(HybridComputeManagementClient client)
+ {
+ if (client == null)
+ {
+ throw new System.ArgumentNullException("client");
+ }
+ Client = client;
+ }
+
+ ///
+ /// Gets a reference to the HybridComputeManagementClient
+ ///
+ public HybridComputeManagementClient Client { get; private set; }
+
+ ///
+ /// The operation to remove a hybrid machine identity in Azure.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// 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 DeleteWithHttpMessagesAsync(string resourceGroupName, string name, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "Delete", 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.HybridCompute/machines/{name}").ToString();
+ _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ 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 != 204)
+ {
+ var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ 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;
+ }
+
+ ///
+ /// Retrieves information about the model view or the instance view of a hybrid
+ /// machine.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// The expand expression to apply on the operation. Possible values include:
+ /// 'instanceView'
+ ///
+ ///
+ /// 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 resourceGroupName, string name, string expand = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ if (name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "name");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("name", name);
+ tracingParameters.Add("expand", expand);
+ 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.HybridCompute/machines/{name}").ToString();
+ _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
+ _url = _url.Replace("{name}", System.Uri.EscapeDataString(name));
+ List _queryParameters = new List();
+ if (Client.ApiVersion != null)
+ {
+ _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion)));
+ }
+ if (expand != null)
+ {
+ _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand)));
+ }
+ 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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// 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>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ if (resourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("resourceGroupName", resourceGroupName);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "ListByResourceGroup", 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.HybridCompute/machines").ToString();
+ _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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse>();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// 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>> ListBySubscriptionWithHttpMessagesAsync(Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // 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, "ListBySubscription", tracingParameters);
+ }
+ // Construct URL
+ var _baseUrl = Client.BaseUri.AbsoluteUri;
+ var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines").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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse>();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// 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>> ListByResourceGroupNextWithHttpMessagesAsync(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, "ListByResourceGroupNext", 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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse>();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// 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>> ListBySubscriptionNextWithHttpMessagesAsync(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, "ListBySubscriptionNext", 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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperationsExtensions.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperationsExtensions.cs
new file mode 100644
index 0000000000000..8c5eacebe0f42
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/MachinesOperationsExtensions.cs
@@ -0,0 +1,250 @@
+//
+// 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.HybridCompute
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Models;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// Extension methods for MachinesOperations.
+ ///
+ public static partial class MachinesOperationsExtensions
+ {
+ ///
+ /// The operation to remove a hybrid machine identity in Azure.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ public static void Delete(this IMachinesOperations operations, string resourceGroupName, string name)
+ {
+ operations.DeleteAsync(resourceGroupName, name).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// The operation to remove a hybrid machine identity in Azure.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task DeleteAsync(this IMachinesOperations operations, string resourceGroupName, string name, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, name, null, cancellationToken).ConfigureAwait(false)).Dispose();
+ }
+
+ ///
+ /// Retrieves information about the model view or the instance view of a hybrid
+ /// machine.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// The expand expression to apply on the operation. Possible values include:
+ /// 'instanceView'
+ ///
+ public static Machine Get(this IMachinesOperations operations, string resourceGroupName, string name, string expand = default(string))
+ {
+ return operations.GetAsync(resourceGroupName, name, expand).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Retrieves information about the model view or the instance view of a hybrid
+ /// machine.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The name of the hybrid machine.
+ ///
+ ///
+ /// The expand expression to apply on the operation. Possible values include:
+ /// 'instanceView'
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task GetAsync(this IMachinesOperations operations, string resourceGroupName, string name, string expand = default(string), CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, name, expand, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ public static IPage ListByResourceGroup(this IMachinesOperations operations, string resourceGroupName)
+ {
+ return operations.ListByResourceGroupAsync(resourceGroupName).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The name of the resource group.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListByResourceGroupAsync(this IMachinesOperations operations, string resourceGroupName, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListByResourceGroupWithHttpMessagesAsync(resourceGroupName, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ public static IPage ListBySubscription(this IMachinesOperations operations)
+ {
+ return operations.ListBySubscriptionAsync().GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListBySubscriptionAsync(this IMachinesOperations operations, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListBySubscriptionWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ public static IPage ListByResourceGroupNext(this IMachinesOperations operations, string nextPageLink)
+ {
+ return operations.ListByResourceGroupNextAsync(nextPageLink).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified resource group. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListByResourceGroupNextAsync(this IMachinesOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListByResourceGroupNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ public static IPage ListBySubscriptionNext(this IMachinesOperations operations, string nextPageLink)
+ {
+ return operations.ListBySubscriptionNextAsync(nextPageLink).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Lists all the hybrid machines in the specified subscription. Use the
+ /// nextLink property in the response to get the next page of hybrid machines.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListBySubscriptionNextAsync(this IMachinesOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListBySubscriptionNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/AzureEntityResource.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/AzureEntityResource.cs
new file mode 100644
index 0000000000000..f9fe328adda7b
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/AzureEntityResource.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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// The resource model definition for a Azure Resource Manager resource
+ /// with an etag.
+ ///
+ public partial class AzureEntityResource : Resource
+ {
+ ///
+ /// Initializes a new instance of the AzureEntityResource class.
+ ///
+ public AzureEntityResource()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the AzureEntityResource class.
+ ///
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ /// Resource Etag.
+ public AzureEntityResource(string id = default(string), string name = default(string), string type = default(string), string etag = default(string))
+ : base(id, name, type)
+ {
+ Etag = etag;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets resource Etag.
+ ///
+ [JsonProperty(PropertyName = "etag")]
+ public string Etag { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorDetail.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorDetail.cs
new file mode 100644
index 0000000000000..ee3481861ecf9
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorDetail.cs
@@ -0,0 +1,107 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Error details.
+ ///
+ public partial class ErrorDetail
+ {
+ ///
+ /// Initializes a new instance of the ErrorDetail class.
+ ///
+ public ErrorDetail()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ErrorDetail class.
+ ///
+ /// The error's code.
+ /// A human readable error message.
+ /// Indicates which property in the request is
+ /// responsible for the error.
+ /// Additional error details.
+ public ErrorDetail(string code, string message, string target = default(string), IList details = default(IList))
+ {
+ Code = code;
+ Message = message;
+ Target = target;
+ Details = details;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the error's code.
+ ///
+ [JsonProperty(PropertyName = "code")]
+ public string Code { get; set; }
+
+ ///
+ /// Gets or sets a human readable error message.
+ ///
+ [JsonProperty(PropertyName = "message")]
+ public string Message { get; set; }
+
+ ///
+ /// Gets or sets indicates which property in the request is responsible
+ /// for the error.
+ ///
+ [JsonProperty(PropertyName = "target")]
+ public string Target { get; set; }
+
+ ///
+ /// Gets or sets additional error details.
+ ///
+ [JsonProperty(PropertyName = "details")]
+ public IList Details { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (Code == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Code");
+ }
+ if (Message == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Message");
+ }
+ if (Details != null)
+ {
+ foreach (var element in Details)
+ {
+ if (element != null)
+ {
+ element.Validate();
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponse.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponse.cs
new file mode 100644
index 0000000000000..e4af05544f67e
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponse.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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Error response.
+ ///
+ ///
+ /// Contains details when the response code indicates an error.
+ ///
+ public partial class ErrorResponse
+ {
+ ///
+ /// Initializes a new instance of the ErrorResponse class.
+ ///
+ public ErrorResponse()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ErrorResponse class.
+ ///
+ /// The error details.
+ public ErrorResponse(ErrorDetail error)
+ {
+ Error = error;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the error details.
+ ///
+ [JsonProperty(PropertyName = "error")]
+ public ErrorDetail Error { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (Error == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Error");
+ }
+ if (Error != null)
+ {
+ Error.Validate();
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponseException.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponseException.cs
new file mode 100644
index 0000000000000..e4e72adf58bfe
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ErrorResponseException.cs
@@ -0,0 +1,62 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.HybridCompute.Models
+{
+ using Microsoft.Rest;
+
+ ///
+ /// Exception thrown for an invalid response with ErrorResponse
+ /// information.
+ ///
+ public partial class ErrorResponseException : RestException
+ {
+ ///
+ /// Gets information about the associated HTTP request.
+ ///
+ public HttpRequestMessageWrapper Request { get; set; }
+
+ ///
+ /// Gets information about the associated HTTP response.
+ ///
+ public HttpResponseMessageWrapper Response { get; set; }
+
+ ///
+ /// Gets or sets the body object.
+ ///
+ public ErrorResponse Body { get; set; }
+
+ ///
+ /// Initializes a new instance of the ErrorResponseException class.
+ ///
+ public ErrorResponseException()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the ErrorResponseException class.
+ ///
+ /// The exception message.
+ public ErrorResponseException(string message)
+ : this(message, null)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the ErrorResponseException class.
+ ///
+ /// The exception message.
+ /// Inner exception.
+ public ErrorResponseException(string message, System.Exception innerException)
+ : base(message, innerException)
+ {
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Identity.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Identity.cs
new file mode 100644
index 0000000000000..27add358676b5
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Identity.cs
@@ -0,0 +1,67 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Managed Identity.
+ ///
+ public partial class Identity
+ {
+ ///
+ /// Initializes a new instance of the Identity class.
+ ///
+ public Identity()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the Identity class.
+ ///
+ /// The identity type.
+ /// The identity's principal id.
+ /// The identity's tenant id.
+ public Identity(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 the identity type.
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public string Type { get; set; }
+
+ ///
+ /// Gets the identity's principal id.
+ ///
+ [JsonProperty(PropertyName = "principalId")]
+ public string PrincipalId { get; private set; }
+
+ ///
+ /// Gets the identity's tenant id.
+ ///
+ [JsonProperty(PropertyName = "tenantId")]
+ public string TenantId { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/InstanceViewTypes.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/InstanceViewTypes.cs
new file mode 100644
index 0000000000000..521419160c931
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/InstanceViewTypes.cs
@@ -0,0 +1,21 @@
+//
+// 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.HybridCompute.Models
+{
+
+ ///
+ /// Defines values for InstanceViewTypes.
+ ///
+ public static class InstanceViewTypes
+ {
+ public const string InstanceView = "instanceView";
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/LocationData.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/LocationData.cs
new file mode 100644
index 0000000000000..5b1523baf3563
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/LocationData.cs
@@ -0,0 +1,102 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Metadata pertaining to the geographic location of the resource.
+ ///
+ public partial class LocationData
+ {
+ ///
+ /// Initializes a new instance of the LocationData class.
+ ///
+ public LocationData()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the LocationData class.
+ ///
+ /// A canonical name for the geographic or physical
+ /// location.
+ /// The city or locality where the resource is
+ /// located.
+ /// The district, state, or province where the
+ /// resource is located.
+ /// The country or region where the
+ /// resource is located
+ public LocationData(string name, string city = default(string), string district = default(string), string countryOrRegion = default(string))
+ {
+ Name = name;
+ City = city;
+ District = district;
+ CountryOrRegion = countryOrRegion;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets a canonical name for the geographic or physical
+ /// location.
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets the city or locality where the resource is located.
+ ///
+ [JsonProperty(PropertyName = "city")]
+ public string City { get; set; }
+
+ ///
+ /// Gets or sets the district, state, or province where the resource is
+ /// located.
+ ///
+ [JsonProperty(PropertyName = "district")]
+ public string District { get; set; }
+
+ ///
+ /// Gets or sets the country or region where the resource is located
+ ///
+ [JsonProperty(PropertyName = "countryOrRegion")]
+ public string CountryOrRegion { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (Name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Name");
+ }
+ if (Name != null)
+ {
+ if (Name.Length > 256)
+ {
+ throw new ValidationException(ValidationRules.MaxLength, "Name", 256);
+ }
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Machine.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Machine.cs
new file mode 100644
index 0000000000000..60b94dc4eae74
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Machine.cs
@@ -0,0 +1,256 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Serialization;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Describes a hybrid machine.
+ ///
+ [Rest.Serialization.JsonTransformation]
+ public partial class Machine : TrackedResource
+ {
+ ///
+ /// Initializes a new instance of the Machine class.
+ ///
+ public Machine()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the Machine class.
+ ///
+ /// The geo-location where the resource
+ /// lives
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ /// Resource tags.
+ /// Specifies the operating system settings for
+ /// the hybrid machine.
+ /// The provisioning state, which only
+ /// appears in the response.
+ /// The status of the hybrid machine agent.
+ /// Possible values include: 'Connected', 'Disconnected',
+ /// 'Error'
+ /// The time of the last status
+ /// change.
+ /// Details about the error state.
+ /// The hybrid machine agent full
+ /// version.
+ /// Specifies the hybrid machine unique ID.
+ /// Specifies the hybrid machine display
+ /// name.
+ /// Specifies the hybrid machine
+ /// FQDN.
+ /// Public Key that the client provides
+ /// to be used during initial resource onboarding
+ /// The Operating System running on the hybrid
+ /// machine.
+ /// The version of Operating System running on
+ /// the hybrid machine.
+ /// Specifies the Arc Machine's unique SMBIOS
+ /// ID
+ /// Machine Extensions information
+ /// Specifies the Operating System product
+ /// SKU.
+ /// Specifies the Windows domain name.
+ /// Specifies the AD fully qualified display
+ /// name.
+ /// Specifies the DNS fully qualified display
+ /// name.
+ public Machine(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), LocationData locationData = default(LocationData), MachinePropertiesOsProfile osProfile = default(MachinePropertiesOsProfile), string provisioningState = default(string), string status = default(string), System.DateTime? lastStatusChange = default(System.DateTime?), IList errorDetails = default(IList), string agentVersion = default(string), string vmId = default(string), string displayName = default(string), string machineFqdn = default(string), string clientPublicKey = default(string), string osName = default(string), string osVersion = default(string), string vmUuid = default(string), IList extensions = default(IList), string osSku = default(string), string domainName = default(string), string adFqdn = default(string), string dnsFqdn = default(string), MachineIdentity identity = default(MachineIdentity))
+ : base(location, id, name, type, tags)
+ {
+ LocationData = locationData;
+ OsProfile = osProfile;
+ ProvisioningState = provisioningState;
+ Status = status;
+ LastStatusChange = lastStatusChange;
+ ErrorDetails = errorDetails;
+ AgentVersion = agentVersion;
+ VmId = vmId;
+ DisplayName = displayName;
+ MachineFqdn = machineFqdn;
+ ClientPublicKey = clientPublicKey;
+ OsName = osName;
+ OsVersion = osVersion;
+ VmUuid = vmUuid;
+ Extensions = extensions;
+ OsSku = osSku;
+ DomainName = domainName;
+ AdFqdn = adFqdn;
+ DnsFqdn = dnsFqdn;
+ Identity = identity;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ ///
+ [JsonProperty(PropertyName = "properties.locationData")]
+ public LocationData LocationData { get; set; }
+
+ ///
+ /// Gets or sets specifies the operating system settings for the hybrid
+ /// machine.
+ ///
+ [JsonProperty(PropertyName = "properties.osProfile")]
+ public MachinePropertiesOsProfile OsProfile { get; set; }
+
+ ///
+ /// Gets the provisioning state, which only appears in the response.
+ ///
+ [JsonProperty(PropertyName = "properties.provisioningState")]
+ public string ProvisioningState { get; private set; }
+
+ ///
+ /// Gets the status of the hybrid machine agent. Possible values
+ /// include: 'Connected', 'Disconnected', 'Error'
+ ///
+ [JsonProperty(PropertyName = "properties.status")]
+ public string Status { get; private set; }
+
+ ///
+ /// Gets the time of the last status change.
+ ///
+ [JsonProperty(PropertyName = "properties.lastStatusChange")]
+ public System.DateTime? LastStatusChange { get; private set; }
+
+ ///
+ /// Gets details about the error state.
+ ///
+ [JsonProperty(PropertyName = "properties.errorDetails")]
+ public IList ErrorDetails { get; private set; }
+
+ ///
+ /// Gets the hybrid machine agent full version.
+ ///
+ [JsonProperty(PropertyName = "properties.agentVersion")]
+ public string AgentVersion { get; private set; }
+
+ ///
+ /// Gets or sets specifies the hybrid machine unique ID.
+ ///
+ [JsonProperty(PropertyName = "properties.vmId")]
+ public string VmId { get; set; }
+
+ ///
+ /// Gets specifies the hybrid machine display name.
+ ///
+ [JsonProperty(PropertyName = "properties.displayName")]
+ public string DisplayName { get; private set; }
+
+ ///
+ /// Gets specifies the hybrid machine FQDN.
+ ///
+ [JsonProperty(PropertyName = "properties.machineFqdn")]
+ public string MachineFqdn { get; private set; }
+
+ ///
+ /// Gets or sets public Key that the client provides to be used during
+ /// initial resource onboarding
+ ///
+ [JsonProperty(PropertyName = "properties.clientPublicKey")]
+ public string ClientPublicKey { get; set; }
+
+ ///
+ /// Gets the Operating System running on the hybrid machine.
+ ///
+ [JsonProperty(PropertyName = "properties.osName")]
+ public string OsName { get; private set; }
+
+ ///
+ /// Gets the version of Operating System running on the hybrid machine.
+ ///
+ [JsonProperty(PropertyName = "properties.osVersion")]
+ public string OsVersion { get; private set; }
+
+ ///
+ /// Gets specifies the Arc Machine's unique SMBIOS ID
+ ///
+ [JsonProperty(PropertyName = "properties.vmUuid")]
+ public string VmUuid { get; private set; }
+
+ ///
+ /// Gets machine Extensions information
+ ///
+ [JsonProperty(PropertyName = "properties.extensions")]
+ public IList Extensions { get; private set; }
+
+ ///
+ /// Gets specifies the Operating System product SKU.
+ ///
+ [JsonProperty(PropertyName = "properties.osSku")]
+ public string OsSku { get; private set; }
+
+ ///
+ /// Gets specifies the Windows domain name.
+ ///
+ [JsonProperty(PropertyName = "properties.domainName")]
+ public string DomainName { get; private set; }
+
+ ///
+ /// Gets specifies the AD fully qualified display name.
+ ///
+ [JsonProperty(PropertyName = "properties.adFqdn")]
+ public string AdFqdn { get; private set; }
+
+ ///
+ /// Gets specifies the DNS fully qualified display name.
+ ///
+ [JsonProperty(PropertyName = "properties.dnsFqdn")]
+ public string DnsFqdn { get; private set; }
+
+ ///
+ ///
+ [JsonProperty(PropertyName = "identity")]
+ public MachineIdentity Identity { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public override void Validate()
+ {
+ base.Validate();
+ if (LocationData != null)
+ {
+ LocationData.Validate();
+ }
+ if (ErrorDetails != null)
+ {
+ foreach (var element in ErrorDetails)
+ {
+ if (element != null)
+ {
+ element.Validate();
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtension.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtension.cs
new file mode 100644
index 0000000000000..5f17ac061d655
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtension.cs
@@ -0,0 +1,160 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Serialization;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Describes a Machine Extension.
+ ///
+ [Rest.Serialization.JsonTransformation]
+ public partial class MachineExtension : TrackedResource
+ {
+ ///
+ /// Initializes a new instance of the MachineExtension class.
+ ///
+ public MachineExtension()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineExtension class.
+ ///
+ /// The geo-location where the resource
+ /// lives
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ /// Resource tags.
+ /// How the extension handler should be
+ /// forced to update even if the extension configuration has not
+ /// changed.
+ /// The name of the extension handler
+ /// publisher.
+ /// Specifies the type of the
+ /// extension; an example is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Indicates whether the
+ /// extension should use a newer minor version if one is available at
+ /// deployment time. Once deployed, however, the extension will not
+ /// upgrade minor versions unless redeployed, even with this property
+ /// set to true.
+ /// Json formatted public settings for the
+ /// extension.
+ /// The extension can contain either
+ /// protectedSettings or protectedSettingsFromKeyVault or no protected
+ /// settings at all.
+ /// The provisioning state, which only
+ /// appears in the response.
+ /// The machine extension instance
+ /// view.
+ public MachineExtension(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), string forceUpdateTag = default(string), string publisher = default(string), string machineExtensionType = default(string), string typeHandlerVersion = default(string), bool? autoUpgradeMinorVersion = default(bool?), object settings = default(object), object protectedSettings = default(object), string provisioningState = default(string), MachineExtensionPropertiesInstanceView instanceView = default(MachineExtensionPropertiesInstanceView))
+ : base(location, id, name, type, tags)
+ {
+ ForceUpdateTag = forceUpdateTag;
+ Publisher = publisher;
+ MachineExtensionType = machineExtensionType;
+ TypeHandlerVersion = typeHandlerVersion;
+ AutoUpgradeMinorVersion = autoUpgradeMinorVersion;
+ Settings = settings;
+ ProtectedSettings = protectedSettings;
+ ProvisioningState = provisioningState;
+ InstanceView = instanceView;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets how the extension handler should be forced to update
+ /// even if the extension configuration has not changed.
+ ///
+ [JsonProperty(PropertyName = "properties.forceUpdateTag")]
+ public string ForceUpdateTag { get; set; }
+
+ ///
+ /// Gets or sets the name of the extension handler publisher.
+ ///
+ [JsonProperty(PropertyName = "properties.publisher")]
+ public string Publisher { get; set; }
+
+ ///
+ /// Gets or sets specifies the type of the extension; an example is
+ /// "CustomScriptExtension".
+ ///
+ [JsonProperty(PropertyName = "properties.type")]
+ public string MachineExtensionType { get; set; }
+
+ ///
+ /// Gets or sets specifies the version of the script handler.
+ ///
+ [JsonProperty(PropertyName = "properties.typeHandlerVersion")]
+ public string TypeHandlerVersion { get; set; }
+
+ ///
+ /// Gets or sets indicates whether the extension should use a newer
+ /// minor version if one is available at deployment time. Once
+ /// deployed, however, the extension will not upgrade minor versions
+ /// unless redeployed, even with this property set to true.
+ ///
+ [JsonProperty(PropertyName = "properties.autoUpgradeMinorVersion")]
+ public bool? AutoUpgradeMinorVersion { get; set; }
+
+ ///
+ /// Gets or sets json formatted public settings for the extension.
+ ///
+ [JsonProperty(PropertyName = "properties.settings")]
+ public object Settings { get; set; }
+
+ ///
+ /// Gets or sets the extension can contain either protectedSettings or
+ /// protectedSettingsFromKeyVault or no protected settings at all.
+ ///
+ [JsonProperty(PropertyName = "properties.protectedSettings")]
+ public object ProtectedSettings { get; set; }
+
+ ///
+ /// Gets the provisioning state, which only appears in the response.
+ ///
+ [JsonProperty(PropertyName = "properties.provisioningState")]
+ public string ProvisioningState { get; private set; }
+
+ ///
+ /// Gets or sets the machine extension instance view.
+ ///
+ [JsonProperty(PropertyName = "properties.instanceView")]
+ public MachineExtensionPropertiesInstanceView InstanceView { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public override void Validate()
+ {
+ base.Validate();
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceView.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceView.cs
new file mode 100644
index 0000000000000..a21f050d15ecd
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceView.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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the Machine Extension Instance View.
+ ///
+ public partial class MachineExtensionInstanceView
+ {
+ ///
+ /// Initializes a new instance of the MachineExtensionInstanceView
+ /// class.
+ ///
+ public MachineExtensionInstanceView()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineExtensionInstanceView
+ /// class.
+ ///
+ /// The machine extension name.
+ /// Specifies the type of the extension; an example
+ /// is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Instance view status.
+ public MachineExtensionInstanceView(string name = default(string), string type = default(string), string typeHandlerVersion = default(string), MachineExtensionInstanceViewStatus status = default(MachineExtensionInstanceViewStatus))
+ {
+ Name = name;
+ Type = type;
+ TypeHandlerVersion = typeHandlerVersion;
+ Status = status;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the machine extension name.
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; private set; }
+
+ ///
+ /// Gets specifies the type of the extension; an example is
+ /// "CustomScriptExtension".
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public string Type { get; private set; }
+
+ ///
+ /// Gets specifies the version of the script handler.
+ ///
+ [JsonProperty(PropertyName = "typeHandlerVersion")]
+ public string TypeHandlerVersion { get; private set; }
+
+ ///
+ /// Gets or sets instance view status.
+ ///
+ [JsonProperty(PropertyName = "status")]
+ public MachineExtensionInstanceViewStatus Status { get; set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceViewStatus.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceViewStatus.cs
new file mode 100644
index 0000000000000..49159cd8535fb
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionInstanceViewStatus.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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Instance view status.
+ ///
+ public partial class MachineExtensionInstanceViewStatus
+ {
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionInstanceViewStatus class.
+ ///
+ public MachineExtensionInstanceViewStatus()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionInstanceViewStatus class.
+ ///
+ /// The status code.
+ /// The level code. Possible values include:
+ /// 'Info', 'Warning', 'Error'
+ /// The short localizable label for the
+ /// status.
+ /// The detailed status message, including for
+ /// alerts and error messages.
+ /// The time of the status.
+ public MachineExtensionInstanceViewStatus(string code = default(string), string level = default(string), string displayStatus = default(string), string message = default(string), System.DateTime? time = default(System.DateTime?))
+ {
+ Code = code;
+ Level = level;
+ DisplayStatus = displayStatus;
+ Message = message;
+ Time = time;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the status code.
+ ///
+ [JsonProperty(PropertyName = "code")]
+ public string Code { get; private set; }
+
+ ///
+ /// Gets the level code. Possible values include: 'Info', 'Warning',
+ /// 'Error'
+ ///
+ [JsonProperty(PropertyName = "level")]
+ public string Level { get; private set; }
+
+ ///
+ /// Gets the short localizable label for the status.
+ ///
+ [JsonProperty(PropertyName = "displayStatus")]
+ public string DisplayStatus { get; private set; }
+
+ ///
+ /// Gets the detailed status message, including for alerts and error
+ /// messages.
+ ///
+ [JsonProperty(PropertyName = "message")]
+ public string Message { get; private set; }
+
+ ///
+ /// Gets the time of the status.
+ ///
+ [JsonProperty(PropertyName = "time")]
+ public System.DateTime? Time { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesInstanceView.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesInstanceView.cs
new file mode 100644
index 0000000000000..11096eff213cb
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesInstanceView.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.HybridCompute.Models
+{
+ using System.Linq;
+
+ ///
+ /// The machine extension instance view.
+ ///
+ public partial class MachineExtensionPropertiesInstanceView : MachineExtensionInstanceView
+ {
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionPropertiesInstanceView class.
+ ///
+ public MachineExtensionPropertiesInstanceView()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionPropertiesInstanceView class.
+ ///
+ /// The machine extension name.
+ /// Specifies the type of the extension; an example
+ /// is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Instance view status.
+ public MachineExtensionPropertiesInstanceView(string name = default(string), string type = default(string), string typeHandlerVersion = default(string), MachineExtensionInstanceViewStatus status = default(MachineExtensionInstanceViewStatus))
+ : base(name, type, typeHandlerVersion, status)
+ {
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesModel.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesModel.cs
new file mode 100644
index 0000000000000..5de0dbf6f93c7
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionPropertiesModel.cs
@@ -0,0 +1,137 @@
+//
+// 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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the properties of a Machine Extension.
+ ///
+ public partial class MachineExtensionPropertiesModel
+ {
+ ///
+ /// Initializes a new instance of the MachineExtensionPropertiesModel
+ /// class.
+ ///
+ public MachineExtensionPropertiesModel()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineExtensionPropertiesModel
+ /// class.
+ ///
+ /// How the extension handler should be
+ /// forced to update even if the extension configuration has not
+ /// changed.
+ /// The name of the extension handler
+ /// publisher.
+ /// Specifies the type of the extension; an example
+ /// is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Indicates whether the
+ /// extension should use a newer minor version if one is available at
+ /// deployment time. Once deployed, however, the extension will not
+ /// upgrade minor versions unless redeployed, even with this property
+ /// set to true.
+ /// Json formatted public settings for the
+ /// extension.
+ /// The extension can contain either
+ /// protectedSettings or protectedSettingsFromKeyVault or no protected
+ /// settings at all.
+ /// The provisioning state, which only
+ /// appears in the response.
+ /// The machine extension instance
+ /// view.
+ public MachineExtensionPropertiesModel(string forceUpdateTag = default(string), string publisher = default(string), string type = default(string), string typeHandlerVersion = default(string), bool? autoUpgradeMinorVersion = default(bool?), object settings = default(object), object protectedSettings = default(object), string provisioningState = default(string), MachineExtensionPropertiesInstanceView instanceView = default(MachineExtensionPropertiesInstanceView))
+ {
+ ForceUpdateTag = forceUpdateTag;
+ Publisher = publisher;
+ Type = type;
+ TypeHandlerVersion = typeHandlerVersion;
+ AutoUpgradeMinorVersion = autoUpgradeMinorVersion;
+ Settings = settings;
+ ProtectedSettings = protectedSettings;
+ ProvisioningState = provisioningState;
+ InstanceView = instanceView;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets how the extension handler should be forced to update
+ /// even if the extension configuration has not changed.
+ ///
+ [JsonProperty(PropertyName = "forceUpdateTag")]
+ public string ForceUpdateTag { get; set; }
+
+ ///
+ /// Gets or sets the name of the extension handler publisher.
+ ///
+ [JsonProperty(PropertyName = "publisher")]
+ public string Publisher { get; set; }
+
+ ///
+ /// Gets or sets specifies the type of the extension; an example is
+ /// "CustomScriptExtension".
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public string Type { get; set; }
+
+ ///
+ /// Gets or sets specifies the version of the script handler.
+ ///
+ [JsonProperty(PropertyName = "typeHandlerVersion")]
+ public string TypeHandlerVersion { get; set; }
+
+ ///
+ /// Gets or sets indicates whether the extension should use a newer
+ /// minor version if one is available at deployment time. Once
+ /// deployed, however, the extension will not upgrade minor versions
+ /// unless redeployed, even with this property set to true.
+ ///
+ [JsonProperty(PropertyName = "autoUpgradeMinorVersion")]
+ public bool? AutoUpgradeMinorVersion { get; set; }
+
+ ///
+ /// Gets or sets json formatted public settings for the extension.
+ ///
+ [JsonProperty(PropertyName = "settings")]
+ public object Settings { get; set; }
+
+ ///
+ /// Gets or sets the extension can contain either protectedSettings or
+ /// protectedSettingsFromKeyVault or no protected settings at all.
+ ///
+ [JsonProperty(PropertyName = "protectedSettings")]
+ public object ProtectedSettings { get; set; }
+
+ ///
+ /// Gets the provisioning state, which only appears in the response.
+ ///
+ [JsonProperty(PropertyName = "provisioningState")]
+ public string ProvisioningState { get; private set; }
+
+ ///
+ /// Gets or sets the machine extension instance view.
+ ///
+ [JsonProperty(PropertyName = "instanceView")]
+ public MachineExtensionPropertiesInstanceView InstanceView { get; set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdate.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdate.cs
new file mode 100644
index 0000000000000..a01eb6c8c2bdc
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdate.cs
@@ -0,0 +1,124 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Serialization;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Describes a Machine Extension Update.
+ ///
+ [Rest.Serialization.JsonTransformation]
+ public partial class MachineExtensionUpdate : UpdateResource
+ {
+ ///
+ /// Initializes a new instance of the MachineExtensionUpdate class.
+ ///
+ public MachineExtensionUpdate()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineExtensionUpdate class.
+ ///
+ /// Resource tags
+ /// How the extension handler should be
+ /// forced to update even if the extension configuration has not
+ /// changed.
+ /// The name of the extension handler
+ /// publisher.
+ /// Specifies the type of the extension; an example
+ /// is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Indicates whether the
+ /// extension should use a newer minor version if one is available at
+ /// deployment time. Once deployed, however, the extension will not
+ /// upgrade minor versions unless redeployed, even with this property
+ /// set to true.
+ /// Json formatted public settings for the
+ /// extension.
+ /// The extension can contain either
+ /// protectedSettings or protectedSettingsFromKeyVault or no protected
+ /// settings at all.
+ public MachineExtensionUpdate(IDictionary tags = default(IDictionary), string forceUpdateTag = default(string), string publisher = default(string), string type = default(string), string typeHandlerVersion = default(string), bool? autoUpgradeMinorVersion = default(bool?), object settings = default(object), object protectedSettings = default(object))
+ : base(tags)
+ {
+ ForceUpdateTag = forceUpdateTag;
+ Publisher = publisher;
+ Type = type;
+ TypeHandlerVersion = typeHandlerVersion;
+ AutoUpgradeMinorVersion = autoUpgradeMinorVersion;
+ Settings = settings;
+ ProtectedSettings = protectedSettings;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets how the extension handler should be forced to update
+ /// even if the extension configuration has not changed.
+ ///
+ [JsonProperty(PropertyName = "properties.forceUpdateTag")]
+ public string ForceUpdateTag { get; set; }
+
+ ///
+ /// Gets or sets the name of the extension handler publisher.
+ ///
+ [JsonProperty(PropertyName = "properties.publisher")]
+ public string Publisher { get; set; }
+
+ ///
+ /// Gets or sets specifies the type of the extension; an example is
+ /// "CustomScriptExtension".
+ ///
+ [JsonProperty(PropertyName = "properties.type")]
+ public string Type { get; set; }
+
+ ///
+ /// Gets or sets specifies the version of the script handler.
+ ///
+ [JsonProperty(PropertyName = "properties.typeHandlerVersion")]
+ public string TypeHandlerVersion { get; set; }
+
+ ///
+ /// Gets or sets indicates whether the extension should use a newer
+ /// minor version if one is available at deployment time. Once
+ /// deployed, however, the extension will not upgrade minor versions
+ /// unless redeployed, even with this property set to true.
+ ///
+ [JsonProperty(PropertyName = "properties.autoUpgradeMinorVersion")]
+ public bool? AutoUpgradeMinorVersion { get; set; }
+
+ ///
+ /// Gets or sets json formatted public settings for the extension.
+ ///
+ [JsonProperty(PropertyName = "properties.settings")]
+ public object Settings { get; set; }
+
+ ///
+ /// Gets or sets the extension can contain either protectedSettings or
+ /// protectedSettingsFromKeyVault or no protected settings at all.
+ ///
+ [JsonProperty(PropertyName = "properties.protectedSettings")]
+ public object ProtectedSettings { get; set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdatePropertiesModel.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdatePropertiesModel.cs
new file mode 100644
index 0000000000000..04c8b4bcfee62
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineExtensionUpdatePropertiesModel.cs
@@ -0,0 +1,119 @@
+//
+// 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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the properties of a Machine Extension.
+ ///
+ public partial class MachineExtensionUpdatePropertiesModel
+ {
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionUpdatePropertiesModel class.
+ ///
+ public MachineExtensionUpdatePropertiesModel()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// MachineExtensionUpdatePropertiesModel class.
+ ///
+ /// How the extension handler should be
+ /// forced to update even if the extension configuration has not
+ /// changed.
+ /// The name of the extension handler
+ /// publisher.
+ /// Specifies the type of the extension; an example
+ /// is "CustomScriptExtension".
+ /// Specifies the version of the
+ /// script handler.
+ /// Indicates whether the
+ /// extension should use a newer minor version if one is available at
+ /// deployment time. Once deployed, however, the extension will not
+ /// upgrade minor versions unless redeployed, even with this property
+ /// set to true.
+ /// Json formatted public settings for the
+ /// extension.
+ /// The extension can contain either
+ /// protectedSettings or protectedSettingsFromKeyVault or no protected
+ /// settings at all.
+ public MachineExtensionUpdatePropertiesModel(string forceUpdateTag = default(string), string publisher = default(string), string type = default(string), string typeHandlerVersion = default(string), bool? autoUpgradeMinorVersion = default(bool?), object settings = default(object), object protectedSettings = default(object))
+ {
+ ForceUpdateTag = forceUpdateTag;
+ Publisher = publisher;
+ Type = type;
+ TypeHandlerVersion = typeHandlerVersion;
+ AutoUpgradeMinorVersion = autoUpgradeMinorVersion;
+ Settings = settings;
+ ProtectedSettings = protectedSettings;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets how the extension handler should be forced to update
+ /// even if the extension configuration has not changed.
+ ///
+ [JsonProperty(PropertyName = "forceUpdateTag")]
+ public string ForceUpdateTag { get; set; }
+
+ ///
+ /// Gets or sets the name of the extension handler publisher.
+ ///
+ [JsonProperty(PropertyName = "publisher")]
+ public string Publisher { get; set; }
+
+ ///
+ /// Gets or sets specifies the type of the extension; an example is
+ /// "CustomScriptExtension".
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public string Type { get; set; }
+
+ ///
+ /// Gets or sets specifies the version of the script handler.
+ ///
+ [JsonProperty(PropertyName = "typeHandlerVersion")]
+ public string TypeHandlerVersion { get; set; }
+
+ ///
+ /// Gets or sets indicates whether the extension should use a newer
+ /// minor version if one is available at deployment time. Once
+ /// deployed, however, the extension will not upgrade minor versions
+ /// unless redeployed, even with this property set to true.
+ ///
+ [JsonProperty(PropertyName = "autoUpgradeMinorVersion")]
+ public bool? AutoUpgradeMinorVersion { get; set; }
+
+ ///
+ /// Gets or sets json formatted public settings for the extension.
+ ///
+ [JsonProperty(PropertyName = "settings")]
+ public object Settings { get; set; }
+
+ ///
+ /// Gets or sets the extension can contain either protectedSettings or
+ /// protectedSettingsFromKeyVault or no protected settings at all.
+ ///
+ [JsonProperty(PropertyName = "protectedSettings")]
+ public object ProtectedSettings { get; set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineIdentity.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineIdentity.cs
new file mode 100644
index 0000000000000..1ef6ccb957217
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineIdentity.cs
@@ -0,0 +1,43 @@
+//
+// 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.HybridCompute.Models
+{
+ using System.Linq;
+
+ public partial class MachineIdentity : Identity
+ {
+ ///
+ /// Initializes a new instance of the MachineIdentity class.
+ ///
+ public MachineIdentity()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineIdentity class.
+ ///
+ /// The identity type.
+ /// The identity's principal id.
+ /// The identity's tenant id.
+ public MachineIdentity(string type = default(string), string principalId = default(string), string tenantId = default(string))
+ : base(type, principalId, tenantId)
+ {
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineProperties.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineProperties.cs
new file mode 100644
index 0000000000000..45b559c86b70e
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineProperties.cs
@@ -0,0 +1,236 @@
+//
+// 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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Describes the properties of a hybrid machine.
+ ///
+ public partial class MachineProperties
+ {
+ ///
+ /// Initializes a new instance of the MachineProperties class.
+ ///
+ public MachineProperties()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineProperties class.
+ ///
+ /// Specifies the operating system settings for
+ /// the hybrid machine.
+ /// The provisioning state, which only
+ /// appears in the response.
+ /// The status of the hybrid machine agent.
+ /// Possible values include: 'Connected', 'Disconnected',
+ /// 'Error'
+ /// The time of the last status
+ /// change.
+ /// Details about the error state.
+ /// The hybrid machine agent full
+ /// version.
+ /// Specifies the hybrid machine unique ID.
+ /// Specifies the hybrid machine display
+ /// name.
+ /// Specifies the hybrid machine
+ /// FQDN.
+ /// Public Key that the client provides
+ /// to be used during initial resource onboarding
+ /// The Operating System running on the hybrid
+ /// machine.
+ /// The version of Operating System running on
+ /// the hybrid machine.
+ /// Specifies the Arc Machine's unique SMBIOS
+ /// ID
+ /// Machine Extensions information
+ /// Specifies the Operating System product
+ /// SKU.
+ /// Specifies the Windows domain name.
+ /// Specifies the AD fully qualified display
+ /// name.
+ /// Specifies the DNS fully qualified display
+ /// name.
+ public MachineProperties(LocationData locationData = default(LocationData), MachinePropertiesOsProfile osProfile = default(MachinePropertiesOsProfile), string provisioningState = default(string), string status = default(string), System.DateTime? lastStatusChange = default(System.DateTime?), IList errorDetails = default(IList), string agentVersion = default(string), string vmId = default(string), string displayName = default(string), string machineFqdn = default(string), string clientPublicKey = default(string), string osName = default(string), string osVersion = default(string), string vmUuid = default(string), IList extensions = default(IList), string osSku = default(string), string domainName = default(string), string adFqdn = default(string), string dnsFqdn = default(string))
+ {
+ LocationData = locationData;
+ OsProfile = osProfile;
+ ProvisioningState = provisioningState;
+ Status = status;
+ LastStatusChange = lastStatusChange;
+ ErrorDetails = errorDetails;
+ AgentVersion = agentVersion;
+ VmId = vmId;
+ DisplayName = displayName;
+ MachineFqdn = machineFqdn;
+ ClientPublicKey = clientPublicKey;
+ OsName = osName;
+ OsVersion = osVersion;
+ VmUuid = vmUuid;
+ Extensions = extensions;
+ OsSku = osSku;
+ DomainName = domainName;
+ AdFqdn = adFqdn;
+ DnsFqdn = dnsFqdn;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ ///
+ [JsonProperty(PropertyName = "locationData")]
+ public LocationData LocationData { get; set; }
+
+ ///
+ /// Gets or sets specifies the operating system settings for the hybrid
+ /// machine.
+ ///
+ [JsonProperty(PropertyName = "osProfile")]
+ public MachinePropertiesOsProfile OsProfile { get; set; }
+
+ ///
+ /// Gets the provisioning state, which only appears in the response.
+ ///
+ [JsonProperty(PropertyName = "provisioningState")]
+ public string ProvisioningState { get; private set; }
+
+ ///
+ /// Gets the status of the hybrid machine agent. Possible values
+ /// include: 'Connected', 'Disconnected', 'Error'
+ ///
+ [JsonProperty(PropertyName = "status")]
+ public string Status { get; private set; }
+
+ ///
+ /// Gets the time of the last status change.
+ ///
+ [JsonProperty(PropertyName = "lastStatusChange")]
+ public System.DateTime? LastStatusChange { get; private set; }
+
+ ///
+ /// Gets details about the error state.
+ ///
+ [JsonProperty(PropertyName = "errorDetails")]
+ public IList ErrorDetails { get; private set; }
+
+ ///
+ /// Gets the hybrid machine agent full version.
+ ///
+ [JsonProperty(PropertyName = "agentVersion")]
+ public string AgentVersion { get; private set; }
+
+ ///
+ /// Gets or sets specifies the hybrid machine unique ID.
+ ///
+ [JsonProperty(PropertyName = "vmId")]
+ public string VmId { get; set; }
+
+ ///
+ /// Gets specifies the hybrid machine display name.
+ ///
+ [JsonProperty(PropertyName = "displayName")]
+ public string DisplayName { get; private set; }
+
+ ///
+ /// Gets specifies the hybrid machine FQDN.
+ ///
+ [JsonProperty(PropertyName = "machineFqdn")]
+ public string MachineFqdn { get; private set; }
+
+ ///
+ /// Gets or sets public Key that the client provides to be used during
+ /// initial resource onboarding
+ ///
+ [JsonProperty(PropertyName = "clientPublicKey")]
+ public string ClientPublicKey { get; set; }
+
+ ///
+ /// Gets the Operating System running on the hybrid machine.
+ ///
+ [JsonProperty(PropertyName = "osName")]
+ public string OsName { get; private set; }
+
+ ///
+ /// Gets the version of Operating System running on the hybrid machine.
+ ///
+ [JsonProperty(PropertyName = "osVersion")]
+ public string OsVersion { get; private set; }
+
+ ///
+ /// Gets specifies the Arc Machine's unique SMBIOS ID
+ ///
+ [JsonProperty(PropertyName = "vmUuid")]
+ public string VmUuid { get; private set; }
+
+ ///
+ /// Gets machine Extensions information
+ ///
+ [JsonProperty(PropertyName = "extensions")]
+ public IList Extensions { get; private set; }
+
+ ///
+ /// Gets specifies the Operating System product SKU.
+ ///
+ [JsonProperty(PropertyName = "osSku")]
+ public string OsSku { get; private set; }
+
+ ///
+ /// Gets specifies the Windows domain name.
+ ///
+ [JsonProperty(PropertyName = "domainName")]
+ public string DomainName { get; private set; }
+
+ ///
+ /// Gets specifies the AD fully qualified display name.
+ ///
+ [JsonProperty(PropertyName = "adFqdn")]
+ public string AdFqdn { get; private set; }
+
+ ///
+ /// Gets specifies the DNS fully qualified display name.
+ ///
+ [JsonProperty(PropertyName = "dnsFqdn")]
+ public string DnsFqdn { get; private set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (LocationData != null)
+ {
+ LocationData.Validate();
+ }
+ if (ErrorDetails != null)
+ {
+ foreach (var element in ErrorDetails)
+ {
+ if (element != null)
+ {
+ element.Validate();
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachinePropertiesOsProfile.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachinePropertiesOsProfile.cs
new file mode 100644
index 0000000000000..4d30a35048e8e
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachinePropertiesOsProfile.cs
@@ -0,0 +1,45 @@
+//
+// 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.HybridCompute.Models
+{
+ using System.Linq;
+
+ ///
+ /// Specifies the operating system settings for the hybrid machine.
+ ///
+ public partial class MachinePropertiesOsProfile : OSProfile
+ {
+ ///
+ /// Initializes a new instance of the MachinePropertiesOsProfile class.
+ ///
+ public MachinePropertiesOsProfile()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachinePropertiesOsProfile class.
+ ///
+ /// Specifies the host OS name of the hybrid
+ /// machine.
+ public MachinePropertiesOsProfile(string computerName = default(string))
+ : base(computerName)
+ {
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdate.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdate.cs
new file mode 100644
index 0000000000000..83669962eba72
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdate.cs
@@ -0,0 +1,93 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Serialization;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Describes a hybrid machine Update.
+ ///
+ [Rest.Serialization.JsonTransformation]
+ public partial class MachineUpdate : UpdateResource
+ {
+ ///
+ /// Initializes a new instance of the MachineUpdate class.
+ ///
+ public MachineUpdate()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineUpdate class.
+ ///
+ /// Resource tags
+ /// The identity type.
+ /// The identity's principal id.
+ /// The identity's tenant id.
+ public MachineUpdate(IDictionary tags = default(IDictionary), string type = default(string), string principalId = default(string), string tenantId = default(string), LocationData locationData = default(LocationData))
+ : base(tags)
+ {
+ Type = type;
+ PrincipalId = principalId;
+ TenantId = tenantId;
+ LocationData = locationData;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the identity type.
+ ///
+ [JsonProperty(PropertyName = "identity.type")]
+ public string Type { get; set; }
+
+ ///
+ /// Gets the identity's principal id.
+ ///
+ [JsonProperty(PropertyName = "identity.principalId")]
+ public string PrincipalId { get; private set; }
+
+ ///
+ /// Gets the identity's tenant id.
+ ///
+ [JsonProperty(PropertyName = "identity.tenantId")]
+ public string TenantId { get; private set; }
+
+ ///
+ ///
+ [JsonProperty(PropertyName = "properties.locationData")]
+ public LocationData LocationData { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (LocationData != null)
+ {
+ LocationData.Validate();
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdateProperties.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdateProperties.cs
new file mode 100644
index 0000000000000..a7190c7156676
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/MachineUpdateProperties.cs
@@ -0,0 +1,62 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the ARM updatable properties of a hybrid machine.
+ ///
+ public partial class MachineUpdateProperties
+ {
+ ///
+ /// Initializes a new instance of the MachineUpdateProperties class.
+ ///
+ public MachineUpdateProperties()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the MachineUpdateProperties class.
+ ///
+ public MachineUpdateProperties(LocationData locationData = default(LocationData))
+ {
+ LocationData = locationData;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ ///
+ [JsonProperty(PropertyName = "locationData")]
+ public LocationData LocationData { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (LocationData != null)
+ {
+ LocationData.Validate();
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OSProfile.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OSProfile.cs
new file mode 100644
index 0000000000000..86faaf9937bf8
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OSProfile.cs
@@ -0,0 +1,52 @@
+//
+// 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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Specifies the operating system settings for the hybrid machine.
+ ///
+ public partial class OSProfile
+ {
+ ///
+ /// Initializes a new instance of the OSProfile class.
+ ///
+ public OSProfile()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the OSProfile class.
+ ///
+ /// Specifies the host OS name of the hybrid
+ /// machine.
+ public OSProfile(string computerName = default(string))
+ {
+ ComputerName = computerName;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets specifies the host OS name of the hybrid machine.
+ ///
+ [JsonProperty(PropertyName = "computerName")]
+ public string ComputerName { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValue.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValue.cs
new file mode 100644
index 0000000000000..6047bc57ec50b
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValue.cs
@@ -0,0 +1,97 @@
+//
+// 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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Serialization;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the properties of a Compute Operation value.
+ ///
+ [Rest.Serialization.JsonTransformation]
+ public partial class OperationValue
+ {
+ ///
+ /// Initializes a new instance of the OperationValue class.
+ ///
+ public OperationValue()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the OperationValue class.
+ ///
+ /// The origin of the compute operation.
+ /// The name of the compute operation.
+ /// The display name of the compute
+ /// operation.
+ /// The display name of the resource the
+ /// operation applies to.
+ /// The description of the operation.
+ /// The resource provider for the
+ /// operation.
+ public OperationValue(string origin = default(string), string name = default(string), string operation = default(string), string resource = default(string), string description = default(string), string provider = default(string))
+ {
+ Origin = origin;
+ Name = name;
+ Operation = operation;
+ Resource = resource;
+ Description = description;
+ Provider = provider;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the origin of the compute operation.
+ ///
+ [JsonProperty(PropertyName = "origin")]
+ public string Origin { get; private set; }
+
+ ///
+ /// Gets the name of the compute operation.
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; private set; }
+
+ ///
+ /// Gets the display name of the compute operation.
+ ///
+ [JsonProperty(PropertyName = "display.operation")]
+ public string Operation { get; private set; }
+
+ ///
+ /// Gets the display name of the resource the operation applies to.
+ ///
+ [JsonProperty(PropertyName = "display.resource")]
+ public string Resource { get; private set; }
+
+ ///
+ /// Gets the description of the operation.
+ ///
+ [JsonProperty(PropertyName = "display.description")]
+ public string Description { get; private set; }
+
+ ///
+ /// Gets the resource provider for the operation.
+ ///
+ [JsonProperty(PropertyName = "display.provider")]
+ public string Provider { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValueDisplayModel.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValueDisplayModel.cs
new file mode 100644
index 0000000000000..b2468a25ed98a
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/OperationValueDisplayModel.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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Describes the properties of a Hybrid Compute Operation Value Display.
+ ///
+ public partial class OperationValueDisplayModel
+ {
+ ///
+ /// Initializes a new instance of the OperationValueDisplayModel class.
+ ///
+ public OperationValueDisplayModel()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the OperationValueDisplayModel class.
+ ///
+ /// The display name of the compute
+ /// operation.
+ /// The display name of the resource the
+ /// operation applies to.
+ /// The description of the operation.
+ /// The resource provider for the
+ /// operation.
+ public OperationValueDisplayModel(string operation = default(string), string resource = default(string), string description = default(string), string provider = default(string))
+ {
+ Operation = operation;
+ Resource = resource;
+ Description = description;
+ Provider = provider;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the display name of the compute operation.
+ ///
+ [JsonProperty(PropertyName = "operation")]
+ public string Operation { get; private set; }
+
+ ///
+ /// Gets the display name of the resource the operation applies to.
+ ///
+ [JsonProperty(PropertyName = "resource")]
+ public string Resource { get; private set; }
+
+ ///
+ /// Gets the description of the operation.
+ ///
+ [JsonProperty(PropertyName = "description")]
+ public string Description { get; private set; }
+
+ ///
+ /// Gets the resource provider for the operation.
+ ///
+ [JsonProperty(PropertyName = "provider")]
+ public string Provider { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page.cs
new file mode 100644
index 0000000000000..57dd3271bae7a
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page.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.HybridCompute.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 Page : IPage
+ {
+ ///
+ /// Gets the link to the next page.
+ ///
+ [JsonProperty("nextLink")]
+ 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page1.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page1.cs
new file mode 100644
index 0000000000000..b802430363844
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Page1.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.HybridCompute.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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ProxyResource.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ProxyResource.cs
new file mode 100644
index 0000000000000..e815a1ef0fc4b
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/ProxyResource.cs
@@ -0,0 +1,50 @@
+//
+// 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.HybridCompute.Models
+{
+ using System.Linq;
+
+ ///
+ /// The resource model definition for a ARM proxy resource. It will have
+ /// everything other than required location and tags
+ ///
+ public partial class ProxyResource : Resource
+ {
+ ///
+ /// Initializes a new instance of the ProxyResource class.
+ ///
+ public ProxyResource()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ProxyResource class.
+ ///
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ public ProxyResource(string id = default(string), string name = default(string), string type = default(string))
+ : base(id, name, type)
+ {
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Resource.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Resource.cs
new file mode 100644
index 0000000000000..d6c77086c76c3
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/Resource.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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ public partial class Resource : IResource
+ {
+ ///
+ /// Initializes a new instance of the Resource class.
+ ///
+ public Resource()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the Resource class.
+ ///
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ public Resource(string id = default(string), string name = default(string), string type = default(string))
+ {
+ Id = id;
+ Name = name;
+ Type = type;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ ///
+ [JsonProperty(PropertyName = "id")]
+ public string Id { get; private set; }
+
+ ///
+ /// Gets the name of the resource
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; private set; }
+
+ ///
+ /// Gets the type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public string Type { get; private set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusLevelTypes.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusLevelTypes.cs
new file mode 100644
index 0000000000000..a0d4ed5281995
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusLevelTypes.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.HybridCompute.Models
+{
+
+ ///
+ /// Defines values for StatusLevelTypes.
+ ///
+ public static class StatusLevelTypes
+ {
+ public const string Info = "Info";
+ public const string Warning = "Warning";
+ public const string Error = "Error";
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusTypes.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusTypes.cs
new file mode 100644
index 0000000000000..9dac5f36244a7
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/StatusTypes.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.HybridCompute.Models
+{
+
+ ///
+ /// Defines values for StatusTypes.
+ ///
+ public static class StatusTypes
+ {
+ public const string Connected = "Connected";
+ public const string Disconnected = "Disconnected";
+ public const string Error = "Error";
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/TrackedResource.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/TrackedResource.cs
new file mode 100644
index 0000000000000..bec4b90f0c36d
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/TrackedResource.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.HybridCompute.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// The resource model definition for a ARM tracked top level resource
+ ///
+ public partial class TrackedResource : Resource
+ {
+ ///
+ /// Initializes a new instance of the TrackedResource class.
+ ///
+ public TrackedResource()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the TrackedResource class.
+ ///
+ /// The geo-location where the resource
+ /// lives
+ /// Fully qualified resource Id for the resource. Ex -
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ /// The name of the resource
+ /// The type of the resource. Ex-
+ /// Microsoft.Compute/virtualMachines or
+ /// Microsoft.Storage/storageAccounts.
+ /// Resource tags.
+ public TrackedResource(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary))
+ : base(id, name, type)
+ {
+ Tags = tags;
+ Location = location;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets resource tags.
+ ///
+ [JsonProperty(PropertyName = "tags")]
+ public IDictionary Tags { get; set; }
+
+ ///
+ /// Gets or sets the geo-location where the resource lives
+ ///
+ [JsonProperty(PropertyName = "location")]
+ public string Location { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (Location == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Location");
+ }
+ }
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/UpdateResource.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/UpdateResource.cs
new file mode 100644
index 0000000000000..677932fbb9fb5
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Models/UpdateResource.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.HybridCompute.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// The Update Resource model definition.
+ ///
+ public partial class UpdateResource
+ {
+ ///
+ /// Initializes a new instance of the UpdateResource class.
+ ///
+ public UpdateResource()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the UpdateResource class.
+ ///
+ /// Resource tags
+ public UpdateResource(IDictionary tags = default(IDictionary))
+ {
+ Tags = tags;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets resource tags
+ ///
+ [JsonProperty(PropertyName = "tags")]
+ public IDictionary Tags { get; set; }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Operations.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Operations.cs
new file mode 100644
index 0000000000000..1bc16323117f1
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/Operations.cs
@@ -0,0 +1,222 @@
+//
+// 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.HybridCompute
+{
+ 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;
+
+ ///
+ /// Operations operations.
+ ///
+ internal partial class Operations : IServiceOperations, IOperations
+ {
+ ///
+ /// Initializes a new instance of the Operations class.
+ ///
+ ///
+ /// Reference to the service client.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ internal Operations(HybridComputeManagementClient client)
+ {
+ if (client == null)
+ {
+ throw new System.ArgumentNullException("client");
+ }
+ Client = client;
+ }
+
+ ///
+ /// Gets a reference to the HybridComputeManagementClient
+ ///
+ public HybridComputeManagementClient Client { get; private set; }
+
+ ///
+ /// Gets a list of hybrid compute operations.
+ ///
+ ///
+ /// 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.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("/") ? "" : "/")), "providers/Microsoft.HybridCompute/operations").ToString();
+ 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 ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ ErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ 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/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/OperationsExtensions.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/OperationsExtensions.cs
new file mode 100644
index 0000000000000..50f056c428eb8
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/OperationsExtensions.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.HybridCompute
+{
+ 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 Operations.
+ ///
+ public static partial class OperationsExtensions
+ {
+ ///
+ /// Gets a list of hybrid compute operations.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ public static IEnumerable List(this IOperations operations)
+ {
+ return operations.ListAsync().GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Gets a list of hybrid compute operations.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListAsync(this IOperations operations, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ }
+}
diff --git a/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/SdkInfo_HybridComputeManagementClient.cs b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/SdkInfo_HybridComputeManagementClient.cs
new file mode 100644
index 0000000000000..543eabb950dae
--- /dev/null
+++ b/sdk/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated/SdkInfo_HybridComputeManagementClient.cs
@@ -0,0 +1,29 @@
+
+//
+// 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.HybridCompute
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ internal static partial class SdkInfo
+ {
+ public static IEnumerable> ApiInfo_HybridComputeManagementClient
+ {
+ get
+ {
+ return new Tuple[]
+ {
+ new Tuple("HybridCompute", "MachineExtensions", "2020-08-02"),
+ new Tuple("HybridCompute", "Machines", "2020-08-02"),
+ new Tuple("HybridCompute", "Operations", "2020-08-02"),
+ }.AsEnumerable();
+ }
+ }
+ }
+}