diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/ApiCompatBaseline.txt b/sdk/netapp/Azure.ResourceManager.NetApp/src/ApiCompatBaseline.txt
deleted file mode 100644
index cd874c37b840..000000000000
--- a/sdk/netapp/Azure.ResourceManager.NetApp/src/ApiCompatBaseline.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-# Baselining these as they are not actual compat issues.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumeBackupConfiguration..ctor()' in the contract but not the implementation.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumeBackupConfiguration.BackupPolicyId' in the contract but not the implementation.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumeBackupStatus' in the contract but not the implementation.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumeDataProtection.Backup' in the contract but not the implementation.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumePatchDataProtection.Backup' in the contract but not the implementation.
-CannotRemoveAttribute : Attribute 'System.ComponentModel.EditorBrowsableAttribute' exists on 'Azure.ResourceManager.NetApp.Models.NetAppVolumePatch.DataProtection' in the contract but not the implementation.
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllAsyncCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllAsyncCollectionResultOfT.cs
new file mode 100644
index 000000000000..11ad027da0b4
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllAsyncCollectionResultOfT.cs
@@ -0,0 +1,85 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class AccountsGetAllAsyncCollectionResultOfT : AsyncPageable
+ {
+ private readonly Accounts _client;
+ private readonly Guid _subscriptionId;
+ private readonly string _resourceGroupName;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of AccountsGetAllAsyncCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The Accounts client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The name of the resource group. The name is case insensitive.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public AccountsGetAllAsyncCollectionResultOfT(Accounts client, Guid subscriptionId, string resourceGroupName, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ Argument.AssertNotNullOrEmpty(resourceGroupName, nameof(resourceGroupName));
+
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _resourceGroupName = resourceGroupName;
+ _context = context;
+ }
+
+ /// Gets the pages of AccountsGetAllAsyncCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of AccountsGetAllAsyncCollectionResultOfT as an enumerable collection.
+ public override async IAsyncEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = await GetNextResponseAsync(pageSizeHint, nextPage).ConfigureAwait(false);
+ if (response is null)
+ {
+ yield break;
+ }
+ NetAppAccountList result = NetAppAccountList.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private async ValueTask GetNextResponseAsync(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetAllRequest(nextLink, _subscriptionId, _resourceGroupName, _context) : _client.CreateGetAllRequest(_subscriptionId, _resourceGroupName, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("NetAppAccountCollection.GetAll");
+ scope.Start();
+ try
+ {
+ return await _client.Pipeline.ProcessMessageAsync(message, _context).ConfigureAwait(false);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllCollectionResultOfT.cs
new file mode 100644
index 000000000000..ed875f6d1fdb
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetAllCollectionResultOfT.cs
@@ -0,0 +1,84 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class AccountsGetAllCollectionResultOfT : Pageable
+ {
+ private readonly Accounts _client;
+ private readonly Guid _subscriptionId;
+ private readonly string _resourceGroupName;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of AccountsGetAllCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The Accounts client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The name of the resource group. The name is case insensitive.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public AccountsGetAllCollectionResultOfT(Accounts client, Guid subscriptionId, string resourceGroupName, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ Argument.AssertNotNullOrEmpty(resourceGroupName, nameof(resourceGroupName));
+
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _resourceGroupName = resourceGroupName;
+ _context = context;
+ }
+
+ /// Gets the pages of AccountsGetAllCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of AccountsGetAllCollectionResultOfT as an enumerable collection.
+ public override IEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = GetNextResponse(pageSizeHint, nextPage);
+ if (response is null)
+ {
+ yield break;
+ }
+ NetAppAccountList result = NetAppAccountList.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private Response GetNextResponse(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetAllRequest(nextLink, _subscriptionId, _resourceGroupName, _context) : _client.CreateGetAllRequest(_subscriptionId, _resourceGroupName, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("NetAppAccountCollection.GetAll");
+ scope.Start();
+ try
+ {
+ return _client.Pipeline.ProcessMessage(message, _context);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionAsyncCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionAsyncCollectionResultOfT.cs
new file mode 100644
index 000000000000..451936848883
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionAsyncCollectionResultOfT.cs
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class AccountsGetBySubscriptionAsyncCollectionResultOfT : AsyncPageable
+ {
+ private readonly Accounts _client;
+ private readonly Guid _subscriptionId;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of AccountsGetBySubscriptionAsyncCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The Accounts client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ public AccountsGetBySubscriptionAsyncCollectionResultOfT(Accounts client, Guid subscriptionId, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _context = context;
+ }
+
+ /// Gets the pages of AccountsGetBySubscriptionAsyncCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of AccountsGetBySubscriptionAsyncCollectionResultOfT as an enumerable collection.
+ public override async IAsyncEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = await GetNextResponseAsync(pageSizeHint, nextPage).ConfigureAwait(false);
+ if (response is null)
+ {
+ yield break;
+ }
+ NetAppAccountList result = NetAppAccountList.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private async ValueTask GetNextResponseAsync(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetBySubscriptionRequest(nextLink, _subscriptionId, _context) : _client.CreateGetBySubscriptionRequest(_subscriptionId, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("MockableNetAppSubscriptionResource.GetNetAppAccounts");
+ scope.Start();
+ try
+ {
+ return await _client.Pipeline.ProcessMessageAsync(message, _context).ConfigureAwait(false);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionCollectionResultOfT.cs
new file mode 100644
index 000000000000..8ba26d09c259
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/AccountsGetBySubscriptionCollectionResultOfT.cs
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class AccountsGetBySubscriptionCollectionResultOfT : Pageable
+ {
+ private readonly Accounts _client;
+ private readonly Guid _subscriptionId;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of AccountsGetBySubscriptionCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The Accounts client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ public AccountsGetBySubscriptionCollectionResultOfT(Accounts client, Guid subscriptionId, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _context = context;
+ }
+
+ /// Gets the pages of AccountsGetBySubscriptionCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of AccountsGetBySubscriptionCollectionResultOfT as an enumerable collection.
+ public override IEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = GetNextResponse(pageSizeHint, nextPage);
+ if (response is null)
+ {
+ yield break;
+ }
+ NetAppAccountList result = NetAppAccountList.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private Response GetNextResponse(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetBySubscriptionRequest(nextLink, _subscriptionId, _context) : _client.CreateGetBySubscriptionRequest(_subscriptionId, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("MockableNetAppSubscriptionResource.GetNetAppAccounts");
+ scope.Start();
+ try
+ {
+ return _client.Pipeline.ProcessMessage(message, _context);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigCollection.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigCollection.cs
new file mode 100644
index 000000000000..b23a9db28abb
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigCollection.cs
@@ -0,0 +1,548 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Threading;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Resources;
+
+namespace Azure.ResourceManager.NetApp
+{
+ ///
+ /// A class representing a collection of and their operations.
+ /// Each in the collection will belong to the same instance of a parent resource (TODO: add parent resource information).
+ /// To get a instance call the GetActiveDirectoryConfigs method from an instance of the parent resource.
+ ///
+ public partial class ActiveDirectoryConfigCollection : ArmCollection, IEnumerable, IAsyncEnumerable
+ {
+ private readonly ClientDiagnostics _activeDirectoryConfigsClientDiagnostics;
+ private readonly ActiveDirectoryConfigs _activeDirectoryConfigsRestClient;
+
+ /// Initializes a new instance of ActiveDirectoryConfigCollection for mocking.
+ protected ActiveDirectoryConfigCollection()
+ {
+ }
+
+ /// Initializes a new instance of class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the resource that is the target of operations.
+ internal ActiveDirectoryConfigCollection(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ TryGetApiVersion(ActiveDirectoryConfigResource.ResourceType, out string activeDirectoryConfigApiVersion);
+ _activeDirectoryConfigsClientDiagnostics = new ClientDiagnostics("Azure.ResourceManager.NetApp", ActiveDirectoryConfigResource.ResourceType.Namespace, Diagnostics);
+ _activeDirectoryConfigsRestClient = new ActiveDirectoryConfigs(_activeDirectoryConfigsClientDiagnostics, Pipeline, Endpoint, activeDirectoryConfigApiVersion ?? "2025-09-01-preview");
+ ValidateResourceId(id);
+ }
+
+ ///
+ [Conditional("DEBUG")]
+ internal static void ValidateResourceId(ResourceIdentifier id)
+ {
+ if (id.ResourceType != ResourceGroupResource.ResourceType)
+ {
+ throw new ArgumentException(string.Format("Invalid resource type {0} expected {1}", id.ResourceType, ResourceGroupResource.ResourceType), id);
+ }
+ }
+
+ ///
+ /// Create or update the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_CreateOrUpdate.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The name of the NetAppAccount.
+ /// Resource create parameters.
+ /// The cancellation token to use.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual async Task> CreateOrUpdateAsync(WaitUntil waitUntil, string activeDirectoryConfigName, ActiveDirectoryConfigData data, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+ Argument.AssertNotNull(data, nameof(data));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.CreateOrUpdate");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateCreateOrUpdateRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, ActiveDirectoryConfigData.ToRequestContent(data), context);
+ Response response = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ NetAppArmOperation operation = new NetAppArmOperation(
+ new ActiveDirectoryConfigOperationSource(Client),
+ _activeDirectoryConfigsClientDiagnostics,
+ Pipeline,
+ message.Request,
+ response,
+ OperationFinalStateVia.AzureAsyncOperation);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ await operation.WaitForCompletionAsync(cancellationToken).ConfigureAwait(false);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Create or update the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_CreateOrUpdate.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The name of the NetAppAccount.
+ /// Resource create parameters.
+ /// The cancellation token to use.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual ArmOperation CreateOrUpdate(WaitUntil waitUntil, string activeDirectoryConfigName, ActiveDirectoryConfigData data, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+ Argument.AssertNotNull(data, nameof(data));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.CreateOrUpdate");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateCreateOrUpdateRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, ActiveDirectoryConfigData.ToRequestContent(data), context);
+ Response response = Pipeline.ProcessMessage(message, context);
+ NetAppArmOperation operation = new NetAppArmOperation(
+ new ActiveDirectoryConfigOperationSource(Client),
+ _activeDirectoryConfigsClientDiagnostics,
+ Pipeline,
+ message.Request,
+ response,
+ OperationFinalStateVia.AzureAsyncOperation);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ operation.WaitForCompletion(cancellationToken);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual async Task> GetAsync(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.Get");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ Response result = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ if (response.Value == null)
+ {
+ throw new RequestFailedException(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual Response Get(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.Get");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ Response result = Pipeline.ProcessMessage(message, context);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ if (response.Value == null)
+ {
+ throw new RequestFailedException(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// List all active directory configurations within the resource group.
+ /// The cancellation token to use.
+ /// A collection of that may take multiple service requests to iterate over.
+ public virtual AsyncPageable GetAllAsync(CancellationToken cancellationToken = default)
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ return new AsyncPageableWrapper(new ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT(_activeDirectoryConfigsRestClient, Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, context), data => new ActiveDirectoryConfigResource(Client, data));
+ }
+
+ /// List all active directory configurations within the resource group.
+ /// The cancellation token to use.
+ /// A collection of that may take multiple service requests to iterate over.
+ public virtual Pageable GetAll(CancellationToken cancellationToken = default)
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ return new PageableWrapper(new ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT(_activeDirectoryConfigsRestClient, Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, context), data => new ActiveDirectoryConfigResource(Client, data));
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual async Task> ExistsAsync(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.Exists");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ await Pipeline.SendAsync(message, context.CancellationToken).ConfigureAwait(false);
+ Response result = message.Response;
+ Response response = default;
+ switch (result.Status)
+ {
+ case 200:
+ response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ break;
+ case 404:
+ response = Response.FromValue((ActiveDirectoryConfigData)null, result);
+ break;
+ default:
+ throw new RequestFailedException(result);
+ }
+ return Response.FromValue(response.Value != null, response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual Response Exists(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.Exists");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ Pipeline.Send(message, context.CancellationToken);
+ Response result = message.Response;
+ Response response = default;
+ switch (result.Status)
+ {
+ case 200:
+ response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ break;
+ case 404:
+ response = Response.FromValue((ActiveDirectoryConfigData)null, result);
+ break;
+ default:
+ throw new RequestFailedException(result);
+ }
+ return Response.FromValue(response.Value != null, response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual async Task> GetIfExistsAsync(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.GetIfExists");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ await Pipeline.SendAsync(message, context.CancellationToken).ConfigureAwait(false);
+ Response result = message.Response;
+ Response response = default;
+ switch (result.Status)
+ {
+ case 200:
+ response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ break;
+ case 404:
+ response = Response.FromValue((ActiveDirectoryConfigData)null, result);
+ break;
+ default:
+ throw new RequestFailedException(result);
+ }
+ if (response.Value == null)
+ {
+ return new NoValueResponse(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ ///
+ ///
+ /// The name of the NetAppAccount.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public virtual NullableResponse GetIfExists(string activeDirectoryConfigName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(activeDirectoryConfigName, nameof(activeDirectoryConfigName));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.GetIfExists");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, activeDirectoryConfigName, context);
+ Pipeline.Send(message, context.CancellationToken);
+ Response result = message.Response;
+ Response response = default;
+ switch (result.Status)
+ {
+ case 200:
+ response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ break;
+ case 404:
+ response = Response.FromValue((ActiveDirectoryConfigData)null, result);
+ break;
+ default:
+ throw new RequestFailedException(result);
+ }
+ if (response.Value == null)
+ {
+ return new NoValueResponse(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetAll().GetEnumerator();
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetAll().GetEnumerator();
+ }
+
+ /// The cancellation token to use.
+ IAsyncEnumerator IAsyncEnumerable.GetAsyncEnumerator(CancellationToken cancellationToken)
+ {
+ return GetAllAsync(cancellationToken: cancellationToken).GetAsyncEnumerator(cancellationToken);
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.Serialization.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.Serialization.cs
new file mode 100644
index 000000000000..b4a18a75c46b
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.Serialization.cs
@@ -0,0 +1,260 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.ClientModel.Primitives;
+using System.Collections.Generic;
+using System.Text;
+using System.Text.Json;
+using Azure;
+using Azure.Core;
+using Azure.ResourceManager.Models;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ /// Active Directory Configuration resource.
+ public partial class ActiveDirectoryConfigData : TrackedResourceData, IJsonModel
+ {
+ /// Initializes a new instance of for deserialization.
+ internal ActiveDirectoryConfigData()
+ {
+ }
+
+ /// The JSON writer.
+ /// The client options for reading and writing models.
+ void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options)
+ {
+ writer.WriteStartObject();
+ JsonModelWriteCore(writer, options);
+ writer.WriteEndObject();
+ }
+
+ /// The JSON writer.
+ /// The client options for reading and writing models.
+ protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options)
+ {
+ string format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ if (format != "J")
+ {
+ throw new FormatException($"The model {nameof(ActiveDirectoryConfigData)} does not support writing '{format}' format.");
+ }
+ base.JsonModelWriteCore(writer, options);
+ if (Optional.IsDefined(Properties))
+ {
+ writer.WritePropertyName("properties"u8);
+ writer.WriteObjectValue(Properties, options);
+ }
+ if (options.Format != "W" && Optional.IsDefined(ETag))
+ {
+ writer.WritePropertyName("etag"u8);
+ writer.WriteStringValue(ETag);
+ }
+ if (Optional.IsDefined(Identity))
+ {
+ writer.WritePropertyName("identity"u8);
+ ((IJsonModel)Identity).Write(writer, options);
+ }
+ }
+
+ /// The JSON reader.
+ /// The client options for reading and writing models.
+ ActiveDirectoryConfigData IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options) => (ActiveDirectoryConfigData)JsonModelCreateCore(ref reader, options);
+
+ /// The JSON reader.
+ /// The client options for reading and writing models.
+ protected virtual ResourceData JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options)
+ {
+ string format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ if (format != "J")
+ {
+ throw new FormatException($"The model {nameof(ActiveDirectoryConfigData)} does not support reading '{format}' format.");
+ }
+ using JsonDocument document = JsonDocument.ParseValue(ref reader);
+ return DeserializeActiveDirectoryConfigData(document.RootElement, options);
+ }
+
+ /// The JSON element to deserialize.
+ /// The client options for reading and writing models.
+ internal static ActiveDirectoryConfigData DeserializeActiveDirectoryConfigData(JsonElement element, ModelReaderWriterOptions options)
+ {
+ if (element.ValueKind == JsonValueKind.Null)
+ {
+ return null;
+ }
+ ResourceIdentifier id = default;
+ string name = default;
+ ResourceType resourceType = default;
+ SystemData systemData = default;
+ IDictionary additionalBinaryDataProperties = new ChangeTrackingDictionary();
+ IDictionary tags = default;
+ AzureLocation location = default;
+ ActiveDirectoryConfigProperties properties = default;
+ string eTag = default;
+ ManagedServiceIdentity identity = default;
+ foreach (var prop in element.EnumerateObject())
+ {
+ if (prop.NameEquals("id"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ id = new ResourceIdentifier(prop.Value.GetString());
+ continue;
+ }
+ if (prop.NameEquals("name"u8))
+ {
+ name = prop.Value.GetString();
+ continue;
+ }
+ if (prop.NameEquals("type"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ resourceType = new ResourceType(prop.Value.GetString());
+ continue;
+ }
+ if (prop.NameEquals("systemData"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ systemData = ModelReaderWriter.Read(new BinaryData(Encoding.UTF8.GetBytes(prop.Value.GetRawText())), ModelSerializationExtensions.WireOptions, AzureResourceManagerNetAppContext.Default);
+ continue;
+ }
+ if (prop.NameEquals("tags"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ Dictionary dictionary = new Dictionary();
+ foreach (var prop0 in prop.Value.EnumerateObject())
+ {
+ if (prop0.Value.ValueKind == JsonValueKind.Null)
+ {
+ dictionary.Add(prop0.Name, null);
+ }
+ else
+ {
+ dictionary.Add(prop0.Name, prop0.Value.GetString());
+ }
+ }
+ tags = dictionary;
+ continue;
+ }
+ if (prop.NameEquals("location"u8))
+ {
+ location = new AzureLocation(prop.Value.GetString());
+ continue;
+ }
+ if (prop.NameEquals("properties"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ properties = ActiveDirectoryConfigProperties.DeserializeActiveDirectoryConfigProperties(prop.Value, options);
+ continue;
+ }
+ if (prop.NameEquals("etag"u8))
+ {
+ eTag = prop.Value.GetString();
+ continue;
+ }
+ if (prop.NameEquals("identity"u8))
+ {
+ if (prop.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ identity = ModelReaderWriter.Read(new BinaryData(Encoding.UTF8.GetBytes(prop.Value.GetRawText())), ModelSerializationExtensions.WireOptions, AzureResourceManagerNetAppContext.Default);
+ continue;
+ }
+ if (options.Format != "W")
+ {
+ additionalBinaryDataProperties.Add(prop.Name, BinaryData.FromString(prop.Value.GetRawText()));
+ }
+ }
+ return new ActiveDirectoryConfigData(
+ id,
+ name,
+ resourceType,
+ systemData,
+ additionalBinaryDataProperties,
+ tags ?? new ChangeTrackingDictionary(),
+ location,
+ properties,
+ eTag,
+ identity);
+ }
+
+ /// The client options for reading and writing models.
+ BinaryData IPersistableModel.Write(ModelReaderWriterOptions options) => PersistableModelWriteCore(options);
+
+ /// The client options for reading and writing models.
+ protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options)
+ {
+ string format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ switch (format)
+ {
+ case "J":
+ return ModelReaderWriter.Write(this, options, AzureResourceManagerNetAppContext.Default);
+ default:
+ throw new FormatException($"The model {nameof(ActiveDirectoryConfigData)} does not support writing '{options.Format}' format.");
+ }
+ }
+
+ /// The data to parse.
+ /// The client options for reading and writing models.
+ ActiveDirectoryConfigData IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options) => (ActiveDirectoryConfigData)PersistableModelCreateCore(data, options);
+
+ /// The data to parse.
+ /// The client options for reading and writing models.
+ protected virtual ResourceData PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options)
+ {
+ string format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ switch (format)
+ {
+ case "J":
+ using (JsonDocument document = JsonDocument.Parse(data))
+ {
+ return DeserializeActiveDirectoryConfigData(document.RootElement, options);
+ }
+ default:
+ throw new FormatException($"The model {nameof(ActiveDirectoryConfigData)} does not support reading '{options.Format}' format.");
+ }
+ }
+
+ /// The client options for reading and writing models.
+ string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options) => "J";
+
+ /// The to serialize into .
+ internal static RequestContent ToRequestContent(ActiveDirectoryConfigData activeDirectoryConfigData)
+ {
+ if (activeDirectoryConfigData == null)
+ {
+ return null;
+ }
+ Utf8JsonRequestContent content = new Utf8JsonRequestContent();
+ content.JsonWriter.WriteObjectValue(activeDirectoryConfigData, ModelSerializationExtensions.WireOptions);
+ return content;
+ }
+
+ /// The to deserialize the from.
+ internal static ActiveDirectoryConfigData FromResponse(Response result)
+ {
+ using Response response = result;
+ using JsonDocument document = JsonDocument.Parse(response.Content);
+ return DeserializeActiveDirectoryConfigData(document.RootElement, ModelSerializationExtensions.WireOptions);
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.cs
new file mode 100644
index 000000000000..e1cfb36d9e6c
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigData.cs
@@ -0,0 +1,56 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using Azure.Core;
+using Azure.ResourceManager.Models;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ /// Active Directory Configuration resource.
+ public partial class ActiveDirectoryConfigData : TrackedResourceData
+ {
+ /// Keeps track of any properties unknown to the library.
+ private protected readonly IDictionary _additionalBinaryDataProperties;
+
+ /// Initializes a new instance of .
+ /// The geo-location where the resource lives.
+ public ActiveDirectoryConfigData(AzureLocation location) : base(location)
+ {
+ }
+
+ /// Initializes a new instance of .
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ /// Keeps track of any properties unknown to the library.
+ /// Resource tags.
+ /// The geo-location where the resource lives.
+ /// The resource-specific properties for this resource.
+ /// "If etag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.").
+ /// The managed service identities assigned to this resource.
+ internal ActiveDirectoryConfigData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IDictionary additionalBinaryDataProperties, IDictionary tags, AzureLocation location, ActiveDirectoryConfigProperties properties, string eTag, ManagedServiceIdentity identity) : base(id, name, resourceType, systemData, tags, location)
+ {
+ _additionalBinaryDataProperties = additionalBinaryDataProperties;
+ Properties = properties;
+ ETag = eTag;
+ Identity = identity;
+ }
+
+ /// The resource-specific properties for this resource.
+ public ActiveDirectoryConfigProperties Properties { get; set; }
+
+ /// "If etag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.").
+ public string ETag { get; }
+
+ /// The managed service identities assigned to this resource.
+ public ManagedServiceIdentity Identity { get; set; }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.Serialization.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.Serialization.cs
new file mode 100644
index 000000000000..e450e08eea09
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.Serialization.cs
@@ -0,0 +1,39 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.ClientModel.Primitives;
+using System.Text.Json;
+
+namespace Azure.ResourceManager.NetApp
+{
+ ///
+ public partial class ActiveDirectoryConfigResource : IJsonModel
+ {
+ private static IJsonModel s_dataDeserializationInstance;
+
+ private static IJsonModel DataDeserializationInstance => s_dataDeserializationInstance ??= new ActiveDirectoryConfigData();
+
+ /// The writer to serialize the model to.
+ /// The client options for reading and writing models.
+ void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options) => ((IJsonModel)Data).Write(writer, options);
+
+ /// The reader for deserializing the model.
+ /// The client options for reading and writing models.
+ ActiveDirectoryConfigData IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options) => DataDeserializationInstance.Create(ref reader, options);
+
+ /// The client options for reading and writing models.
+ BinaryData IPersistableModel.Write(ModelReaderWriterOptions options) => ModelReaderWriter.Write(Data, options, AzureResourceManagerNetAppContext.Default);
+
+ /// The binary data to be processed.
+ /// The client options for reading and writing models.
+ ActiveDirectoryConfigData IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options) => ModelReaderWriter.Read(data, options, AzureResourceManagerNetAppContext.Default);
+
+ /// The client options for reading and writing models.
+ string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options) => DataDeserializationInstance.GetFormatFromOptions(options);
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.cs
new file mode 100644
index 000000000000..9d64068e3f6d
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigResource.cs
@@ -0,0 +1,682 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Threading;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager;
+using Azure.ResourceManager.NetApp.Models;
+using Azure.ResourceManager.Resources;
+
+namespace Azure.ResourceManager.NetApp
+{
+ ///
+ /// A class representing a ActiveDirectoryConfig along with the instance operations that can be performed on it.
+ /// If you have a you can construct a from an instance of using the GetResource method.
+ /// Otherwise you can get one from its parent resource using the GetActiveDirectoryConfigs method.
+ ///
+ public partial class ActiveDirectoryConfigResource : ArmResource
+ {
+ private readonly ClientDiagnostics _activeDirectoryConfigsClientDiagnostics;
+ private readonly ActiveDirectoryConfigs _activeDirectoryConfigsRestClient;
+ private readonly ActiveDirectoryConfigData _data;
+ /// Gets the resource type for the operations.
+ public static readonly ResourceType ResourceType = "Microsoft.NetApp/activeDirectoryConfigs";
+
+ /// Initializes a new instance of ActiveDirectoryConfigResource for mocking.
+ protected ActiveDirectoryConfigResource()
+ {
+ }
+
+ /// Initializes a new instance of class.
+ /// The client parameters to use in these operations.
+ /// The resource that is the target of operations.
+ internal ActiveDirectoryConfigResource(ArmClient client, ActiveDirectoryConfigData data) : this(client, data.Id)
+ {
+ HasData = true;
+ _data = data;
+ }
+
+ /// Initializes a new instance of class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the resource that is the target of operations.
+ internal ActiveDirectoryConfigResource(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ TryGetApiVersion(ResourceType, out string activeDirectoryConfigApiVersion);
+ _activeDirectoryConfigsClientDiagnostics = new ClientDiagnostics("Azure.ResourceManager.NetApp", ResourceType.Namespace, Diagnostics);
+ _activeDirectoryConfigsRestClient = new ActiveDirectoryConfigs(_activeDirectoryConfigsClientDiagnostics, Pipeline, Endpoint, activeDirectoryConfigApiVersion ?? "2025-09-01-preview");
+ ValidateResourceId(id);
+ }
+
+ /// Gets whether or not the current instance has data.
+ public virtual bool HasData { get; }
+
+ /// Gets the data representing this Feature.
+ public virtual ActiveDirectoryConfigData Data
+ {
+ get
+ {
+ if (!HasData)
+ {
+ throw new InvalidOperationException("The current instance does not have data, you must call Get first.");
+ }
+ return _data;
+ }
+ }
+
+ /// Generate the resource identifier for this resource.
+ /// The subscriptionId.
+ /// The resourceGroupName.
+ /// The activeDirectoryConfigName.
+ public static ResourceIdentifier CreateResourceIdentifier(string subscriptionId, string resourceGroupName, string activeDirectoryConfigName)
+ {
+ string resourceId = $"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}";
+ return new ResourceIdentifier(resourceId);
+ }
+
+ ///
+ [Conditional("DEBUG")]
+ internal static void ValidateResourceId(ResourceIdentifier id)
+ {
+ if (id.ResourceType != ResourceType)
+ {
+ throw new ArgumentException(string.Format("Invalid resource type {0} expected {1}", id.ResourceType, ResourceType), id);
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// The cancellation token to use.
+ public virtual async Task> GetAsync(CancellationToken cancellationToken = default)
+ {
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Get");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ if (response.Value == null)
+ {
+ throw new RequestFailedException(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get the details of the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Get.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// The cancellation token to use.
+ public virtual Response Get(CancellationToken cancellationToken = default)
+ {
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Get");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = Pipeline.ProcessMessage(message, context);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ if (response.Value == null)
+ {
+ throw new RequestFailedException(response.GetRawResponse());
+ }
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Patch the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Update.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The resource properties to be updated.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual async Task> UpdateAsync(WaitUntil waitUntil, ActiveDirectoryConfigPatch patch, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(patch, nameof(patch));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Update");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateUpdateRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, ActiveDirectoryConfigPatch.ToRequestContent(patch), context);
+ Response response = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ NetAppArmOperation operation = new NetAppArmOperation(
+ new ActiveDirectoryConfigOperationSource(Client),
+ _activeDirectoryConfigsClientDiagnostics,
+ Pipeline,
+ message.Request,
+ response,
+ OperationFinalStateVia.Location);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ await operation.WaitForCompletionAsync(cancellationToken).ConfigureAwait(false);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Patch the specified active directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Update.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The resource properties to be updated.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual ArmOperation Update(WaitUntil waitUntil, ActiveDirectoryConfigPatch patch, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(patch, nameof(patch));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Update");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateUpdateRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, ActiveDirectoryConfigPatch.ToRequestContent(patch), context);
+ Response response = Pipeline.ProcessMessage(message, context);
+ NetAppArmOperation operation = new NetAppArmOperation(
+ new ActiveDirectoryConfigOperationSource(Client),
+ _activeDirectoryConfigsClientDiagnostics,
+ Pipeline,
+ message.Request,
+ response,
+ OperationFinalStateVia.Location);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ operation.WaitForCompletion(cancellationToken);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Delete the specified Active Directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Delete.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The cancellation token to use.
+ public virtual async Task DeleteAsync(WaitUntil waitUntil, CancellationToken cancellationToken = default)
+ {
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Delete");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateDeleteRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response response = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ NetAppArmOperation operation = new NetAppArmOperation(_activeDirectoryConfigsClientDiagnostics, Pipeline, message.Request, response, OperationFinalStateVia.Location);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ await operation.WaitForCompletionResponseAsync(cancellationToken).ConfigureAwait(false);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Delete the specified Active Directory configuration
+ ///
+ /// -
+ /// Request Path.
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/activeDirectoryConfigs/{activeDirectoryConfigName}.
+ ///
+ /// -
+ /// Operation Id.
+ /// ActiveDirectoryConfigs_Delete.
+ ///
+ /// -
+ /// Default Api Version.
+ /// 2025-09-01-preview.
+ ///
+ /// -
+ /// Resource.
+ /// .
+ ///
+ ///
+ ///
+ /// if the method should wait to return until the long-running operation has completed on the service; if it should return after starting the operation. For more information on long-running operations, please see Azure.Core Long-Running Operation samples.
+ /// The cancellation token to use.
+ public virtual ArmOperation Delete(WaitUntil waitUntil, CancellationToken cancellationToken = default)
+ {
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.Delete");
+ scope.Start();
+ try
+ {
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateDeleteRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response response = Pipeline.ProcessMessage(message, context);
+ NetAppArmOperation operation = new NetAppArmOperation(_activeDirectoryConfigsClientDiagnostics, Pipeline, message.Request, response, OperationFinalStateVia.Location);
+ if (waitUntil == WaitUntil.Completed)
+ {
+ operation.WaitForCompletionResponse(cancellationToken);
+ }
+ return operation;
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Add a tag to the current resource.
+ /// The key for the tag.
+ /// The value for the tag.
+ /// The cancellation token to use.
+ /// or is null.
+ public virtual async Task> AddTagAsync(string key, string value, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(key, nameof(key));
+ Argument.AssertNotNull(value, nameof(value));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.AddTag");
+ scope.Start();
+ try
+ {
+ if (await CanUseTagResourceAsync(cancellationToken).ConfigureAwait(false))
+ {
+ Response originalTags = await GetTagResource().GetAsync(cancellationToken).ConfigureAwait(false);
+ originalTags.Value.Data.TagValues[key] = value;
+ await GetTagResource().CreateOrUpdateAsync(WaitUntil.Completed, originalTags.Value.Data, cancellationToken).ConfigureAwait(false);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = (await GetAsync(cancellationToken: cancellationToken).ConfigureAwait(false)).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ foreach (KeyValuePair tag in current.Tags)
+ {
+ patch.Tags.Add(tag);
+ }
+ patch.Tags[key] = value;
+ ArmOperation result = await UpdateAsync(WaitUntil.Completed, patch, cancellationToken).ConfigureAwait(false);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Add a tag to the current resource.
+ /// The key for the tag.
+ /// The value for the tag.
+ /// The cancellation token to use.
+ /// or is null.
+ public virtual Response AddTag(string key, string value, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(key, nameof(key));
+ Argument.AssertNotNull(value, nameof(value));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.AddTag");
+ scope.Start();
+ try
+ {
+ if (CanUseTagResource(cancellationToken))
+ {
+ Response originalTags = GetTagResource().Get(cancellationToken);
+ originalTags.Value.Data.TagValues[key] = value;
+ GetTagResource().CreateOrUpdate(WaitUntil.Completed, originalTags.Value.Data, cancellationToken);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = Pipeline.ProcessMessage(message, context);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = Get(cancellationToken: cancellationToken).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ foreach (KeyValuePair tag in current.Tags)
+ {
+ patch.Tags.Add(tag);
+ }
+ patch.Tags[key] = value;
+ ArmOperation result = Update(WaitUntil.Completed, patch, cancellationToken);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Replace the tags on the resource with the given set.
+ /// The tags to set on the resource.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual async Task> SetTagsAsync(IDictionary tags, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(tags, nameof(tags));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.SetTags");
+ scope.Start();
+ try
+ {
+ if (await CanUseTagResourceAsync(cancellationToken).ConfigureAwait(false))
+ {
+ await GetTagResource().DeleteAsync(WaitUntil.Completed, cancellationToken).ConfigureAwait(false);
+ Response originalTags = await GetTagResource().GetAsync(cancellationToken).ConfigureAwait(false);
+ originalTags.Value.Data.TagValues.ReplaceWith(tags);
+ await GetTagResource().CreateOrUpdateAsync(WaitUntil.Completed, originalTags.Value.Data, cancellationToken).ConfigureAwait(false);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = (await GetAsync(cancellationToken: cancellationToken).ConfigureAwait(false)).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ patch.Tags.ReplaceWith(tags);
+ ArmOperation result = await UpdateAsync(WaitUntil.Completed, patch, cancellationToken).ConfigureAwait(false);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Replace the tags on the resource with the given set.
+ /// The tags to set on the resource.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual Response SetTags(IDictionary tags, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(tags, nameof(tags));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.SetTags");
+ scope.Start();
+ try
+ {
+ if (CanUseTagResource(cancellationToken))
+ {
+ GetTagResource().Delete(WaitUntil.Completed, cancellationToken);
+ Response originalTags = GetTagResource().Get(cancellationToken);
+ originalTags.Value.Data.TagValues.ReplaceWith(tags);
+ GetTagResource().CreateOrUpdate(WaitUntil.Completed, originalTags.Value.Data, cancellationToken);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = Pipeline.ProcessMessage(message, context);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = Get(cancellationToken: cancellationToken).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ patch.Tags.ReplaceWith(tags);
+ ArmOperation result = Update(WaitUntil.Completed, patch, cancellationToken);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Removes a tag by key from the resource.
+ /// The key for the tag.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual async Task> RemoveTagAsync(string key, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(key, nameof(key));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.RemoveTag");
+ scope.Start();
+ try
+ {
+ if (await CanUseTagResourceAsync(cancellationToken).ConfigureAwait(false))
+ {
+ Response originalTags = await GetTagResource().GetAsync(cancellationToken).ConfigureAwait(false);
+ originalTags.Value.Data.TagValues.Remove(key);
+ await GetTagResource().CreateOrUpdateAsync(WaitUntil.Completed, originalTags.Value.Data, cancellationToken).ConfigureAwait(false);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = await Pipeline.ProcessMessageAsync(message, context).ConfigureAwait(false);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = (await GetAsync(cancellationToken: cancellationToken).ConfigureAwait(false)).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ foreach (KeyValuePair tag in current.Tags)
+ {
+ patch.Tags.Add(tag);
+ }
+ patch.Tags.Remove(key);
+ ArmOperation result = await UpdateAsync(WaitUntil.Completed, patch, cancellationToken).ConfigureAwait(false);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ /// Removes a tag by key from the resource.
+ /// The key for the tag.
+ /// The cancellation token to use.
+ /// is null.
+ public virtual Response RemoveTag(string key, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(key, nameof(key));
+
+ using DiagnosticScope scope = _activeDirectoryConfigsClientDiagnostics.CreateScope("ActiveDirectoryConfigResource.RemoveTag");
+ scope.Start();
+ try
+ {
+ if (CanUseTagResource(cancellationToken))
+ {
+ Response originalTags = GetTagResource().Get(cancellationToken);
+ originalTags.Value.Data.TagValues.Remove(key);
+ GetTagResource().CreateOrUpdate(WaitUntil.Completed, originalTags.Value.Data, cancellationToken);
+ RequestContext context = new RequestContext
+ {
+ CancellationToken = cancellationToken
+ };
+ HttpMessage message = _activeDirectoryConfigsRestClient.CreateGetRequest(Guid.Parse(Id.SubscriptionId), Id.ResourceGroupName, Id.Name, context);
+ Response result = Pipeline.ProcessMessage(message, context);
+ Response response = Response.FromValue(ActiveDirectoryConfigData.FromResponse(result), result);
+ return Response.FromValue(new ActiveDirectoryConfigResource(Client, response.Value), response.GetRawResponse());
+ }
+ else
+ {
+ ActiveDirectoryConfigData current = Get(cancellationToken: cancellationToken).Value.Data;
+ ActiveDirectoryConfigPatch patch = new ActiveDirectoryConfigPatch();
+ foreach (KeyValuePair tag in current.Tags)
+ {
+ patch.Tags.Add(tag);
+ }
+ patch.Tags.Remove(key);
+ ArmOperation result = Update(WaitUntil.Completed, patch, cancellationToken);
+ return Response.FromValue(result.Value, result.GetRawResponse());
+ }
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT.cs
new file mode 100644
index 000000000000..924cb14422cf
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT.cs
@@ -0,0 +1,85 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT : AsyncPageable
+ {
+ private readonly ActiveDirectoryConfigs _client;
+ private readonly Guid _subscriptionId;
+ private readonly string _resourceGroupName;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The ActiveDirectoryConfigs client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The name of the resource group. The name is case insensitive.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT(ActiveDirectoryConfigs client, Guid subscriptionId, string resourceGroupName, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ Argument.AssertNotNullOrEmpty(resourceGroupName, nameof(resourceGroupName));
+
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _resourceGroupName = resourceGroupName;
+ _context = context;
+ }
+
+ /// Gets the pages of ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of ActiveDirectoryConfigsGetByResourceGroupAsyncCollectionResultOfT as an enumerable collection.
+ public override async IAsyncEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = await GetNextResponseAsync(pageSizeHint, nextPage).ConfigureAwait(false);
+ if (response is null)
+ {
+ yield break;
+ }
+ ActiveDirectoryConfigListResult result = ActiveDirectoryConfigListResult.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private async ValueTask GetNextResponseAsync(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetByResourceGroupRequest(nextLink, _subscriptionId, _resourceGroupName, _context) : _client.CreateGetByResourceGroupRequest(_subscriptionId, _resourceGroupName, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.GetAll");
+ scope.Start();
+ try
+ {
+ return await _client.Pipeline.ProcessMessageAsync(message, _context).ConfigureAwait(false);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT.cs
new file mode 100644
index 000000000000..de3152d125d3
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT.cs
@@ -0,0 +1,84 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT : Pageable
+ {
+ private readonly ActiveDirectoryConfigs _client;
+ private readonly Guid _subscriptionId;
+ private readonly string _resourceGroupName;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The ActiveDirectoryConfigs client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The name of the resource group. The name is case insensitive.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ public ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT(ActiveDirectoryConfigs client, Guid subscriptionId, string resourceGroupName, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ Argument.AssertNotNullOrEmpty(resourceGroupName, nameof(resourceGroupName));
+
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _resourceGroupName = resourceGroupName;
+ _context = context;
+ }
+
+ /// Gets the pages of ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of ActiveDirectoryConfigsGetByResourceGroupCollectionResultOfT as an enumerable collection.
+ public override IEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = GetNextResponse(pageSizeHint, nextPage);
+ if (response is null)
+ {
+ yield break;
+ }
+ ActiveDirectoryConfigListResult result = ActiveDirectoryConfigListResult.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private Response GetNextResponse(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetByResourceGroupRequest(nextLink, _subscriptionId, _resourceGroupName, _context) : _client.CreateGetByResourceGroupRequest(_subscriptionId, _resourceGroupName, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("ActiveDirectoryConfigCollection.GetAll");
+ scope.Start();
+ try
+ {
+ return _client.Pipeline.ProcessMessage(message, _context);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT.cs
new file mode 100644
index 000000000000..9348ef7db141
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT.cs
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT : AsyncPageable
+ {
+ private readonly ActiveDirectoryConfigs _client;
+ private readonly Guid _subscriptionId;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The ActiveDirectoryConfigs client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ public ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT(ActiveDirectoryConfigs client, Guid subscriptionId, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _context = context;
+ }
+
+ /// Gets the pages of ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of ActiveDirectoryConfigsGetBySubscriptionAsyncCollectionResultOfT as an enumerable collection.
+ public override async IAsyncEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = await GetNextResponseAsync(pageSizeHint, nextPage).ConfigureAwait(false);
+ if (response is null)
+ {
+ yield break;
+ }
+ ActiveDirectoryConfigListResult result = ActiveDirectoryConfigListResult.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private async ValueTask GetNextResponseAsync(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetBySubscriptionRequest(nextLink, _subscriptionId, _context) : _client.CreateGetBySubscriptionRequest(_subscriptionId, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("MockableNetAppSubscriptionResource.GetActiveDirectoryConfigs");
+ scope.Start();
+ try
+ {
+ return await _client.Pipeline.ProcessMessageAsync(message, _context).ConfigureAwait(false);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT.cs
new file mode 100644
index 000000000000..e44673be8c2c
--- /dev/null
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT.cs
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using Azure;
+using Azure.Core;
+using Azure.Core.Pipeline;
+using Azure.ResourceManager.NetApp.Models;
+
+namespace Azure.ResourceManager.NetApp
+{
+ internal partial class ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT : Pageable
+ {
+ private readonly ActiveDirectoryConfigs _client;
+ private readonly Guid _subscriptionId;
+ private readonly RequestContext _context;
+
+ /// Initializes a new instance of ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT, which is used to iterate over the pages of a collection.
+ /// The ActiveDirectoryConfigs client used to send requests.
+ /// The ID of the target subscription. The value must be an UUID.
+ /// The request options, which can override default behaviors of the client pipeline on a per-call basis.
+ public ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT(ActiveDirectoryConfigs client, Guid subscriptionId, RequestContext context) : base(context?.CancellationToken ?? default)
+ {
+ _client = client;
+ _subscriptionId = subscriptionId;
+ _context = context;
+ }
+
+ /// Gets the pages of ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT as an enumerable collection.
+ /// A continuation token indicating where to resume paging.
+ /// The number of items per page.
+ /// The pages of ActiveDirectoryConfigsGetBySubscriptionCollectionResultOfT as an enumerable collection.
+ public override IEnumerable> AsPages(string continuationToken, int? pageSizeHint)
+ {
+ Uri nextPage = continuationToken != null ? new Uri(continuationToken) : null;
+ while (true)
+ {
+ Response response = GetNextResponse(pageSizeHint, nextPage);
+ if (response is null)
+ {
+ yield break;
+ }
+ ActiveDirectoryConfigListResult result = ActiveDirectoryConfigListResult.FromResponse(response);
+ yield return Page.FromValues((IReadOnlyList)result.Value, nextPage?.AbsoluteUri, response);
+ nextPage = result.NextLink;
+ if (nextPage == null)
+ {
+ yield break;
+ }
+ }
+ }
+
+ /// Get next page.
+ /// The number of items per page.
+ /// The next link to use for the next page of results.
+ private Response GetNextResponse(int? pageSizeHint, Uri nextLink)
+ {
+ HttpMessage message = nextLink != null ? _client.CreateNextGetBySubscriptionRequest(nextLink, _subscriptionId, _context) : _client.CreateGetBySubscriptionRequest(_subscriptionId, _context);
+ using DiagnosticScope scope = _client.ClientDiagnostics.CreateScope("MockableNetAppSubscriptionResource.GetActiveDirectoryConfigs");
+ scope.Start();
+ try
+ {
+ return _client.Pipeline.ProcessMessage(message, _context);
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ArmNetAppModelFactory.cs b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ArmNetAppModelFactory.cs
index 2658d7b7a4dd..cc90ebb33b01 100644
--- a/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ArmNetAppModelFactory.cs
+++ b/sdk/netapp/Azure.ResourceManager.NetApp/src/Generated/ArmNetAppModelFactory.cs
@@ -7,432 +7,187 @@
using System;
using System.Collections.Generic;
-using System.ComponentModel;
using System.Linq;
using System.Net;
+using Azure;
using Azure.Core;
using Azure.ResourceManager.Models;
+using Azure.ResourceManager.NetApp;
namespace Azure.ResourceManager.NetApp.Models
{
- /// Model factory for models.
+ /// A factory class for creating instances of the models for mocking.
public static partial class ArmNetAppModelFactory
{
- /// Initializes a new instance of .
- /// <code>true</code> indicates name is valid and available. <code>false</code> indicates the name is invalid, unavailable, or both.
- /// <code>Invalid</code> indicates the name provided does not match Azure App Service naming requirements. <code>AlreadyExists</code> indicates that the name is already in use and is therefore unavailable.
- /// If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that resource name is already in use, and direct them to select a different name.
- /// A new instance for mocking.
- public static NetAppCheckAvailabilityResult NetAppCheckAvailabilityResult(bool? isAvailable = null, NetAppNameUnavailableReason? reason = null, string message = null)
- {
- return new NetAppCheckAvailabilityResult(isAvailable, reason, message, serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// File path to verify.
- /// The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes.
- /// The Azure Resource logical availability zone which is used within zone mapping lookup for the subscription and region. The lookup will retrieve the physical zone where volume is placed.
- /// A new instance for mocking.
- public static NetAppFilePathAvailabilityContent NetAppFilePathAvailabilityContent(string name = null, ResourceIdentifier subnetId = null, string availabilityZone = null)
- {
- return new NetAppFilePathAvailabilityContent(name, subnetId, availabilityZone, serializedAdditionalRawData: null);
- }
- /// Initializes a new instance of .
- /// The id of the usage.
- /// The name of the usage.
- /// The current usage value for the subscription.
- /// The limit of the usage.
- /// The unit of the usage.
- /// A new instance for mocking.
- public static NetAppUsageResult NetAppUsageResult(string id = null, NetAppUsageName name = null, int? currentValue = null, int? limit = null, string unit = null)
- {
- return new NetAppUsageResult(
- id,
+ /// Operation name: {provider}/{resource}/{operation}.
+ /// Display metadata associated with the operation.
+ /// The origin of operations.
+ /// One property of operation, include metric specifications.
+ /// A new instance for mocking.
+ public static Operation Operation(string name = default, OperationDisplay display = default, string origin = default, ServiceSpecification serviceSpecification = default)
+ {
+ return new Operation(name, display, origin, serviceSpecification is null ? default : new OperationProperties(serviceSpecification, new Dictionary()), additionalBinaryDataProperties: null);
+ }
+
+ /// Display metadata associated with the operation.
+ /// Service provider: Microsoft NetApp.
+ /// Resource on which the operation is performed etc.
+ /// Type of operation: get, read, delete, etc.
+ /// Operation description.
+ /// A new instance for mocking.
+ public static OperationDisplay OperationDisplay(string provider = default, string resource = default, string operation = default, string description = default)
+ {
+ return new OperationDisplay(provider, resource, operation, description, additionalBinaryDataProperties: null);
+ }
+
+ /// One property of operation, include metric specifications.
+ /// Metric specifications of operation.
+ /// Log specification of operation.
+ /// A new instance for mocking.
+ public static ServiceSpecification ServiceSpecification(IEnumerable metricSpecifications = default, IEnumerable logSpecifications = default)
+ {
+ metricSpecifications ??= new ChangeTrackingList();
+ logSpecifications ??= new ChangeTrackingList();
+
+ return new ServiceSpecification(metricSpecifications.ToList(), logSpecifications.ToList(), additionalBinaryDataProperties: null);
+ }
+
+ /// Metric specification of operation.
+ /// Name of metric specification.
+ /// Display name of metric specification.
+ /// Display description of metric specification.
+ /// Unit could be Bytes or Count.
+ /// Support metric aggregation type.
+ /// The supported time grain types for the metrics.
+ /// The internal metric name.
+ /// Whether or not the service is using regional MDM accounts.
+ /// The source MDM account.
+ /// The source MDM namespace.
+ /// Dimensions of blobs, including blob type and access tier.
+ /// Aggregation type could be Average.
+ /// The property to decide fill gap with zero or not.
+ /// The category this metric specification belong to, could be Capacity.
+ /// Account Resource Id.
+ /// Whether the metric is internal.
+ /// A new instance for mocking.
+ public static MetricSpecification MetricSpecification(string name = default, string displayName = default, string displayDescription = default, string unit = default, IEnumerable supportedAggregationTypes = default, IEnumerable supportedTimeGrainTypes = default, string internalMetricName = default, bool? enableRegionalMdmAccount = default, string sourceMdmAccount = default, string sourceMdmNamespace = default, IEnumerable dimensions = default, string aggregationType = default, bool? fillGapWithZero = default, string category = default, string resourceIdDimensionNameOverride = default, bool? isInternal = default)
+ {
+ supportedAggregationTypes ??= new ChangeTrackingList();
+ supportedTimeGrainTypes ??= new ChangeTrackingList();
+ dimensions ??= new ChangeTrackingList();
+
+ return new MetricSpecification(
name,
- currentValue,
- limit,
+ displayName,
+ displayDescription,
unit,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The name of the usage.
- /// The localized name of the usage.
- /// A new instance for mocking.
- public static NetAppUsageName NetAppUsageName(string value = null, string localizedValue = null)
- {
- return new NetAppUsageName(value, localizedValue, serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
+ supportedAggregationTypes.ToList(),
+ supportedTimeGrainTypes.ToList(),
+ internalMetricName,
+ enableRegionalMdmAccount,
+ sourceMdmAccount,
+ sourceMdmNamespace,
+ dimensions.ToList(),
+ aggregationType,
+ fillGapWithZero,
+ category,
+ resourceIdDimensionNameOverride,
+ isInternal,
+ additionalBinaryDataProperties: null);
+ }
+
+ /// Dimension of blobs, possibly be blob type or access tier.
+ /// Display name of dimension.
+ /// Display name of dimension.
+ /// A new instance for mocking.
+ public static Dimension Dimension(string name = default, string displayName = default)
+ {
+ return new Dimension(name, displayName, additionalBinaryDataProperties: null);
+ }
+
+ /// Log Definition of a single resource metric.
+ /// Name of log specification.
+ /// Display name of log specification.
+ /// A new instance for mocking.
+ public static LogSpecification LogSpecification(string name = default, string displayName = default)
+ {
+ return new LogSpecification(name, displayName, additionalBinaryDataProperties: null);
+ }
+
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
/// The current quota value.
/// The default quota value.
/// The usage quota value.
- /// A new instance for mocking.
- public static NetAppSubscriptionQuotaItem NetAppSubscriptionQuotaItem(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, int? current = null, int? @default = null, int? usage = null)
- {
- return new NetAppSubscriptionQuotaItem(
- id,
- name,
- resourceType,
- systemData,
- current,
- @default,
- usage,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// Provides storage to network proximity information in the region.
- /// Provides logical availability zone mappings for the subscription for a region.
- /// A new instance for mocking.
- public static NetAppRegionInfo NetAppRegionInfo(RegionStorageToNetworkProximity? storageToNetworkProximity = null, IEnumerable availabilityZoneMappings = null)
- {
- availabilityZoneMappings ??= new List();
-
- return new NetAppRegionInfo(storageToNetworkProximity, availabilityZoneMappings?.ToList(), serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// Provides storage to network proximity information in the region.
- /// Provides logical availability zone mappings for the subscription for a region.
- /// A new instance for mocking.
- public static RegionInfoResourceData RegionInfoResourceData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, RegionStorageToNetworkProximity? storageToNetworkProximity = null, IEnumerable availabilityZoneMappings = null)
- {
- availabilityZoneMappings ??= new List();
-
- return new RegionInfoResourceData(
- id,
- name,
- resourceType,
- systemData,
- storageToNetworkProximity,
- availabilityZoneMappings?.ToList(),
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// Network Sibling Set ID for a group of volumes sharing networking resources in a subnet.
- /// The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes. Example /subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Network/virtualNetworks/testVnet/subnets/{mySubnet}.
- /// Network sibling set state Id identifying the current state of the sibling set.
- /// Network features available to the volume, or current state of update.
- /// Gets the status of the NetworkSiblingSet at the time the operation was called.
- /// List of NIC information.
- /// A new instance for mocking.
- public static NetworkSiblingSet NetworkSiblingSet(string networkSiblingSetId = null, ResourceIdentifier subnetId = null, string networkSiblingSetStateId = null, NetAppNetworkFeature? networkFeatures = null, NetworkSiblingSetProvisioningState? provisioningState = null, IEnumerable nicInfoList = null)
- {
- nicInfoList ??= new List();
-
- return new NetworkSiblingSet(
- networkSiblingSetId,
- subnetId,
- networkSiblingSetStateId,
- networkFeatures,
- provisioningState,
- nicInfoList?.ToList(),
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// ipAddress.
- /// Volume resource Ids.
- /// A new instance for mocking.
- public static NicInfo NicInfo(string ipAddress = null, IEnumerable volumeResourceIds = null)
- {
- volumeResourceIds ??= new List();
-
- return new NicInfo(ipAddress, volumeResourceIds?.ToList(), serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// A unique read-only string that changes whenever the resource is updated.
- /// The identity used for the resource.
- /// Azure lifecycle management.
- /// Active Directories.
- /// Encryption settings.
- /// Shows the status of disableShowmount for all volumes under the subscription, null equals false.
- /// Domain for NFSv4 user ID mapping. This property will be set for all NetApp accounts in the subscription and region and only affect non ldap NFSv4 volumes.
- /// MultiAD Status for the account.
- /// LDAP Configuration for the account.
- /// A new instance for mocking.
- public static NetAppAccountData NetAppAccountData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, ETag? etag = null, ManagedServiceIdentity identity = null, string provisioningState = null, IEnumerable activeDirectories = null, NetAppAccountEncryption encryption = null, bool? disableShowmount = null, string nfsV4IdDomain = null, MultiAdStatus? multiAdStatus = null, LdapConfiguration ldapConfiguration = null)
+ /// A new instance for mocking.
+ public static NetAppSubscriptionQuotaItemData NetAppSubscriptionQuotaItemData(ResourceIdentifier id = default, string name = default, ResourceType resourceType = default, SystemData systemData = default, int? current = default, int? @default = default, int? usage = default)
{
- tags ??= new Dictionary();
- activeDirectories ??= new List();
-
- return new NetAppAccountData(
+ return new NetAppSubscriptionQuotaItemData(
id,
name,
resourceType,
systemData,
- tags,
- location,
- etag,
- identity,
- provisioningState,
- activeDirectories?.ToList(),
- encryption,
- disableShowmount,
- nfsV4IdDomain,
- multiAdStatus,
- ldapConfiguration,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// Id of the Active Directory.
- /// A domain user account with permission to create machine accounts.
- /// Plain text password of Active Directory domain administrator, value is masked in the response.
- /// Name of the Active Directory domain.
- /// Comma separated list of DNS server IP addresses (IPv4 only) for the Active Directory domain.
- /// Status of the Active Directory.
- /// Any details in regards to the Status of the Active Directory.
- /// NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes.
- /// The Organizational Unit (OU) within the Windows Active Directory.
- /// The Active Directory site the service will limit Domain Controller discovery to.
- /// Users to be added to the Built-in Backup Operator active directory group. A list of unique usernames without domain specifier.
- /// Users to be added to the Built-in Administrators active directory group. A list of unique usernames without domain specifier.
- /// kdc server IP address for the active directory machine. This optional parameter is used only while creating kerberos volume.
- /// Name of the active directory machine. This optional parameter is used only while creating kerberos volume.
- /// When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes.
- /// If enabled, AES encryption will be enabled for SMB communication.
- /// Specifies whether or not the LDAP traffic needs to be signed.
- /// Domain Users in the Active directory to be given SeSecurityPrivilege privilege (Needed for SMB Continuously available shares for SQL). A list of unique usernames without domain specifier.
- /// Specifies whether or not the LDAP traffic needs to be secured via TLS.
- /// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes.
- /// If enabled, Traffic between the SMB server to Domain Controller (DC) will be encrypted.
- /// LDAP Search scope options.
- /// Comma separated list of IPv4 addresses of preferred servers for LDAP client. At most two comma separated IPv4 addresses can be passed.
- /// A new instance for mocking.
- public static NetAppAccountActiveDirectory NetAppAccountActiveDirectory(string activeDirectoryId = null, string username = null, string password = null, string domain = null, string dns = null, NetAppAccountActiveDirectoryStatus? status = null, string statusDetails = null, string smbServerName = null, string organizationalUnit = null, string site = null, IEnumerable backupOperators = null, IEnumerable administrators = null, IPAddress kdcIP = null, string adName = null, string serverRootCACertificate = null, bool? isAesEncryptionEnabled = null, bool? isLdapSigningEnabled = null, IEnumerable securityOperators = null, bool? isLdapOverTlsEnabled = null, bool? allowLocalNfsUsersWithLdap = null, bool? encryptDCConnections = null, NetAppLdapSearchScopeConfiguration ldapSearchScope = null, string preferredServersForLdapClient = null)
- {
- backupOperators ??= new List();
- administrators ??= new List();
- securityOperators ??= new List();
-
- return new NetAppAccountActiveDirectory(
- activeDirectoryId,
- username,
- password,
- domain,
- dns,
- status,
- statusDetails,
- smbServerName,
- organizationalUnit,
- site,
- backupOperators?.ToList(),
- administrators?.ToList(),
- kdcIP,
- adName,
- serverRootCACertificate,
- isAesEncryptionEnabled,
- isLdapSigningEnabled,
- securityOperators?.ToList(),
- isLdapOverTlsEnabled,
- allowLocalNfsUsersWithLdap,
- encryptDCConnections,
- ldapSearchScope,
- preferredServersForLdapClient,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// UUID v4 used to identify the Azure Key Vault configuration.
- /// The Uri of KeyVault.
- /// The name of KeyVault key.
- /// The resource ID of KeyVault.
- /// Status of the KeyVault connection.
- /// A new instance for mocking.
- public static NetAppKeyVaultProperties NetAppKeyVaultProperties(string keyVaultId = null, Uri keyVaultUri = null, string keyName = null, ResourceIdentifier keyVaultArmResourceId = null, NetAppKeyVaultStatus? status = null)
- {
- return new NetAppKeyVaultProperties(
- keyVaultId,
- keyVaultUri,
- keyName,
- keyVaultArmResourceId,
- status,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The principal ID (object ID) of the identity used to authenticate with key vault. Read-only.
- /// The ARM resource identifier of the user assigned identity used to authenticate with key vault. Applicable if identity.type has 'UserAssigned'. It should match key of identity.userAssignedIdentities.
- /// ClientId of the multi-tenant AAD Application. Used to access cross-tenant KeyVaults.
- /// A new instance for mocking.
- public static NetAppEncryptionIdentity NetAppEncryptionIdentity(string principalId = null, string userAssignedIdentity = null, string federatedClientId = null)
- {
- return new NetAppEncryptionIdentity(principalId, userAssignedIdentity, federatedClientId, serializedAdditionalRawData: null);
+ additionalBinaryDataProperties: null,
+ current is null || @default is null || usage is null ? default : new QuotaItemProperties(current, @default, usage, new Dictionary()));
}
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// The identity used for the resource.
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
/// Azure lifecycle management.
- /// Active Directories.
- /// Encryption settings.
- /// Shows the status of disableShowmount for all volumes under the subscription, null equals false.
- /// Domain for NFSv4 user ID mapping. This property will be set for all NetApp accounts in the subscription and region and only affect non ldap NFSv4 volumes.
- /// MultiAD Status for the account.
- /// LDAP Configuration for the account.
- /// A new instance for mocking.
- public static NetAppAccountPatch NetAppAccountPatch(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, ManagedServiceIdentity identity = null, string provisioningState = null, IEnumerable activeDirectories = null, NetAppAccountEncryption encryption = null, bool? disableShowmount = null, string nfsV4IdDomain = null, MultiAdStatus? multiAdStatus = null, LdapConfiguration ldapConfiguration = null)
+ /// Volume group details.
+ /// List of volumes from group.
+ /// Resource location.
+ /// A new instance for mocking.
+ public static VolumeGroupDetailsData VolumeGroupDetailsData(ResourceIdentifier id = default, string name = default, ResourceType resourceType = default, SystemData systemData = default, string provisioningState = default, VolumeGroupMetaData groupMetaData = default, IList volumes = default, string location = default)
{
- tags ??= new Dictionary();
- activeDirectories ??= new List();
-
- return new NetAppAccountPatch(
+ return new VolumeGroupDetailsData(
id,
name,
resourceType,
systemData,
- tags,
- location,
- identity,
- provisioningState,
- activeDirectories?.ToList(),
- encryption,
- disableShowmount,
- nfsV4IdDomain,
- multiAdStatus,
- ldapConfiguration,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The URI of the key vault/managed HSM that should be used for encryption.
- /// The name of the key that should be used for encryption.
- /// Azure resource ID of the key vault/managed HSM that should be used for encryption.
- /// Pairs of virtual network ID and private endpoint ID. Every virtual network that has volumes encrypted with customer-managed keys needs its own key vault private endpoint.
- /// A new instance for mocking.
- public static NetAppKeyVaultStatusResult NetAppKeyVaultStatusResult(Uri keyVaultUri = null, string keyName = null, ResourceIdentifier keyVaultResourceId = null, IEnumerable keyVaultPrivateEndpoints = null)
- {
- keyVaultPrivateEndpoints ??= new List();
-
- return new NetAppKeyVaultStatusResult(keyVaultUri, keyName, keyVaultResourceId, keyVaultPrivateEndpoints?.ToList(), serializedAdditionalRawData: null);
+ additionalBinaryDataProperties: null,
+ provisioningState is null || groupMetaData is null || volumes is null ? default : new VolumeGroupProperties(provisioningState, groupMetaData, volumes, new Dictionary()),
+ location);
}
- /// Initializes a new instance of .
- /// The URI of the key vault/managed HSM that should be used for encryption.
- /// The name of the key that should be used for encryption.
- /// Azure resource ID of the key vault/managed HSM that should be used for encryption.
- /// Pairs of virtual network ID and private endpoint ID. Every virtual network that has volumes encrypted with customer-managed keys needs its own key vault private endpoint.
- /// A new instance for mocking.
- public static NetAppChangeKeyVault NetAppChangeKeyVault(Uri keyVaultUri = null, string keyName = null, ResourceIdentifier keyVaultResourceId = null, IEnumerable keyVaultPrivateEndpoints = null)
+ /// Volume group properties.
+ /// Group Description.
+ /// Application Type.
+ /// Application specific identifier.
+ /// Application specific placement rules for the volume group.
+ /// Number of volumes in volume group.
+ /// A new instance for mocking.
+ public static VolumeGroupMetaData VolumeGroupMetaData(string groupDescription = default, NetAppApplicationType? applicationType = default, string applicationIdentifier = default, IEnumerable globalPlacementRules = default, long? volumesCount = default)
{
- keyVaultPrivateEndpoints ??= new List();
+ globalPlacementRules ??= new ChangeTrackingList();
- return new NetAppChangeKeyVault(keyVaultUri, keyName, keyVaultResourceId, keyVaultPrivateEndpoints?.ToList(), serializedAdditionalRawData: null);
+ return new VolumeGroupMetaData(
+ groupDescription,
+ applicationType,
+ applicationIdentifier,
+ globalPlacementRules.ToList(),
+ volumesCount,
+ additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// A unique read-only string that changes whenever the resource is updated.
- /// UUID v4 used to identify the Pool.
- /// Provisioned size of the pool (in bytes). Allowed values are in 1TiB chunks (value must be multiple of 1099511627776).
- /// The service level of the file system.
- /// Azure lifecycle management.
- /// Total throughput of pool in MiB/s.
- /// Utilized throughput of pool in MiB/s.
- /// Maximum throughput in MiB/s that can be achieved by this pool and this will be accepted as input only for manual qosType pool with Flexible service level.
- /// The qos type of the pool.
- /// If enabled (true) the pool can contain cool Access enabled volumes.
- /// Encryption type of the capacity pool, set encryption type for data at rest for this pool and all volumes in it. This value can only be set when creating new pool.
- /// A new instance for mocking.
- public static CapacityPoolData CapacityPoolData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, ETag? etag = null, Guid? poolId = null, long size = default, NetAppFileServiceLevel serviceLevel = default, string provisioningState = null, float? totalThroughputMibps = null, float? utilizedThroughputMibps = null, float? customThroughputMibps = null, CapacityPoolQosType? qosType = null, bool? isCoolAccessEnabled = null, CapacityPoolEncryptionType? encryptionType = null)
- {
- tags ??= new Dictionary();
-
- return new CapacityPoolData(
- id,
- name,
- resourceType,
- systemData,
- tags,
- location,
- etag,
- poolId,
- size,
- serviceLevel,
- provisioningState,
- totalThroughputMibps,
- utilizedThroughputMibps,
- customThroughputMibps,
- qosType,
- isCoolAccessEnabled,
- encryptionType,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// Provisioned size of the pool (in bytes). Allowed values are in 1TiB chunks (value must be multiple of 1099511627776).
- /// The qos type of the pool.
- /// If enabled (true) the pool can contain cool Access enabled volumes.
- /// Maximum throughput in MiB/s that can be achieved by this pool and this will be accepted as input only for manual qosType pool with Flexible service level.
- /// A new instance for mocking.
- public static CapacityPoolPatch CapacityPoolPatch(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, long? size = null, CapacityPoolQosType? qosType = null, bool? isCoolAccessEnabled = null, float? customThroughputMibps = null)
- {
- tags ??= new Dictionary();
-
- return new CapacityPoolPatch(
- id,
- name,
- resourceType,
- systemData,
- tags,
- location,
- size,
- qosType,
- isCoolAccessEnabled,
- customThroughputMibps,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// A unique read-only string that changes whenever the resource is updated.
+ /// Resource Id.
+ /// Resource name.
+ /// Resource type.
+ /// Resource tags.
/// Availability Zone.
/// Unique FileSystem Identifier.
/// A unique file path for the volume. Used when creating mount targets.
/// The service level of the file system.
- /// Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB. For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB. Values expressed in bytes as multiples of 1 GiB.
- /// Set of export policy rules.
+ ///
+ /// Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB.
+ /// For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB.
+ /// For extra large volumes, valid values are in the range 2400GiB to 7200TiB. Values expressed in bytes as multiples of 1 GiB.
+ ///
/// Set of protocol types, default NFSv3, CIFS for SMB protocol.
/// Azure lifecycle management.
/// Resource identifier used to identify the Snapshot.
@@ -449,29 +204,29 @@ public static CapacityPoolPatch CapacityPoolPatch(ResourceIdentifier id = null,
/// DataProtection type volumes include an object containing details of the replication.
/// While auto splitting the short term clone volume, if the parent pool does not have enough space to accommodate the volume after split, it will be automatically resized, which will lead to increased billing. To accept capacity pool size auto grow and create a short term clone volume, set the property as accepted.
/// Restoring.
- /// If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true).
- /// Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later.
+ /// If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true).
+ /// Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later.
/// The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol.
- /// Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later.
+ /// Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later.
/// Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume.
/// Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume.
- /// Enables continuously available share property for smb volume. Only applicable for SMB volume.
+ /// Enables continuously available share property for smb volume. Only applicable for SMB volume.
/// Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
/// Actual throughput in MiB/s for auto qosType volumes calculated based on size and serviceLevel.
/// Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault'.
/// The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'.
- /// Specifies whether LDAP is enabled or not for a given NFS volume.
+ /// Specifies whether LDAP is enabled or not for a given NFS volume.
/// Specifies the type of LDAP server for a given NFS volume.
- /// Specifies whether Cool Access(tiering) is enabled for the volume.
+ /// Specifies whether Cool Access(tiering) is enabled for the volume.
/// Specifies the number of days after which data that is not accessed by clients will be tiered.
///
/// coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
- /// Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
- /// OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
- /// Never - No client-driven data is pulled from cool tier to standard storage.
+ /// Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
+ /// OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
+ /// Never - No client-driven data is pulled from cool tier to standard storage.
///
/// coolAccessTieringPolicy determines which cold data blocks are moved to cool tier. The possible values for this field are: Auto - Moves cold user data blocks in both the Snapshot copies and the active file system to the cool tier tier. This policy is the default. SnapshotOnly - Moves user data blocks of the Volume Snapshot copies that are not associated with the active file system to the cool tier.
- /// UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. Avoid passing null value for unixPermissions in volume update operation, As per the behavior, If Null value is passed then user-visible unixPermissions value will became null, and user will not be able to get unixPermissions value. On safer side, actual unixPermissions value on volume will remain as its last saved value only.
+ /// UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users.
/// When a volume is being restored from another volume's snapshot, will show the percentage completion of this cloning process. When this value is empty/null there is no cloning process currently happening on this volume. This value will update every 5 minutes during cloning.
/// Flag indicating whether file access logs are enabled for the volume, based on active diagnostic settings present on the volume.
/// Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose.
@@ -482,112 +237,115 @@ public static CapacityPoolPatch CapacityPoolPatch(ResourceIdentifier id = null,
/// Maximum number of files allowed. Needs a service request in order to be changed. Only allowed to be changed if volume quota is more than 4TiB.
/// Volume Group Name.
/// Pool Resource Id used in case of creating a volume through volume group.
- /// Proximity placement group associated with the volume.
+ /// Proximity placement group associated with the volume.
/// T2 network information.
/// Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log.
- /// Specifies if the volume is encrypted or not. Only available on volumes created or updated after 2022-01-01.
+ /// Specifies if the volume is encrypted or not. Only available on volumes created or updated after 2022-01-01.
/// Application specific placement rules for the particular volume.
/// Flag indicating whether subvolume operations are enabled on the volume.
/// The availability zone where the volume is provisioned. This refers to the logical availability zone where the volume resides.
/// Specifies whether volume is a Large Volume or Regular Volume.
+ ///
+ /// Specifies the type of the Large Volume. When set to 'LargeVolume', the large volume is created with standard configuration.
+ /// If it is set to 'ExtraLargeVolume7Dot2PiB', the extra large volume is created with higher capacity limit 7.2PiB with cool access enabled,
+ /// delivering higher capacity limit with lower costs.
+ ///
/// Id of the snapshot or backup that the volume is restored from.
/// Space shared by short term clone volume with parent volume in bytes.
/// Language supported for volume.
- /// A new instance for mocking.
- public static NetAppVolumeData NetAppVolumeData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, ETag? etag = null, IEnumerable zones = null, Guid? fileSystemId = null, string creationToken = null, NetAppFileServiceLevel? serviceLevel = null, long usageThreshold = default, IEnumerable exportRules = null, IEnumerable protocolTypes = null, string provisioningState = null, string snapshotId = null, bool? deleteBaseSnapshot = null, string backupId = null, string baremetalTenantId = null, ResourceIdentifier subnetId = null, NetAppNetworkFeature? networkFeatures = null, NetAppNetworkFeature? effectiveNetworkFeatures = null, Guid? networkSiblingSetId = null, NetAppVolumeStorageToNetworkProximity? storageToNetworkProximity = null, IEnumerable mountTargets = null, string volumeType = null, NetAppVolumeDataProtection dataProtection = null, AcceptGrowCapacityPoolForShortTermCloneSplit? acceptGrowCapacityPoolForShortTermCloneSplit = null, bool? isRestoring = null, bool? isSnapshotDirectoryVisible = null, bool? isKerberosEnabled = null, NetAppVolumeSecurityStyle? securityStyle = null, bool? isSmbEncryptionEnabled = null, SmbAccessBasedEnumeration? smbAccessBasedEnumeration = null, SmbNonBrowsable? smbNonBrowsable = null, bool? isSmbContinuouslyAvailable = null, float? throughputMibps = null, float? actualThroughputMibps = null, NetAppEncryptionKeySource? encryptionKeySource = null, ResourceIdentifier keyVaultPrivateEndpointResourceId = null, bool? isLdapEnabled = null, LdapServerType? ldapServerType = null, bool? isCoolAccessEnabled = null, int? coolnessPeriod = null, CoolAccessRetrievalPolicy? coolAccessRetrievalPolicy = null, CoolAccessTieringPolicy? coolAccessTieringPolicy = null, string unixPermissions = null, int? cloneProgress = null, NetAppFileAccessLog? fileAccessLogs = null, NetAppAvsDataStore? avsDataStore = null, IEnumerable dataStoreResourceId = null, bool? isDefaultQuotaEnabled = null, long? defaultUserQuotaInKiBs = null, long? defaultGroupQuotaInKiBs = null, long? maximumNumberOfFiles = null, string volumeGroupName = null, ResourceIdentifier capacityPoolResourceId = null, ResourceIdentifier proximityPlacementGroupId = null, string t2Network = null, string volumeSpecName = null, bool? isEncrypted = null, IEnumerable placementRules = null, EnableNetAppSubvolume? enableSubvolumes = null, string provisionedAvailabilityZone = null, bool? isLargeVolume = null, ResourceIdentifier originatingResourceId = null, long? inheritedSizeInBytes = null, NetAppVolumeLanguage? language = null)
- {
- tags ??= new Dictionary();
- zones ??= new List();
- exportRules ??= new List();
- protocolTypes ??= new List();
- mountTargets ??= new List();
- dataStoreResourceId ??= new List();
- placementRules ??= new List();
-
- return new NetAppVolumeData(
+ /// Specifies whether the volume operates in Breakthrough Mode.
+ /// Export policy rule.
+ /// A new instance for mocking.
+ public static VolumeGroupVolumeProperties VolumeGroupVolumeProperties(string id = default, string name = default, string @type = default, IDictionary tags = default, IEnumerable zones = default, string fileSystemId = default, string creationToken = default, NetAppFileServiceLevel? serviceLevel = default, long? usageThreshold = default, IList protocolTypes = default, string provisioningState = default, ResourceIdentifier snapshotId = default, bool? deleteBaseSnapshot = default, ResourceIdentifier backupId = default, string baremetalTenantId = default, string subnetId = default, NetworkFeatures? networkFeatures = default, NetworkFeatures? effectiveNetworkFeatures = default, string networkSiblingSetId = default, VolumeStorageToNetworkProximity? storageToNetworkProximity = default, IReadOnlyList mountTargets = default, string volumeType = default, VolumePropertiesDataProtection dataProtection = default, AcceptGrowCapacityPoolForShortTermCloneSplit? acceptGrowCapacityPoolForShortTermCloneSplit = default, bool? isRestoring = default, bool? snapshotDirectoryVisible = default, bool? kerberosEnabled = default, SecurityStyle? securityStyle = default, bool? smbEncryption = default, SmbAccessBasedEnumeration? smbAccessBasedEnumeration = default, SmbNonBrowsable? smbNonBrowsable = default, bool? smbContinuouslyAvailable = default, float? throughputMibps = default, float? actualThroughputMibps = default, EncryptionKeySource? encryptionKeySource = default, string keyVaultPrivateEndpointResourceId = default, bool? ldapEnabled = default, LdapServerType? ldapServerType = default, bool? coolAccess = default, int? coolnessPeriod = default, CoolAccessRetrievalPolicy? coolAccessRetrievalPolicy = default, CoolAccessTieringPolicy? coolAccessTieringPolicy = default, string unixPermissions = default, int? cloneProgress = default, FileAccessLogs? fileAccessLogs = default, AvsDataStore? avsDataStore = default, IReadOnlyList dataStoreResourceId = default, bool? isDefaultQuotaEnabled = default, long? defaultUserQuotaInKiBs = default, long? defaultGroupQuotaInKiBs = default, long? maximumNumberOfFiles = default, string volumeGroupName = default, string capacityPoolResourceId = default, string proximityPlacementGroup = default, string t2Network = default, string volumeSpecName = default, bool? encrypted = default, IList placementRules = default, EnableSubvolumes? enableSubvolumes = default, string provisionedAvailabilityZone = default, bool? isLargeVolume = default, LargeVolumeType? largeVolumeType = default, string originatingResourceId = default, long? inheritedSizeInBytes = default, VolumeLanguage? language = default, BreakthroughMode? breakthroughMode = default, IList exportRules = default)
+ {
+ tags ??= new ChangeTrackingDictionary();
+ zones ??= new ChangeTrackingList();
+
+ return new VolumeGroupVolumeProperties(
id,
name,
- resourceType,
- systemData,
+ @type,
tags,
- location,
- etag,
- zones?.ToList(),
- fileSystemId,
- creationToken,
- serviceLevel,
- usageThreshold,
- exportRules != null ? new VolumePropertiesExportPolicy(exportRules?.ToList(), serializedAdditionalRawData: null) : null,
- protocolTypes?.ToList(),
- provisioningState,
- snapshotId,
- deleteBaseSnapshot,
- backupId,
- baremetalTenantId,
- subnetId,
- networkFeatures,
- effectiveNetworkFeatures,
- networkSiblingSetId,
- storageToNetworkProximity,
- mountTargets?.ToList(),
- volumeType,
- dataProtection,
- acceptGrowCapacityPoolForShortTermCloneSplit,
- isRestoring,
- isSnapshotDirectoryVisible,
- isKerberosEnabled,
- securityStyle,
- isSmbEncryptionEnabled,
- smbAccessBasedEnumeration,
- smbNonBrowsable,
- isSmbContinuouslyAvailable,
- throughputMibps,
- actualThroughputMibps,
- encryptionKeySource,
- keyVaultPrivateEndpointResourceId,
- isLdapEnabled,
- ldapServerType,
- isCoolAccessEnabled,
- coolnessPeriod,
- coolAccessRetrievalPolicy,
- coolAccessTieringPolicy,
- unixPermissions,
- cloneProgress,
- fileAccessLogs,
- avsDataStore,
- dataStoreResourceId?.ToList(),
- isDefaultQuotaEnabled,
- defaultUserQuotaInKiBs,
- defaultGroupQuotaInKiBs,
- maximumNumberOfFiles,
- volumeGroupName,
- capacityPoolResourceId,
- proximityPlacementGroupId,
- t2Network,
- volumeSpecName,
- isEncrypted,
- placementRules?.ToList(),
- enableSubvolumes,
- provisionedAvailabilityZone,
- isLargeVolume,
- originatingResourceId,
- inheritedSizeInBytes,
- language,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
+ zones.ToList(),
+ fileSystemId is null || creationToken is null || serviceLevel is null || usageThreshold is null || protocolTypes is null || provisioningState is null || snapshotId is null || deleteBaseSnapshot is null || backupId is null || baremetalTenantId is null || subnetId is null || networkFeatures is null || effectiveNetworkFeatures is null || networkSiblingSetId is null || storageToNetworkProximity is null || mountTargets is null || volumeType is null || dataProtection is null || acceptGrowCapacityPoolForShortTermCloneSplit is null || isRestoring is null || snapshotDirectoryVisible is null || kerberosEnabled is null || securityStyle is null || smbEncryption is null || smbAccessBasedEnumeration is null || smbNonBrowsable is null || smbContinuouslyAvailable is null || throughputMibps is null || actualThroughputMibps is null || encryptionKeySource is null || keyVaultPrivateEndpointResourceId is null || ldapEnabled is null || ldapServerType is null || coolAccess is null || coolnessPeriod is null || coolAccessRetrievalPolicy is null || coolAccessTieringPolicy is null || unixPermissions is null || cloneProgress is null || fileAccessLogs is null || avsDataStore is null || dataStoreResourceId is null || isDefaultQuotaEnabled is null || defaultUserQuotaInKiBs is null || defaultGroupQuotaInKiBs is null || maximumNumberOfFiles is null || volumeGroupName is null || capacityPoolResourceId is null || proximityPlacementGroup is null || t2Network is null || volumeSpecName is null || encrypted is null || placementRules is null || enableSubvolumes is null || provisionedAvailabilityZone is null || isLargeVolume is null || largeVolumeType is null || originatingResourceId is null || inheritedSizeInBytes is null || language is null || breakthroughMode is null || exportRules is null ? default : new VolumeProperties(
+ fileSystemId,
+ creationToken,
+ serviceLevel,
+ usageThreshold.Value,
+ new NetAppVolumeExportPolicyRule(exportRules, new Dictionary()),
+ protocolTypes,
+ provisioningState,
+ snapshotId,
+ deleteBaseSnapshot,
+ backupId,
+ baremetalTenantId,
+ subnetId,
+ networkFeatures,
+ effectiveNetworkFeatures,
+ networkSiblingSetId,
+ storageToNetworkProximity,
+ mountTargets,
+ volumeType,
+ dataProtection,
+ acceptGrowCapacityPoolForShortTermCloneSplit,
+ isRestoring,
+ snapshotDirectoryVisible,
+ kerberosEnabled,
+ securityStyle,
+ smbEncryption,
+ smbAccessBasedEnumeration,
+ smbNonBrowsable,
+ smbContinuouslyAvailable,
+ throughputMibps,
+ actualThroughputMibps,
+ encryptionKeySource,
+ keyVaultPrivateEndpointResourceId,
+ ldapEnabled,
+ ldapServerType,
+ coolAccess,
+ coolnessPeriod,
+ coolAccessRetrievalPolicy,
+ coolAccessTieringPolicy,
+ unixPermissions,
+ cloneProgress,
+ fileAccessLogs,
+ avsDataStore,
+ dataStoreResourceId,
+ isDefaultQuotaEnabled,
+ defaultUserQuotaInKiBs,
+ defaultGroupQuotaInKiBs,
+ maximumNumberOfFiles,
+ volumeGroupName,
+ capacityPoolResourceId,
+ proximityPlacementGroup,
+ t2Network,
+ volumeSpecName,
+ encrypted,
+ placementRules,
+ enableSubvolumes,
+ provisionedAvailabilityZone,
+ isLargeVolume,
+ largeVolumeType,
+ originatingResourceId,
+ inheritedSizeInBytes,
+ language,
+ breakthroughMode,
+ new Dictionary()),
+ additionalBinaryDataProperties: null);
+ }
+
+ /// Mount target properties.
/// UUID v4 used to identify the MountTarget.
/// UUID v4 used to identify the MountTarget.
/// The mount target's IPv4 address.
/// The SMB server's Fully Qualified Domain Name, FQDN.
- /// A new instance for mocking.
- public static NetAppVolumeMountTarget NetAppVolumeMountTarget(Guid? mountTargetId = null, Guid fileSystemId = default, IPAddress ipAddress = null, string smbServerFqdn = null)
+ /// A new instance for mocking.
+ public static MountTargetProperties MountTargetProperties(string mountTargetId = default, string fileSystemId = default, string ipAddress = default, string smbServerFqdn = default)
{
- return new NetAppVolumeMountTarget(mountTargetId, fileSystemId, ipAddress, smbServerFqdn, serializedAdditionalRawData: null);
+ return new MountTargetProperties(mountTargetId, fileSystemId, ipAddress, smbServerFqdn, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
+ /// Replication properties.
/// Id.
/// Indicates whether the local volume is the source or destination for the Volume Replication.
/// Schedule.
@@ -599,1935 +357,2214 @@ public static NetAppVolumeMountTarget NetAppVolumeMountTarget(Guid? mountTargetI
/// Contains human-readable instructions on what the next step is to finish the external replication setup.
/// The mirror state property describes the current status of data replication for a replication. It provides insight into whether the data is actively being mirrored, if the replication process has been paused, or if it has yet to be initialized.
/// The status of the Volume Replication.
- /// A new instance for mocking.
- public static NetAppReplicationObject NetAppReplicationObject(string replicationId = null, NetAppEndpointType? endpointType = null, NetAppReplicationSchedule? replicationSchedule = null, ResourceIdentifier remoteVolumeResourceId = null, RemotePath remotePath = null, string remoteVolumeRegion = null, IEnumerable destinationReplications = null, ExternalReplicationSetupStatus? externalReplicationSetupStatus = null, string externalReplicationSetupInfo = null, NetAppMirrorState? mirrorState = null, NetAppRelationshipStatus? relationshipStatus = null)
+ /// A new instance for mocking.
+ public static ReplicationObject ReplicationObject(string replicationId = default, NetAppEndpointType? endpointType = default, ReplicationSchedule? replicationSchedule = default, string remoteVolumeResourceId = default, RemotePath remotePath = default, string remoteVolumeRegion = default, IEnumerable destinationReplications = default, ExternalReplicationSetupStatus? externalReplicationSetupStatus = default, string externalReplicationSetupInfo = default, NetAppMirrorState? mirrorState = default, VolumeReplicationRelationshipStatus? relationshipStatus = default)
{
- destinationReplications ??= new List();
+ destinationReplications ??= new ChangeTrackingList();
- return new NetAppReplicationObject(
+ return new ReplicationObject(
replicationId,
endpointType,
replicationSchedule,
remoteVolumeResourceId,
remotePath,
remoteVolumeRegion,
- destinationReplications?.ToList(),
+ destinationReplications.ToList(),
externalReplicationSetupStatus,
externalReplicationSetupInfo,
mirrorState,
relationshipStatus,
- serializedAdditionalRawData: null);
+ additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
+ /// Destination replication properties.
/// The resource ID of the remote volume.
/// Indicates whether the replication is cross zone or cross region.
/// The remote region for the destination volume.
/// The remote zone for the destination volume.
- /// A new instance for mocking.
- public static NetAppDestinationReplication NetAppDestinationReplication(ResourceIdentifier resourceId = null, NetAppReplicationType? replicationType = null, string region = null, string zone = null)
+ /// A new instance for mocking.
+ public static DestinationReplication DestinationReplication(ResourceIdentifier resourceId = default, ReplicationType? replicationType = default, string region = default, string zone = default)
{
- return new NetAppDestinationReplication(resourceId, replicationType, region, zone, serializedAdditionalRawData: null);
+ return new DestinationReplication(resourceId, replicationType, region, zone, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
- /// Has relocation been requested for this volume.
- /// Has relocation finished and is ready to be cleaned up.
- /// A new instance for mocking.
- public static NetAppVolumeRelocationProperties NetAppVolumeRelocationProperties(bool? isRelocationRequested = null, bool? isReadyToBeFinalized = null)
+ /// Volume relocation properties.
+ /// Has relocation been requested for this volume.
+ /// Has relocation finished and is ready to be cleaned up.
+ /// A new instance for mocking.
+ public static VolumeRelocationProperties VolumeRelocationProperties(bool? relocationRequested = default, bool? readyToBeFinalized = default)
{
- return new NetAppVolumeRelocationProperties(isRelocationRequested, isReadyToBeFinalized, serializedAdditionalRawData: null);
+ return new VolumeRelocationProperties(relocationRequested, readyToBeFinalized, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// The tags.
- /// The location.
- /// The service level of the file system.
- /// Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB. For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB. Values expressed in bytes as multiples of 1 GiB.
- /// Set of export policy rules.
- /// Set of protocol types, default NFSv3, CIFS for SMB protocol.
- /// Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
+ /// Advanced Ransomware Protection reports (ARP) settings.
+ /// The desired value of the Advanced Ransomware Protection feature state available to the volume.
+ /// The actual state of the Advanced Ransomware Protection feature currently active on the volume.
+ /// A new instance for mocking.
+ public static RansomwareProtectionSettings RansomwareProtectionSettings(DesiredRansomwareProtectionState? desiredRansomwareProtectionState = default, ActualRansomwareProtectionState? actualRansomwareProtectionState = default)
+ {
+ return new RansomwareProtectionSettings(desiredRansomwareProtectionState, actualRansomwareProtectionState, additionalBinaryDataProperties: null);
+ }
+
+ /// Resource location.
+ /// Resource Id.
+ /// Resource name.
+ /// Resource type.
+ /// Azure lifecycle management.
+ /// Volume group details.
+ /// A new instance for mocking.
+ public static VolumeGroup VolumeGroup(string location = default, string id = default, string name = default, string @type = default, string provisioningState = default, VolumeGroupMetaData groupMetaData = default)
+ {
+ return new VolumeGroup(
+ location,
+ id,
+ name,
+ @type,
+ provisioningState is null || groupMetaData is null ? default : new VolumeGroupListProperties(provisioningState, groupMetaData, new Dictionary()),
+ additionalBinaryDataProperties: null);
+ }
+
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ /// UUID v4 used to identify the Backup.
+ /// The creation date of the backup.
+ /// The snapshot creation date of the backup.
+ /// The completion date of the backup.
+ /// Azure lifecycle management.
+ /// Size of backup in bytes.
+ /// Label for backup.
+ /// Type of backup Manual or Scheduled.
+ /// Failure reason.
+ /// ResourceId used to identify the Volume.
+ /// Manual backup an already existing snapshot. This will always be false for scheduled backups and true/false for manual backups.
+ /// The name of the snapshot.
+ /// ResourceId used to identify the backup policy.
+ /// Specifies if the backup is for a large volume.
+ /// A new instance for mocking.
+ public static BackupData BackupData(ResourceIdentifier id = default, string name = default, ResourceType resourceType = default, SystemData systemData = default, string backupId = default, DateTimeOffset? createdOn = default, DateTimeOffset? snapshotCreationOn = default, DateTimeOffset? completionOn = default, string provisioningState = default, long? size = default, string label = default, NetAppBackupType? backupType = default, string failureReason = default, ResourceIdentifier volumeResourceId = default, bool? useExistingSnapshot = default, string snapshotName = default, ResourceIdentifier backupPolicyResourceId = default, bool? isLargeVolume = default)
+ {
+ return new BackupData(
+ id,
+ name,
+ resourceType,
+ systemData,
+ additionalBinaryDataProperties: null,
+ backupId is null || createdOn is null || snapshotCreationOn is null || completionOn is null || provisioningState is null || size is null || label is null || backupType is null || failureReason is null || volumeResourceId is null || useExistingSnapshot is null || snapshotName is null || backupPolicyResourceId is null || isLargeVolume is null ? default : new BackupProperties(
+ backupId,
+ createdOn,
+ snapshotCreationOn,
+ completionOn,
+ provisioningState,
+ size,
+ label,
+ backupType,
+ failureReason,
+ volumeResourceId,
+ useExistingSnapshot,
+ snapshotName,
+ backupPolicyResourceId,
+ isLargeVolume,
+ new Dictionary()));
+ }
+
+ /// Backup status.
+ /// Backup health status.
+ /// Status of the backup mirror relationship.
+ /// The status of the backup.
+ /// Reason for the unhealthy backup relationship.
+ /// Displays error message if the backup is in an error state.
+ /// Displays the last transfer size.
+ /// Displays the last transfer type.
+ /// Displays the total bytes transferred.
+ /// Displays the total number of bytes transferred for the ongoing operation.
+ /// A new instance for mocking.
+ public static NetAppVolumeBackupStatus NetAppVolumeBackupStatus(bool? healthy = default, VolumeBackupRelationshipStatus? relationshipStatus = default, NetAppMirrorState? mirrorState = default, string unhealthyReason = default, string errorMessage = default, long? lastTransferSize = default, string lastTransferType = default, long? totalTransferBytes = default, long? transferProgressBytes = default)
+ {
+ return new NetAppVolumeBackupStatus(
+ healthy,
+ relationshipStatus,
+ mirrorState,
+ unhealthyReason,
+ errorMessage,
+ lastTransferSize,
+ lastTransferType,
+ totalTransferBytes,
+ transferProgressBytes,
+ additionalBinaryDataProperties: null);
+ }
+
+ /// Restore status.
+ /// Restore health status.
+ /// Status of the restore SnapMirror relationship.
+ /// The status of the restore.
+ /// Reason for the unhealthy restore relationship.
+ /// Displays error message if the restore is in an error state.
+ /// Displays the total bytes transferred.
+ /// A new instance for mocking.
+ public static NetAppRestoreStatus NetAppRestoreStatus(bool? healthy = default, VolumeRestoreRelationshipStatus? relationshipStatus = default, NetAppMirrorState? mirrorState = default, string unhealthyReason = default, string errorMessage = default, long? totalTransferBytes = default)
+ {
+ return new NetAppRestoreStatus(
+ healthy,
+ relationshipStatus,
+ mirrorState,
+ unhealthyReason,
+ errorMessage,
+ totalTransferBytes,
+ additionalBinaryDataProperties: null);
+ }
+
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ /// Resource tags.
+ /// The geo-location where the resource lives.
+ /// Unique FileSystem Identifier.
+ /// A unique file path for the volume. Used when creating mount targets.
+ /// The service level of the file system.
+ ///
+ /// Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB.
+ /// For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB.
+ /// For extra large volumes, valid values are in the range 2400GiB to 7200TiB. Values expressed in bytes as multiples of 1 GiB.
+ ///
+ /// Set of protocol types, default NFSv3, CIFS for SMB protocol.
+ /// Azure lifecycle management.
+ /// Resource identifier used to identify the Snapshot.
+ /// If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false.
+ /// Resource identifier used to identify the Backup.
+ /// Unique Baremetal Tenant Identifier.
+ /// The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes.
+ /// The original value of the network features type available to the volume at the time it was created.
+ /// The effective value of the network features type available to the volume, or current effective state of update.
+ /// Network Sibling Set ID for the the group of volumes sharing networking resources.
+ /// Provides storage to network proximity information for the volume.
+ /// List of mount targets.
+ /// What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection. For creating clone volume, set type to ShortTermClone.
+ /// DataProtection type volumes include an object containing details of the replication.
+ /// While auto splitting the short term clone volume, if the parent pool does not have enough space to accommodate the volume after split, it will be automatically resized, which will lead to increased billing. To accept capacity pool size auto grow and create a short term clone volume, set the property as accepted.
+ /// Restoring.
+ /// If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true).
+ /// Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later.
+ /// The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol.
+ /// Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later.
+ /// Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume.
+ /// Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume.
+ /// Enables continuously available share property for smb volume. Only applicable for SMB volume.
+ /// Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
+ /// Actual throughput in MiB/s for auto qosType volumes calculated based on size and serviceLevel.
+ /// Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault'.
+ /// The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'.
+ /// Specifies whether LDAP is enabled or not for a given NFS volume.
+ /// Specifies the type of LDAP server for a given NFS volume.
+ /// Specifies whether Cool Access(tiering) is enabled for the volume.
+ /// Specifies the number of days after which data that is not accessed by clients will be tiered.
+ ///
+ /// coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
+ /// Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
+ /// OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
+ /// Never - No client-driven data is pulled from cool tier to standard storage.
+ ///
+ /// coolAccessTieringPolicy determines which cold data blocks are moved to cool tier. The possible values for this field are: Auto - Moves cold user data blocks in both the Snapshot copies and the active file system to the cool tier tier. This policy is the default. SnapshotOnly - Moves user data blocks of the Volume Snapshot copies that are not associated with the active file system to the cool tier.
+ /// UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users.
+ /// When a volume is being restored from another volume's snapshot, will show the percentage completion of this cloning process. When this value is empty/null there is no cloning process currently happening on this volume. This value will update every 5 minutes during cloning.
+ /// Flag indicating whether file access logs are enabled for the volume, based on active diagnostic settings present on the volume.
+ /// Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose.
+ /// Data store resource unique identifier.
+ /// Specifies if default quota is enabled for the volume.
+ /// Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies .
+ /// Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies.
+ /// Maximum number of files allowed. Needs a service request in order to be changed. Only allowed to be changed if volume quota is more than 4TiB.
+ /// Volume Group Name.
+ /// Pool Resource Id used in case of creating a volume through volume group.
+ /// Proximity placement group associated with the volume.
+ /// T2 network information.
+ /// Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log.
+ /// Specifies if the volume is encrypted or not. Only available on volumes created or updated after 2022-01-01.
+ /// Application specific placement rules for the particular volume.
+ /// Flag indicating whether subvolume operations are enabled on the volume.
+ /// The availability zone where the volume is provisioned. This refers to the logical availability zone where the volume resides.
+ /// Specifies whether volume is a Large Volume or Regular Volume.
+ ///
+ /// Specifies the type of the Large Volume. When set to 'LargeVolume', the large volume is created with standard configuration.
+ /// If it is set to 'ExtraLargeVolume7Dot2PiB', the extra large volume is created with higher capacity limit 7.2PiB with cool access enabled,
+ /// delivering higher capacity limit with lower costs.
+ ///
+ /// Id of the snapshot or backup that the volume is restored from.
+ /// Space shared by short term clone volume with parent volume in bytes.
+ /// Language supported for volume.
+ /// Specifies whether the volume operates in Breakthrough Mode.
+ /// Export policy rule.
+ /// "If etag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.").
+ /// The availability zones.
+ /// or is null.
+ /// A new instance for mocking.
+ public static VolumeData VolumeData(ResourceIdentifier id = default, string name = default, ResourceType resourceType = default, SystemData systemData = default, IDictionary tags = default, AzureLocation location = default, string fileSystemId = default, string creationToken = default, NetAppFileServiceLevel? serviceLevel = default, long? usageThreshold = default, IList protocolTypes = default, string provisioningState = default, ResourceIdentifier snapshotId = default, bool? deleteBaseSnapshot = default, ResourceIdentifier backupId = default, string baremetalTenantId = default, string subnetId = default, NetworkFeatures? networkFeatures = default, NetworkFeatures? effectiveNetworkFeatures = default, string networkSiblingSetId = default, VolumeStorageToNetworkProximity? storageToNetworkProximity = default, IReadOnlyList mountTargets = default, string volumeType = default, VolumePropertiesDataProtection dataProtection = default, AcceptGrowCapacityPoolForShortTermCloneSplit? acceptGrowCapacityPoolForShortTermCloneSplit = default, bool? isRestoring = default, bool? snapshotDirectoryVisible = default, bool? kerberosEnabled = default, SecurityStyle? securityStyle = default, bool? smbEncryption = default, SmbAccessBasedEnumeration? smbAccessBasedEnumeration = default, SmbNonBrowsable? smbNonBrowsable = default, bool? smbContinuouslyAvailable = default, float? throughputMibps = default, float? actualThroughputMibps = default, EncryptionKeySource? encryptionKeySource = default, string keyVaultPrivateEndpointResourceId = default, bool? ldapEnabled = default, LdapServerType? ldapServerType = default, bool? coolAccess = default, int? coolnessPeriod = default, CoolAccessRetrievalPolicy? coolAccessRetrievalPolicy = default, CoolAccessTieringPolicy? coolAccessTieringPolicy = default, string unixPermissions = default, int? cloneProgress = default, FileAccessLogs? fileAccessLogs = default, AvsDataStore? avsDataStore = default, IReadOnlyList dataStoreResourceId = default, bool? isDefaultQuotaEnabled = default, long? defaultUserQuotaInKiBs = default, long? defaultGroupQuotaInKiBs = default, long? maximumNumberOfFiles = default, string volumeGroupName = default, string capacityPoolResourceId = default, string proximityPlacementGroup = default, string t2Network = default, string volumeSpecName = default, bool? encrypted = default, IList placementRules = default, EnableSubvolumes? enableSubvolumes = default, string provisionedAvailabilityZone = default, bool? isLargeVolume = default, LargeVolumeType? largeVolumeType = default, string originatingResourceId = default, long? inheritedSizeInBytes = default, VolumeLanguage? language = default, BreakthroughMode? breakthroughMode = default, IList exportRules = default, string etag = default, IEnumerable zones = default)
+ {
+ tags ??= new ChangeTrackingDictionary();
+ zones ??= new ChangeTrackingList();
+
+ return new VolumeData(
+ id,
+ name,
+ resourceType,
+ systemData,
+ additionalBinaryDataProperties: null,
+ tags,
+ location,
+ fileSystemId is null || creationToken is null || serviceLevel is null || usageThreshold is null || protocolTypes is null || provisioningState is null || snapshotId is null || deleteBaseSnapshot is null || backupId is null || baremetalTenantId is null || subnetId is null || networkFeatures is null || effectiveNetworkFeatures is null || networkSiblingSetId is null || storageToNetworkProximity is null || mountTargets is null || volumeType is null || dataProtection is null || acceptGrowCapacityPoolForShortTermCloneSplit is null || isRestoring is null || snapshotDirectoryVisible is null || kerberosEnabled is null || securityStyle is null || smbEncryption is null || smbAccessBasedEnumeration is null || smbNonBrowsable is null || smbContinuouslyAvailable is null || throughputMibps is null || actualThroughputMibps is null || encryptionKeySource is null || keyVaultPrivateEndpointResourceId is null || ldapEnabled is null || ldapServerType is null || coolAccess is null || coolnessPeriod is null || coolAccessRetrievalPolicy is null || coolAccessTieringPolicy is null || unixPermissions is null || cloneProgress is null || fileAccessLogs is null || avsDataStore is null || dataStoreResourceId is null || isDefaultQuotaEnabled is null || defaultUserQuotaInKiBs is null || defaultGroupQuotaInKiBs is null || maximumNumberOfFiles is null || volumeGroupName is null || capacityPoolResourceId is null || proximityPlacementGroup is null || t2Network is null || volumeSpecName is null || encrypted is null || placementRules is null || enableSubvolumes is null || provisionedAvailabilityZone is null || isLargeVolume is null || largeVolumeType is null || originatingResourceId is null || inheritedSizeInBytes is null || language is null || breakthroughMode is null || exportRules is null ? default : new VolumeProperties(
+ fileSystemId,
+ creationToken,
+ serviceLevel,
+ usageThreshold.Value,
+ new NetAppVolumeExportPolicyRule(exportRules, new Dictionary()),
+ protocolTypes,
+ provisioningState,
+ snapshotId,
+ deleteBaseSnapshot,
+ backupId,
+ baremetalTenantId,
+ subnetId,
+ networkFeatures,
+ effectiveNetworkFeatures,
+ networkSiblingSetId,
+ storageToNetworkProximity,
+ mountTargets,
+ volumeType,
+ dataProtection,
+ acceptGrowCapacityPoolForShortTermCloneSplit,
+ isRestoring,
+ snapshotDirectoryVisible,
+ kerberosEnabled,
+ securityStyle,
+ smbEncryption,
+ smbAccessBasedEnumeration,
+ smbNonBrowsable,
+ smbContinuouslyAvailable,
+ throughputMibps,
+ actualThroughputMibps,
+ encryptionKeySource,
+ keyVaultPrivateEndpointResourceId,
+ ldapEnabled,
+ ldapServerType,
+ coolAccess,
+ coolnessPeriod,
+ coolAccessRetrievalPolicy,
+ coolAccessTieringPolicy,
+ unixPermissions,
+ cloneProgress,
+ fileAccessLogs,
+ avsDataStore,
+ dataStoreResourceId,
+ isDefaultQuotaEnabled,
+ defaultUserQuotaInKiBs,
+ defaultGroupQuotaInKiBs,
+ maximumNumberOfFiles,
+ volumeGroupName,
+ capacityPoolResourceId,
+ proximityPlacementGroup,
+ t2Network,
+ volumeSpecName,
+ encrypted,
+ placementRules,
+ enableSubvolumes,
+ provisionedAvailabilityZone,
+ isLargeVolume,
+ largeVolumeType,
+ originatingResourceId,
+ inheritedSizeInBytes,
+ language,
+ breakthroughMode,
+ new Dictionary()),
+ etag,
+ zones.ToList());
+ }
+
+ /// Resource location.
+ /// Resource Id.
+ /// Resource name.
+ /// Resource type.
+ /// Resource tags.
+ /// The service level of the file system.
+ ///
+ /// Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB.
+ /// For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB.
+ /// For extra large volumes, valid values are in the range 2400GiB to 7200TiB. Values expressed in bytes as multiples of 1 GiB.
+ ///
+ /// Set of protocol types, default NFSv3, CIFS for SMB protocol.
+ /// Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
/// DataProtection type volumes include an object containing details of the replication.
/// Specifies if default quota is enabled for the volume.
/// Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies .
/// Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies.
/// UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users.
- /// Specifies whether Cool Access(tiering) is enabled for the volume.
+ /// Specifies whether Cool Access(tiering) is enabled for the volume.
/// Specifies the number of days after which data that is not accessed by clients will be tiered.
///
/// coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
- /// Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
- /// OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
- /// Never - No client-driven data is pulled from cool tier to standard storage.
+ /// Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
+ /// OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
+ /// Never - No client-driven data is pulled from cool tier to standard storage.
///
/// coolAccessTieringPolicy determines which cold data blocks are moved to cool tier. The possible values for this field are: Auto - Moves cold user data blocks in both the Snapshot copies and the active file system to the cool tier tier. This policy is the default. SnapshotOnly - Moves user data blocks of the Volume Snapshot copies that are not associated with the active file system to the cool tier.
- /// If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots.
+ /// If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots.
/// Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume.
/// Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume.
- /// A new instance for mocking.
- public static NetAppVolumePatch NetAppVolumePatch(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IDictionary tags = null, AzureLocation location = default, NetAppFileServiceLevel? serviceLevel = null, long? usageThreshold = null, IEnumerable exportRules = null, IEnumerable protocolTypes = null, float? throughputMibps = null, NetAppVolumePatchDataProtection dataProtection = null, bool? isDefaultQuotaEnabled = null, long? defaultUserQuotaInKiBs = null, long? defaultGroupQuotaInKiBs = null, string unixPermissions = null, bool? isCoolAccessEnabled = null, int? coolnessPeriod = null, CoolAccessRetrievalPolicy? coolAccessRetrievalPolicy = null, CoolAccessTieringPolicy? coolAccessTieringPolicy = null, bool? isSnapshotDirectoryVisible = null, SmbAccessBasedEnumeration? smbAccessBasedEnumeration = null, SmbNonBrowsable? smbNonBrowsable = null)
+ /// Export policy rule.
+ /// A new instance for mocking.
+ public static VolumePatch VolumePatch(string location = default, string id = default, string name = default, string @type = default, IDictionary tags = default, NetAppFileServiceLevel? serviceLevel = default, long? usageThreshold = default, IList protocolTypes = default, float? throughputMibps = default, VolumePatchPropertiesDataProtection dataProtection = default, bool? isDefaultQuotaEnabled = default, long? defaultUserQuotaInKiBs = default, long? defaultGroupQuotaInKiBs = default, string unixPermissions = default, bool? coolAccess = default, int? coolnessPeriod = default, CoolAccessRetrievalPolicy? coolAccessRetrievalPolicy = default, CoolAccessTieringPolicy? coolAccessTieringPolicy = default, bool? snapshotDirectoryVisible = default, SmbAccessBasedEnumeration? smbAccessBasedEnumeration = default, SmbNonBrowsable? smbNonBrowsable = default, IList exportRules = default)
{
- tags ??= new Dictionary();
- exportRules ??= new List();
- protocolTypes ??= new List();
+ tags ??= new ChangeTrackingDictionary();
- return new NetAppVolumePatch(
+ return new VolumePatch(
+ location,
id,
name,
- resourceType,
- systemData,
+ @type,
tags,
- location,
- serviceLevel,
- usageThreshold,
- exportRules != null ? new VolumePatchPropertiesExportPolicy(exportRules?.ToList(), serializedAdditionalRawData: null) : null,
- protocolTypes?.ToList(),
- throughputMibps,
- dataProtection,
- isDefaultQuotaEnabled,
- defaultUserQuotaInKiBs,
- defaultGroupQuotaInKiBs,
- unixPermissions,
- isCoolAccessEnabled,
- coolnessPeriod,
- coolAccessRetrievalPolicy,
- coolAccessTieringPolicy,
- isSnapshotDirectoryVisible,
- smbAccessBasedEnumeration,
- smbNonBrowsable,
- serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
+ serviceLevel is null || usageThreshold is null || protocolTypes is null || throughputMibps is null || dataProtection is null || isDefaultQuotaEnabled is null || defaultUserQuotaInKiBs is null || defaultGroupQuotaInKiBs is null || unixPermissions is null || coolAccess is null || coolnessPeriod is null || coolAccessRetrievalPolicy is null || coolAccessTieringPolicy is null || snapshotDirectoryVisible is null || smbAccessBasedEnumeration is null || smbNonBrowsable is null || exportRules is null ? default : new VolumePatchProperties(
+ serviceLevel,
+ usageThreshold,
+ new VolumePatchPropertiesExportPolicy(exportRules, new Dictionary()),
+ protocolTypes,
+ throughputMibps,
+ dataProtection,
+ isDefaultQuotaEnabled,
+ defaultUserQuotaInKiBs,
+ defaultGroupQuotaInKiBs,
+ unixPermissions,
+ coolAccess,
+ coolnessPeriod,
+ coolAccessRetrievalPolicy,
+ coolAccessTieringPolicy,
+ snapshotDirectoryVisible,
+ smbAccessBasedEnumeration,
+ smbNonBrowsable,
+ new Dictionary()),
+ additionalBinaryDataProperties: null);
+ }
+
+ /// Get group Id list for LDAP User request.
+ /// username is required to fetch the group to which user is part of.
+ /// A new instance for mocking.
+ public static GetGroupIdListForLdapUserRequest GetGroupIdListForLdapUserRequest(string username = default)
+ {
+ return new GetGroupIdListForLdapUserRequest(username, additionalBinaryDataProperties: null);
+ }
+
+ /// Group Id list for Ldap user.
/// Group Id list.
- /// A new instance for mocking.
- public static GetGroupIdListForLdapUserResult GetGroupIdListForLdapUserResult(IEnumerable groupIdsForLdapUser = null)
+ /// A new instance for mocking.
+ public static GetGroupIdListForLdapUserResponse GetGroupIdListForLdapUserResponse(IEnumerable groupIdsForLdapUser = default)
{
- groupIdsForLdapUser ??= new List();
+ groupIdsForLdapUser ??= new ChangeTrackingList();
- return new GetGroupIdListForLdapUserResult(groupIdsForLdapUser?.ToList(), serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// List of volume quota report records.
- /// A new instance for mocking.
- public static NetAppVolumeQuotaReportListResult NetAppVolumeQuotaReportListResult(IEnumerable value = null)
- {
- value ??= new List();
-
- return new NetAppVolumeQuotaReportListResult(value?.ToList(), serializedAdditionalRawData: null);
- }
-
- /// Initializes a new instance of .
- /// Type of quota.
- /// UserID/GroupID/SID based on the quota target type. UserID and groupID can be found by running ‘id’ or ‘getent’ command for the user or group and SID can be found by running <wmic useraccount where name='user-name' get sid>.
- /// Specifies the current usage in kibibytes for the user/group quota.
- /// Specifies the total size limit in kibibytes for the user/group quota.
- /// Percentage of used size compared to total size.
- /// Flag to indicate whether the quota is derived from default quota.
- /// A new instance for mocking.
- public static NetAppVolumeQuotaReport NetAppVolumeQuotaReport(NetAppVolumeQuotaType? quotaType = null, string quotaTarget = null, long? quotaLimitUsedInKiBs = null, long? quotaLimitTotalInKiBs = null, float? percentageUsed = null, bool? isDerivedQuota = null)
- {
- return new NetAppVolumeQuotaReport(
- quotaType,
- quotaTarget,
- quotaLimitUsedInKiBs,
- quotaLimitTotalInKiBs,
- percentageUsed,
- isDerivedQuota,
- serializedAdditionalRawData: null);
+ return new GetGroupIdListForLdapUserResponse(groupIdsForLdapUser.ToList(), additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
- /// Replication health check.
- /// Status of the mirror relationship.
- /// The mirror state property describes the current status of data replication for a replication. It provides insight into whether the data is actively being mirrored, if the replication process has been paused, or if it has yet to be initialized.
+ /// Replication status.
+ /// Replication health check.
+ /// Status of the mirror relationship.
+ /// The status of the replication.
/// The progress of the replication.
/// Displays error message if the replication is in an error state.
- /// A new instance for mocking.
- public static NetAppVolumeReplicationStatus NetAppVolumeReplicationStatus(bool? isHealthy = null, VolumeReplicationRelationshipStatus? volumeReplicationRelationshipStatus = null, NetAppMirrorState? mirrorState = null, string totalProgress = null, string errorMessage = null)
+ /// A new instance for mocking.
+ public static ReplicationStatus ReplicationStatus(bool? healthy = default, VolumeReplicationRelationshipStatus? relationshipStatus = default, NetAppMirrorState? mirrorState = default, string totalProgress = default, string errorMessage = default)
{
- return new NetAppVolumeReplicationStatus(
- isHealthy,
- volumeReplicationRelationshipStatus,
+ return new ReplicationStatus(
+ healthy,
+ relationshipStatus,
mirrorState,
totalProgress,
errorMessage,
- serializedAdditionalRawData: null);
+ additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
+ /// Replication properties.
/// UUID v4 used to identify the replication.
/// Indicates whether the local volume is the source or destination for the Volume Replication.
/// Schedule.
/// The resource ID of the remote volume.
/// The remote region for the other end of the Volume Replication.
- /// A new instance for mocking.
- public static NetAppVolumeReplication NetAppVolumeReplication(string replicationId = null, NetAppEndpointType? endpointType = null, NetAppReplicationSchedule? replicationSchedule = null, ResourceIdentifier remoteVolumeResourceId = null, string remoteVolumeRegion = null)
+ /// The status of the replication.
+ /// Replication creation time.
+ /// Replication deletion time.
+ /// A new instance for mocking.
+ public static Replication Replication(string replicationId = default, NetAppEndpointType? endpointType = default, ReplicationSchedule? replicationSchedule = default, string remoteVolumeResourceId = default, string remoteVolumeRegion = default, ReplicationMirrorState? mirrorState = default, DateTimeOffset? replicationCreationOn = default, DateTimeOffset? replicationDeletionOn = default)
{
- return new NetAppVolumeReplication(
+ return new Replication(
replicationId,
endpointType,
replicationSchedule,
remoteVolumeResourceId,
remoteVolumeRegion,
- serializedAdditionalRawData: null);
+ mirrorState,
+ replicationCreationOn,
+ replicationDeletionOn,
+ additionalBinaryDataProperties: null);
+ }
+
+ /// Source Cluster properties for a cluster peer request.
+ /// A list of IC-LIF IPs that can be used to connect to the On-prem cluster.
+ /// A new instance for mocking.
+ public static PeerClusterForVolumeMigrationRequest PeerClusterForVolumeMigrationRequest(IEnumerable peerIpAddresses = default)
+ {
+ peerIpAddresses ??= new ChangeTrackingList();
+
+ return new PeerClusterForVolumeMigrationRequest(peerIpAddresses.ToList(), additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
+ /// Information about cluster peering process.
/// A command that needs to be run on the external ONTAP to accept cluster peering. Will only be present if <code>clusterPeeringStatus</code> is <code>pending</code>.
- /// A new instance for mocking.
- public static ClusterPeerCommandResult ClusterPeerCommandResult(string peerAcceptCommand = null)
+ /// A new instance for mocking.
+ public static ClusterPeerCommandResponse ClusterPeerCommandResponse(string peerAcceptCommand = default)
{
- return new ClusterPeerCommandResult(peerAcceptCommand, serializedAdditionalRawData: null);
+ return new ClusterPeerCommandResponse(peerAcceptCommand, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
+ /// Information about svm peering process.
/// A command that needs to be run on the external ONTAP to accept svm peering. Will only be present if <code>svmPeeringStatus</code> is <code>pending</code>.
- /// A new instance for mocking.
- public static SvmPeerCommandResult SvmPeerCommandResult(string svmPeeringCommand = null)
+ /// A new instance for mocking.
+ public static SvmPeerCommandResponse SvmPeerCommandResponse(string svmPeeringCommand = default)
{
- return new SvmPeerCommandResult(svmPeeringCommand, serializedAdditionalRawData: null);
+ return new SvmPeerCommandResponse(svmPeeringCommand, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of .
- /// The id.
- /// The name.
- /// The resourceType.
- /// The systemData.
- /// Resource location.
+ /// Pool change request.
+ /// Resource id of the pool to move volume to.
+ /// A new instance for mocking.
+ public static PoolChangeRequest PoolChangeRequest(string newPoolResourceId = default)
+ {
+ return new PoolChangeRequest(newPoolResourceId, additionalBinaryDataProperties: null);
+ }
+
+ /// Quota Report for volume.
+ /// List of quota reports.
+ /// A new instance for mocking.
+ public static ListQuotaReportResponse ListQuotaReportResponse(IEnumerable value = default)
+ {
+ value ??= new ChangeTrackingList();
+
+ return new ListQuotaReportResponse(value.ToList(), additionalBinaryDataProperties: null);
+ }
+
+ /// Quota report record properties.
+ /// Type of quota.
+ /// UserID/GroupID/SID based on the quota target type. UserID and groupID can be found by running ‘id’ or ‘getent’ command for the user or group and SID can be found by running <wmic useraccount where name='user-name' get sid>.
+ /// Specifies the current usage in kibibytes for the user/group quota.
+ /// Specifies the total size limit in kibibytes for the user/group quota.
+ /// Percentage of used size compared to total size.
+ /// Flag to indicate whether the quota is derived from default quota.
+ /// A new instance for mocking.
+ public static QuotaReport QuotaReport(Type? quotaType = default, string quotaTarget = default, long? quotaLimitUsedInKiBs = default, long? quotaLimitTotalInKiBs = default, float? percentageUsed = default, bool? isDerivedQuota = default)
+ {
+ return new QuotaReport(
+ quotaType,
+ quotaTarget,
+ quotaLimitUsedInKiBs,
+ quotaLimitTotalInKiBs,
+ percentageUsed,
+ isDerivedQuota,
+ additionalBinaryDataProperties: null);
+ }
+
+ /// 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. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".
+ /// Azure Resource Manager metadata containing createdBy and modifiedBy information.
/// UUID v4 used to identify the Snapshot.
/// The creation date of the snapshot.
/// Azure lifecycle management.
- /// A new instance for mocking.
- public static NetAppVolumeSnapshotData NetAppVolumeSnapshotData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, AzureLocation location = default, string snapshotId = null, DateTimeOffset? created = null, string provisioningState = null)
+ /// Resource location.
+ /// A new instance for mocking.
+ public static SnapshotData SnapshotData(ResourceIdentifier id = default, string name = default, ResourceType resourceType = default, SystemData systemData = default, string snapshotId = default, DateTimeOffset? created = default, string provisioningState = default, string location = default)
{
- return new NetAppVolumeSnapshotData(
+ return new SnapshotData(
id,
name,
resourceType,
systemData,
- location,
- snapshotId,
- created,
- provisioningState,
- serializedAdditionalRawData: null);
+ additionalBinaryDataProperties: null,
+ snapshotId is null || created is null || provisioningState is null ? default : new SnapshotProperties(snapshotId, created, provisioningState, new Dictionary()),
+ location);
+ }
+
+ /// Restore payload for Single File Snapshot Restore.
+ /// List of files to be restored.
+ /// Destination folder where the files will be restored.
+ /// A new instance for mocking.
+ public static SnapshotRestoreFiles SnapshotRestoreFiles(IEnumerable filePaths = default, string destinationPath = default)
+ {
+ filePaths ??= new ChangeTrackingList();
+
+ return new SnapshotRestoreFiles(filePaths.ToList(), destinationPath, additionalBinaryDataProperties: null);
}
- /// Initializes a new instance of