diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/Azure.ResourceManager.Migrate.sln b/sdk/migrate/Azure.ResourceManager.Migrate/Azure.ResourceManager.Migrate.sln
new file mode 100644
index 000000000000..495165badd49
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/Azure.ResourceManager.Migrate.sln
@@ -0,0 +1,56 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29709.97
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Azure.ResourceManager.Migrate.Samples", "samples\Azure.ResourceManager.Migrate.Samples.csproj", "{7A2DFF15-5746-49F4-BD0F-C6C35337088A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.ResourceManager.Migrate", "src\Azure.ResourceManager.Migrate.csproj", "{28FF4005-4467-4E36-92E7-DEA27DEB1519}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.ResourceManager.Migrate.Tests", "tests\Azure.ResourceManager.Migrate.Tests.csproj", "{1F1CD1D4-9932-4B73-99D8-C252A67D4B46}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {B0C276D1-2930-4887-B29A-D1A33E7009A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B0C276D1-2930-4887-B29A-D1A33E7009A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B0C276D1-2930-4887-B29A-D1A33E7009A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B0C276D1-2930-4887-B29A-D1A33E7009A2}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8E9A77AC-792A-4432-8320-ACFD46730401}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8E9A77AC-792A-4432-8320-ACFD46730401}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8E9A77AC-792A-4432-8320-ACFD46730401}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8E9A77AC-792A-4432-8320-ACFD46730401}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7A2DFF15-5746-49F4-BD0F-C6C35337088A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7A2DFF15-5746-49F4-BD0F-C6C35337088A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7A2DFF15-5746-49F4-BD0F-C6C35337088A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7A2DFF15-5746-49F4-BD0F-C6C35337088A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A4241C1F-A53D-474C-9E4E-075054407E74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A4241C1F-A53D-474C-9E4E-075054407E74}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A4241C1F-A53D-474C-9E4E-075054407E74}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A4241C1F-A53D-474C-9E4E-075054407E74}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FA8BD3F1-8616-47B6-974C-7576CDF4717E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FA8BD3F1-8616-47B6-974C-7576CDF4717E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FA8BD3F1-8616-47B6-974C-7576CDF4717E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FA8BD3F1-8616-47B6-974C-7576CDF4717E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {85677AD3-C214-42FA-AE6E-49B956CAC8DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {85677AD3-C214-42FA-AE6E-49B956CAC8DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {85677AD3-C214-42FA-AE6E-49B956CAC8DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {85677AD3-C214-42FA-AE6E-49B956CAC8DC}.Release|Any CPU.Build.0 = Release|Any CPU
+ {28FF4005-4467-4E36-92E7-DEA27DEB1519}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {28FF4005-4467-4E36-92E7-DEA27DEB1519}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {28FF4005-4467-4E36-92E7-DEA27DEB1519}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {28FF4005-4467-4E36-92E7-DEA27DEB1519}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1F1CD1D4-9932-4B73-99D8-C252A67D4B46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1F1CD1D4-9932-4B73-99D8-C252A67D4B46}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1F1CD1D4-9932-4B73-99D8-C252A67D4B46}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1F1CD1D4-9932-4B73-99D8-C252A67D4B46}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {A97F4B90-2591-4689-B1F8-5F21FE6D6CAE}
+ EndGlobalSection
+EndGlobal
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/CHANGELOG.md b/sdk/migrate/Azure.ResourceManager.Migrate/CHANGELOG.md
new file mode 100644
index 000000000000..8b33f0fedccc
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/CHANGELOG.md
@@ -0,0 +1,11 @@
+# Release History
+
+## 1.0.0-beta.1 (Unreleased)
+
+### Features Added
+
+### Breaking Changes
+
+### Bugs Fixed
+
+### Other Changes
\ No newline at end of file
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/Directory.Build.props b/sdk/migrate/Azure.ResourceManager.Migrate/Directory.Build.props
new file mode 100644
index 000000000000..63bd836ad44b
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/Directory.Build.props
@@ -0,0 +1,6 @@
+
+
+
+
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/README.md b/sdk/migrate/Azure.ResourceManager.Migrate/README.md
new file mode 100644
index 000000000000..63c311d9cf81
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/README.md
@@ -0,0 +1,80 @@
+# Microsoft Azure Migrate management client library for .NET
+
+**[Describe the service briefly first.]**
+
+This library follows the [new Azure SDK guidelines](https://azure.github.io/azure-sdk/general_introduction.html), and provides many core capabilities:
+
+ - Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET.
+ - Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing.
+ - HTTP pipeline with custom policies.
+ - Better error-handling.
+ - Support uniform telemetry across all languages.
+
+## Getting started
+
+### Install the package
+
+Install the Microsoft Azure Migrate management library for .NET with [NuGet](https://www.nuget.org/):
+
+```dotnetcli
+dotnet add package Azure.ResourceManager.Migrate --prerelease
+```
+
+### Prerequisites
+
+* You must have an [Microsoft Azure subscription](https://azure.microsoft.com/free/dotnet/).
+
+### Authenticate the Client
+
+To create an authenticated client and start interacting with Microsoft Azure resources, see the [quickstart guide here](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md).
+
+## Key concepts
+
+Key concepts of the Microsoft Azure SDK for .NET can be found [here](https://azure.github.io/azure-sdk/dotnet_introduction.html)
+
+## Documentation
+
+Documentation is available to help you learn how to use this package:
+
+- [Quickstart](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md).
+- [API References](https://learn.microsoft.com/dotnet/api/?view=azure-dotnet).
+- [Authentication](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/README.md).
+
+## Examples
+
+Code samples for using the management library for .NET can be found in the following locations
+- [.NET Management Library Code Samples](https://aka.ms/azuresdk-net-mgmt-samples)
+
+## Troubleshooting
+
+- File an issue via [GitHub Issues](https://github.com/Azure/azure-sdk-for-net/issues).
+- Check [previous questions](https://stackoverflow.com/questions/tagged/azure+.net) or ask new ones on Stack Overflow using Azure and .NET tags.
+
+## Next steps
+
+For more information about Microsoft Azure SDK, see [this website](https://azure.github.io/azure-sdk/).
+
+## Contributing
+
+For details on contributing to this repository, see the [contributing
+guide][cg].
+
+This project welcomes contributions and suggestions. Most contributions
+require you to agree to a Contributor License Agreement (CLA) declaring
+that you have the right to, and actually do, grant us the rights to use
+your contribution. For details, visit .
+
+When you submit a pull request, a CLA-bot will automatically determine
+whether you need to provide a CLA and decorate the PR appropriately
+(for example, label, comment). Follow the instructions provided by the
+bot. You'll only need to do this action once across all repositories
+using our CLA.
+
+This project has adopted the [Microsoft Open Source Code of Conduct][coc]. For
+more information, see the [Code of Conduct FAQ][coc_faq] or contact
+ with any other questions or comments.
+
+
+[cg]: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/resourcemanager/Azure.ResourceManager/docs/CONTRIBUTING.md
+[coc]: https://opensource.microsoft.com/codeofconduct/
+[coc_faq]: https://opensource.microsoft.com/codeofconduct/faq/
\ No newline at end of file
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/assets.json b/sdk/migrate/Azure.ResourceManager.Migrate/assets.json
new file mode 100644
index 000000000000..7eb82a025442
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/assets.json
@@ -0,0 +1,7 @@
+
+{
+ "AssetsRepo": "Azure/azure-sdk-assets",
+ "AssetsRepoPrefixPath": "net",
+ "TagPrefix": "net/migrate/Azure.ResourceManager.Migrate",
+ "Tag": ""
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Azure.ResourceManager.Migrate.Samples.csproj b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Azure.ResourceManager.Migrate.Samples.csproj
new file mode 100644
index 000000000000..c8b72c599c4a
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Azure.ResourceManager.Migrate.Samples.csproj
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Collection.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Collection.cs
new file mode 100644
index 000000000000..ceb677eed395
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Collection.cs
@@ -0,0 +1,167 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_AssessedMachineV2Collection
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_AssessedMachinesV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/AssessedMachinesV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "AssessedMachineV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this AssessedMachineV2Resource
+ AssessedMachineV2Collection collection = machineAssessmentV2.GetAssessedMachineV2s();
+
+ // invoke the operation
+ string assessedMachineName = "machine1";
+ AssessedMachineV2Resource result = await collection.GetAsync(assessedMachineName);
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ AssessedMachineV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetAll_AssessedMachinesV2OperationsListByParentMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/AssessedMachinesV2Operations_ListByParent_MaximumSet_Gen.json
+ // this example is just showing the usage of "AssessedMachineV2_ListByParent" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this AssessedMachineV2Resource
+ AssessedMachineV2Collection collection = machineAssessmentV2.GetAssessedMachineV2s();
+
+ // invoke the operation and iterate over the result
+ int? pageSize = 13;
+ string continuationToken = "lsuhpxtnundds";
+ int? totalRecordCount = 28;
+ await foreach (AssessedMachineV2Resource item in collection.GetAllAsync(pageSize: pageSize, continuationToken: continuationToken, totalRecordCount: totalRecordCount))
+ {
+ // the variable item is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ AssessedMachineV2Data resourceData = item.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ Console.WriteLine("Succeeded");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Exists_AssessedMachinesV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/AssessedMachinesV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "AssessedMachineV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this AssessedMachineV2Resource
+ AssessedMachineV2Collection collection = machineAssessmentV2.GetAssessedMachineV2s();
+
+ // invoke the operation
+ string assessedMachineName = "machine1";
+ bool result = await collection.ExistsAsync(assessedMachineName);
+
+ Console.WriteLine($"Succeeded: {result}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetIfExists_AssessedMachinesV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/AssessedMachinesV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "AssessedMachineV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this AssessedMachineV2Resource
+ AssessedMachineV2Collection collection = machineAssessmentV2.GetAssessedMachineV2s();
+
+ // invoke the operation
+ string assessedMachineName = "machine1";
+ NullableResponse response = await collection.GetIfExistsAsync(assessedMachineName);
+ AssessedMachineV2Resource result = response.HasValue ? response.Value : null;
+
+ if (result == null)
+ {
+ Console.WriteLine("Succeeded with null as result");
+ }
+ else
+ {
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ AssessedMachineV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Resource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Resource.cs
new file mode 100644
index 000000000000..7966b6779ca5
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_AssessedMachineV2Resource.cs
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_AssessedMachineV2Resource
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_AssessedMachinesV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/AssessedMachinesV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "AssessedMachineV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this AssessedMachineV2Resource created on azure
+ // for more information of creating AssessedMachineV2Resource, please refer to the document of AssessedMachineV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ string assessedMachineName = "machine1";
+ ResourceIdentifier assessedMachineV2ResourceId = AssessedMachineV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName, assessedMachineName);
+ AssessedMachineV2Resource assessedMachineV2 = client.GetAssessedMachineV2Resource(assessedMachineV2ResourceId);
+
+ // invoke the operation
+ AssessedMachineV2Resource result = await assessedMachineV2.GetAsync();
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ AssessedMachineV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Collection.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Collection.cs
new file mode 100644
index 000000000000..e93275e0376f
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Collection.cs
@@ -0,0 +1,248 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using Azure.ResourceManager.Migrate.Models;
+using Azure.ResourceManager.Resources;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineAssessmentV2Collection
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task CreateOrUpdate_MachineAssessmentsV2OperationsCreateMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Create_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Create" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineAssessmentV2Resource
+ string projectName = "contosoProject";
+ MachineAssessmentV2Collection collection = resourceGroupResource.GetMachineAssessmentV2s(projectName);
+
+ // invoke the operation
+ string assessmentName = "assessmentName";
+ MachineAssessmentV2Data data = new MachineAssessmentV2Data
+ {
+ Properties = new MachineAssessmentV2Properties
+ {
+ Scope = new Scope
+ {
+ ScopeType = ScopeType.ServerGroupId,
+ ServerGroupId = "f",
+ AzureResourceGraphQuery = "hfhwuqalmenpcttboxvo",
+ },
+ Settings = new MachineAssessmentSettings
+ {
+ AzureLocation = "rsequlcso",
+ Currency = AzureCurrency.Unknown,
+ ScalingFactor = 9F,
+ DiscountPercentage = 5F,
+ SizingCriterion = AssessmentSizingCriterion.PerformanceBased,
+ PerformanceData = new PerformanceData
+ {
+ Percentile = new Percentile("Unknown"),
+ TimeRange = TimeRange.Day,
+ PerfDataStartOn = DateTimeOffset.Parse("2025-02-21T05:47:51.336Z"),
+ PerfDataEndOn = DateTimeOffset.Parse("2025-02-21T05:47:51.336Z"),
+ },
+ SavingsSettings = new SavingsSettings
+ {
+ SavingsOptions = SavingsOption.None,
+ AzureOfferCode = AzureOffer.Unknown,
+ },
+ BillingSettings = new BillingSettings
+ {
+ LicensingProgram = LicensingProgram.Retail,
+ SubscriptionId = "lee",
+ },
+ EnvironmentType = EnvironmentType.Production,
+ AzureSecurityOfferingType = AzureSecurityOfferingType.NO,
+ AzureDiskTypes = { AzureDiskType.Unknown },
+ AzurePricingTier = AzurePricingTier.Standard,
+ AzureStorageRedundancy = AzureStorageRedundancy.Unknown,
+ AzureHybridUseBenefit = AzureHybridUseBenefit.Unknown,
+ LinuxAzureHybridUseBenefit = AzureHybridUseBenefit.Unknown,
+ AzureVmFamilies = { AzureVmFamily.Unknown },
+ VmUptime = new VmUptime
+ {
+ DaysPerMonth = 9,
+ HoursPerDay = 10,
+ },
+ },
+ Details = new AssessmentDetails(),
+ },
+ };
+ ArmOperation lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, assessmentName, data);
+ MachineAssessmentV2Resource result = lro.Value;
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineAssessmentsV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineAssessmentV2Resource
+ string projectName = "contosoProject";
+ MachineAssessmentV2Collection collection = resourceGroupResource.GetMachineAssessmentV2s(projectName);
+
+ // invoke the operation
+ string assessmentName = "assessmentName";
+ MachineAssessmentV2Resource result = await collection.GetAsync(assessmentName);
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetAll_MachineAssessmentsV2OperationsListByParentMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_ListByParent_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_ListByParent" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineAssessmentV2Resource
+ string projectName = "contosoProject";
+ MachineAssessmentV2Collection collection = resourceGroupResource.GetMachineAssessmentV2s(projectName);
+
+ // invoke the operation and iterate over the result
+ await foreach (MachineAssessmentV2Resource item in collection.GetAllAsync())
+ {
+ // the variable item is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = item.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ Console.WriteLine("Succeeded");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Exists_MachineAssessmentsV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineAssessmentV2Resource
+ string projectName = "contosoProject";
+ MachineAssessmentV2Collection collection = resourceGroupResource.GetMachineAssessmentV2s(projectName);
+
+ // invoke the operation
+ string assessmentName = "assessmentName";
+ bool result = await collection.ExistsAsync(assessmentName);
+
+ Console.WriteLine($"Succeeded: {result}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetIfExists_MachineAssessmentsV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineAssessmentV2Resource
+ string projectName = "contosoProject";
+ MachineAssessmentV2Collection collection = resourceGroupResource.GetMachineAssessmentV2s(projectName);
+
+ // invoke the operation
+ string assessmentName = "assessmentName";
+ NullableResponse response = await collection.GetIfExistsAsync(assessmentName);
+ MachineAssessmentV2Resource result = response.HasValue ? response.Value : null;
+
+ if (result == null)
+ {
+ Console.WriteLine("Succeeded with null as result");
+ }
+ else
+ {
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Resource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Resource.cs
new file mode 100644
index 000000000000..93a730e77754
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2Resource.cs
@@ -0,0 +1,189 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using Azure.ResourceManager.Migrate.Models;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineAssessmentV2Resource
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineAssessmentsV2OperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // invoke the operation
+ MachineAssessmentV2Resource result = await machineAssessmentV2.GetAsync();
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Delete_MachineAssessmentsV2OperationsDeleteMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Delete_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Delete" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // invoke the operation
+ await machineAssessmentV2.DeleteAsync(WaitUntil.Completed);
+
+ Console.WriteLine("Succeeded");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Update_MachineAssessmentsV2OperationsCreateMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_Create_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2_Create" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // invoke the operation
+ MachineAssessmentV2Data data = new MachineAssessmentV2Data
+ {
+ Properties = new MachineAssessmentV2Properties
+ {
+ Scope = new Scope
+ {
+ ScopeType = ScopeType.ServerGroupId,
+ ServerGroupId = "f",
+ AzureResourceGraphQuery = "hfhwuqalmenpcttboxvo",
+ },
+ Settings = new MachineAssessmentSettings
+ {
+ AzureLocation = "rsequlcso",
+ Currency = AzureCurrency.Unknown,
+ ScalingFactor = 9F,
+ DiscountPercentage = 5F,
+ SizingCriterion = AssessmentSizingCriterion.PerformanceBased,
+ PerformanceData = new PerformanceData
+ {
+ Percentile = new Percentile("Unknown"),
+ TimeRange = TimeRange.Day,
+ PerfDataStartOn = DateTimeOffset.Parse("2025-02-21T05:47:51.336Z"),
+ PerfDataEndOn = DateTimeOffset.Parse("2025-02-21T05:47:51.336Z"),
+ },
+ SavingsSettings = new SavingsSettings
+ {
+ SavingsOptions = SavingsOption.None,
+ AzureOfferCode = AzureOffer.Unknown,
+ },
+ BillingSettings = new BillingSettings
+ {
+ LicensingProgram = LicensingProgram.Retail,
+ SubscriptionId = "lee",
+ },
+ EnvironmentType = EnvironmentType.Production,
+ AzureSecurityOfferingType = AzureSecurityOfferingType.NO,
+ AzureDiskTypes = { AzureDiskType.Unknown },
+ AzurePricingTier = AzurePricingTier.Standard,
+ AzureStorageRedundancy = AzureStorageRedundancy.Unknown,
+ AzureHybridUseBenefit = AzureHybridUseBenefit.Unknown,
+ LinuxAzureHybridUseBenefit = AzureHybridUseBenefit.Unknown,
+ AzureVmFamilies = { AzureVmFamily.Unknown },
+ VmUptime = new VmUptime
+ {
+ DaysPerMonth = 9,
+ HoursPerDay = 10,
+ },
+ },
+ Details = new AssessmentDetails(),
+ },
+ };
+ ArmOperation lro = await machineAssessmentV2.UpdateAsync(WaitUntil.Completed, data);
+ MachineAssessmentV2Resource result = lro.Value;
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2Data resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task DownloadUrl_GetDownloadURLForTheAssessmentReport()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentsV2Operations_DownloadUrl_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentsV2Operations_DownloadUrl" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // invoke the operation
+ DownloadUrlContent content = new DownloadUrlContent();
+ ArmOperation lro = await machineAssessmentV2.DownloadUrlAsync(WaitUntil.Completed, content);
+ DownloadUri result = lro.Value;
+
+ Console.WriteLine($"Succeeded: {result}");
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryCollection.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryCollection.cs
new file mode 100644
index 000000000000..9d704d70c9dc
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryCollection.cs
@@ -0,0 +1,164 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineAssessmentV2SummaryCollection
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineAssessmentV2SummaryOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentV2SummaryOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2Summary_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this MachineAssessmentV2SummaryResource
+ MachineAssessmentV2SummaryCollection collection = machineAssessmentV2.GetMachineAssessmentV2Summaries();
+
+ // invoke the operation
+ string summaryName = "PaaSPreferred";
+ MachineAssessmentV2SummaryResource result = await collection.GetAsync(summaryName);
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2SummaryData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetAll_MachineAssessmentV2SummaryOperationsListByParentMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentV2SummaryOperations_ListByParent_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2Summary_ListByParent" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this MachineAssessmentV2SummaryResource
+ MachineAssessmentV2SummaryCollection collection = machineAssessmentV2.GetMachineAssessmentV2Summaries();
+
+ // invoke the operation and iterate over the result
+ await foreach (MachineAssessmentV2SummaryResource item in collection.GetAllAsync())
+ {
+ // the variable item is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2SummaryData resourceData = item.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ Console.WriteLine("Succeeded");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Exists_MachineAssessmentV2SummaryOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentV2SummaryOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2Summary_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this MachineAssessmentV2SummaryResource
+ MachineAssessmentV2SummaryCollection collection = machineAssessmentV2.GetMachineAssessmentV2Summaries();
+
+ // invoke the operation
+ string summaryName = "PaaSPreferred";
+ bool result = await collection.ExistsAsync(summaryName);
+
+ Console.WriteLine($"Succeeded: {result}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetIfExists_MachineAssessmentV2SummaryOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentV2SummaryOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2Summary_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2Resource created on azure
+ // for more information of creating MachineAssessmentV2Resource, please refer to the document of MachineAssessmentV2Resource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ ResourceIdentifier machineAssessmentV2ResourceId = MachineAssessmentV2Resource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName);
+ MachineAssessmentV2Resource machineAssessmentV2 = client.GetMachineAssessmentV2Resource(machineAssessmentV2ResourceId);
+
+ // get the collection of this MachineAssessmentV2SummaryResource
+ MachineAssessmentV2SummaryCollection collection = machineAssessmentV2.GetMachineAssessmentV2Summaries();
+
+ // invoke the operation
+ string summaryName = "PaaSPreferred";
+ NullableResponse response = await collection.GetIfExistsAsync(summaryName);
+ MachineAssessmentV2SummaryResource result = response.HasValue ? response.Value : null;
+
+ if (result == null)
+ {
+ Console.WriteLine("Succeeded with null as result");
+ }
+ else
+ {
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2SummaryData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryResource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryResource.cs
new file mode 100644
index 000000000000..ddec47394136
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineAssessmentV2SummaryResource.cs
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineAssessmentV2SummaryResource
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineAssessmentV2SummaryOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineAssessmentV2SummaryOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineAssessmentV2Summary_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineAssessmentV2SummaryResource created on azure
+ // for more information of creating MachineAssessmentV2SummaryResource, please refer to the document of MachineAssessmentV2SummaryResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ string assessmentName = "assessmentName";
+ string summaryName = "PaaSPreferred";
+ ResourceIdentifier machineAssessmentV2SummaryResourceId = MachineAssessmentV2SummaryResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName, assessmentName, summaryName);
+ MachineAssessmentV2SummaryResource machineAssessmentV2Summary = client.GetMachineAssessmentV2SummaryResource(machineAssessmentV2SummaryResourceId);
+
+ // invoke the operation
+ MachineAssessmentV2SummaryResource result = await machineAssessmentV2Summary.GetAsync();
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineAssessmentV2SummaryData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionCollection.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionCollection.cs
new file mode 100644
index 000000000000..c5ac346d6d0e
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionCollection.cs
@@ -0,0 +1,158 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using Azure.ResourceManager.Resources;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineGraphAssessmentOptionCollection
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineGraphAssessmentOptionsOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineGraphAssessmentOptionsOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineGraphAssessmentOptions_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineGraphAssessmentOptionResource
+ string projectName = "contosoProject";
+ MachineGraphAssessmentOptionCollection collection = resourceGroupResource.GetMachineGraphAssessmentOptions(projectName);
+
+ // invoke the operation
+ MachineGraphAssessmentOptionResource result = await collection.GetAsync();
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineGraphAssessmentOptionData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetAll_MachineGraphAssessmentOptionsOperationsListByParentMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineGraphAssessmentOptionsOperations_ListByParent_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineGraphAssessmentOptions_ListByParent" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineGraphAssessmentOptionResource
+ string projectName = "contosoProject";
+ MachineGraphAssessmentOptionCollection collection = resourceGroupResource.GetMachineGraphAssessmentOptions(projectName);
+
+ // invoke the operation and iterate over the result
+ await foreach (MachineGraphAssessmentOptionResource item in collection.GetAllAsync())
+ {
+ // the variable item is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineGraphAssessmentOptionData resourceData = item.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+
+ Console.WriteLine("Succeeded");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Exists_MachineGraphAssessmentOptionsOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineGraphAssessmentOptionsOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineGraphAssessmentOptions_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineGraphAssessmentOptionResource
+ string projectName = "contosoProject";
+ MachineGraphAssessmentOptionCollection collection = resourceGroupResource.GetMachineGraphAssessmentOptions(projectName);
+
+ // invoke the operation
+ bool result = await collection.ExistsAsync();
+
+ Console.WriteLine($"Succeeded: {result}");
+ }
+
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task GetIfExists_MachineGraphAssessmentOptionsOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineGraphAssessmentOptionsOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineGraphAssessmentOptions_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this ResourceGroupResource created on azure
+ // for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
+ ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
+
+ // get the collection of this MachineGraphAssessmentOptionResource
+ string projectName = "contosoProject";
+ MachineGraphAssessmentOptionCollection collection = resourceGroupResource.GetMachineGraphAssessmentOptions(projectName);
+
+ // invoke the operation
+ NullableResponse response = await collection.GetIfExistsAsync();
+ MachineGraphAssessmentOptionResource result = response.HasValue ? response.Value : null;
+
+ if (result == null)
+ {
+ Console.WriteLine("Succeeded with null as result");
+ }
+ else
+ {
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineGraphAssessmentOptionData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionResource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionResource.cs
new file mode 100644
index 000000000000..9c1d9800b130
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/samples/Generated/Samples/Sample_MachineGraphAssessmentOptionResource.cs
@@ -0,0 +1,48 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Identity;
+using NUnit.Framework;
+
+namespace Azure.ResourceManager.Migrate.Samples
+{
+ public partial class Sample_MachineGraphAssessmentOptionResource
+ {
+ [Test]
+ [Ignore("Only validating compilation of examples")]
+ public async Task Get_MachineGraphAssessmentOptionsOperationsGetMaximumSet()
+ {
+ // Generated from example definition: 2024-03-03-preview/MachineGraphAssessmentOptionsOperations_Get_MaximumSet_Gen.json
+ // this example is just showing the usage of "MachineGraphAssessmentOptions_Get" operation, for the dependent resources, they will have to be created separately.
+
+ // get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
+ TokenCredential cred = new DefaultAzureCredential();
+ // authenticate your client
+ ArmClient client = new ArmClient(cred);
+
+ // this example assumes you already have this MachineGraphAssessmentOptionResource created on azure
+ // for more information of creating MachineGraphAssessmentOptionResource, please refer to the document of MachineGraphAssessmentOptionResource
+ string subscriptionId = "AEDD0824-BBE9-4E7C-8909-F46C68EA6BB9";
+ string resourceGroupName = "rgmachineAssessments";
+ string projectName = "contosoProject";
+ ResourceIdentifier machineGraphAssessmentOptionResourceId = MachineGraphAssessmentOptionResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, projectName);
+ MachineGraphAssessmentOptionResource machineGraphAssessmentOption = client.GetMachineGraphAssessmentOptionResource(machineGraphAssessmentOptionResourceId);
+
+ // invoke the operation
+ MachineGraphAssessmentOptionResource result = await machineGraphAssessmentOption.GetAsync();
+
+ // the variable result is a resource, you could call other operations on this instance as well
+ // but just for demo, we get its data from this resource instance
+ MachineGraphAssessmentOptionData resourceData = result.Data;
+ // for demo we just print out the id
+ Console.WriteLine($"Succeeded on id: {resourceData.Id}");
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Azure.ResourceManager.Migrate.csproj b/sdk/migrate/Azure.ResourceManager.Migrate/src/Azure.ResourceManager.Migrate.csproj
new file mode 100644
index 000000000000..1e9a2162550b
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Azure.ResourceManager.Migrate.csproj
@@ -0,0 +1,8 @@
+
+
+ Azure Resource Manager client SDK for Azure resource provider Migrate.
+ 1.0.0-beta.1
+ azure;management;arm;resource manager;migrate
+ Azure.ResourceManager.Migrate
+
+
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/ArmMigrateModelFactory.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/ArmMigrateModelFactory.cs
new file mode 100644
index 000000000000..880eb99f8fcd
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/ArmMigrateModelFactory.cs
@@ -0,0 +1,688 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Azure.Core;
+using Azure.ResourceManager.Models;
+
+namespace Azure.ResourceManager.Migrate.Models
+{
+ /// Model factory for models.
+ public static partial class ArmMigrateModelFactory
+ {
+ /// Initializes a new instance of .
+ /// The id.
+ /// The name.
+ /// The resourceType.
+ /// The systemData.
+ /// The resource-specific properties for this resource.
+ /// A new instance for mocking.
+ public static MachineAssessmentV2Data MachineAssessmentV2Data(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, MachineAssessmentV2Properties properties = null)
+ {
+ return new MachineAssessmentV2Data(
+ id,
+ name,
+ resourceType,
+ systemData,
+ properties,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The status of the last operation.
+ /// Gets or sets the scope of assessment.
+ /// Gets or sets the settings for the assessment.
+ /// Gets or sets the details of the assessment.
+ /// A new instance for mocking.
+ public static MachineAssessmentV2Properties MachineAssessmentV2Properties(ProvisioningState? provisioningState = null, Scope scope = null, MachineAssessmentSettings settings = null, AssessmentDetails details = null)
+ {
+ return new MachineAssessmentV2Properties(provisioningState, scope, settings, details, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Confidence Rating in Percentage.
+ /// Last time when rates were queried.
+ /// Date and Time when assessment was created.
+ /// Date and Time when assessment was last updated.
+ /// Whether assessment is in valid state and all machines have been assessed.
+ /// A new instance for mocking.
+ public static AssessmentDetails AssessmentDetails(float? confidenceRatingInPercentage = null, DateTimeOffset? pricesTimestamp = null, DateTimeOffset? createdTimestamp = null, DateTimeOffset? updatedTimestamp = null, AssessmentStatus? status = null)
+ {
+ return new AssessmentDetails(
+ confidenceRatingInPercentage,
+ pricesTimestamp,
+ createdTimestamp,
+ updatedTimestamp,
+ status,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Hyperlink to download report.
+ /// Expiry date of download url.
+ /// A new instance for mocking.
+ public static DownloadUri DownloadUri(string assessmentReportUri = null, DateTimeOffset expireOn = default)
+ {
+ return new DownloadUri(assessmentReportUri, expireOn, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The id.
+ /// The name.
+ /// The resourceType.
+ /// The systemData.
+ /// The resource-specific properties for this resource.
+ /// A new instance for mocking.
+ public static AssessedMachineV2Data AssessedMachineV2Data(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, AssessedMachineV2Properties properties = null)
+ {
+ return new AssessedMachineV2Data(
+ id,
+ name,
+ resourceType,
+ systemData,
+ properties,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The workload type.
+ /// The linkages list.
+ /// The recommendation list.
+ /// The assessed machine extended details.
+ /// When was machine first created.
+ /// When was machine last updated.
+ /// A new instance for mocking.
+ public static AssessedMachineV2Properties AssessedMachineV2Properties(MigrateWorkloadType? workloadType = null, IEnumerable linkages = null, IEnumerable recommendations = null, AssessedMachineExtendedDetails extendedDetails = null, DateTimeOffset? createdTimestamp = null, DateTimeOffset? updatedTimestamp = null)
+ {
+ linkages ??= new List();
+ recommendations ??= new List();
+
+ return new AssessedMachineV2Properties(
+ workloadType,
+ linkages?.ToList(),
+ recommendations?.ToList(),
+ extendedDetails,
+ createdTimestamp,
+ updatedTimestamp,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The workload name.
+ /// The linkage type.
+ /// The linkage kind.
+ /// The arm id.
+ /// A new instance for mocking.
+ public static Linkages Linkages(string workloadName = null, LinkageType? linkageType = null, LinkageKind? kind = null, string armId = null)
+ {
+ return new Linkages(workloadName, linkageType, kind, armId, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The configuration data.
+ /// The recommended details.
+ /// The migration Platform.
+ /// The confidence score.
+ /// The migration suitability.
+ /// The security suitability.
+ /// The total cost details.
+ /// The total cost details.
+ /// The migration issues list.
+ /// The Skus list.
+ /// VM Security Suitability Results.
+ /// Recommended security type for the VM.
+ /// A new instance for mocking.
+ public static MachineAssessmentRecommendation MachineAssessmentRecommendation(Configuration configuration = null, IEnumerable recommendedForStrategies = null, MigrationPlatform? migrationPlatform = null, float? confidenceScore = null, CloudSuitabilityCommon? migrationSuitabilityReadiness = null, CloudSuitabilityCommon? securitySuitabilityReadiness = null, IEnumerable totalCost = null, IEnumerable totalSavings = null, IEnumerable migrationIssues = null, IEnumerable skus = null, IEnumerable vmSecuritySuitabilityResults = null, AzureVmSecurityType? recommendedVmSecurityType = null)
+ {
+ recommendedForStrategies ??= new List();
+ totalCost ??= new List();
+ totalSavings ??= new List();
+ migrationIssues ??= new List();
+ skus ??= new List();
+ vmSecuritySuitabilityResults ??= new List();
+
+ return new MachineAssessmentRecommendation(
+ configuration,
+ recommendedForStrategies != null ? new RecommendedFor(recommendedForStrategies?.ToList(), serializedAdditionalRawData: null) : null,
+ migrationPlatform,
+ confidenceScore,
+ migrationSuitabilityReadiness != null ? new MigrationSuitability(migrationSuitabilityReadiness, serializedAdditionalRawData: null) : null,
+ securitySuitabilityReadiness != null ? new SecuritySuitability(securitySuitabilityReadiness, serializedAdditionalRawData: null) : null,
+ totalCost?.ToList(),
+ totalSavings?.ToList(),
+ migrationIssues?.ToList(),
+ skus?.ToList(),
+ vmSecuritySuitabilityResults?.ToList(),
+ recommendedVmSecurityType,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The azure target.
+ /// The azure target.
+ /// A new instance for mocking.
+ public static Configuration Configuration(AzureTarget? azureTarget = null, AssessmentSizingCriterion? sizingCriterion = null)
+ {
+ return new Configuration(azureTarget, sizingCriterion, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The savings options.
+ /// The sku cost details per azure offer type.
+ /// A new instance for mocking.
+ public static CostDetailsCommon CostDetailsCommon(SavingsOption? savingOptions = null, IEnumerable costDetail = null)
+ {
+ costDetail ??= new List();
+
+ return new CostDetailsCommon(savingOptions, costDetail?.ToList(), serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The name.
+ /// The value.
+ /// A new instance for mocking.
+ public static NameValuePairCostType NameValuePairCostType(CostType? name = null, float? value = null)
+ {
+ return new NameValuePairCostType(name, value, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The savings options.
+ /// The sku cost details per azure offer type.
+ /// A new instance for mocking.
+ public static SavingsDetailsCommon SavingsDetailsCommon(SavingsOption? savingOptions = null, IEnumerable savingsDetail = null)
+ {
+ savingsDetail ??= new List();
+
+ return new SavingsDetailsCommon(savingOptions, savingsDetail?.ToList(), serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The name.
+ /// The value.
+ /// A new instance for mocking.
+ public static NameValuePairSavingsType NameValuePairSavingsType(SavingsType? name = null, float? value = null)
+ {
+ return new NameValuePairSavingsType(name, value, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The issue id.
+ /// The issue category.
+ /// The issue description.
+ /// The possible causes.
+ /// The recommended action.
+ /// The more information list.
+ /// A new instance for mocking.
+ public static MigrationIssues MigrationIssues(string issueCode = null, MigrationIssuesCategory? issueCategory = null, string issueDescription = null, string possibleCause = null, IEnumerable recommendedActions = null, IEnumerable moreInformation = null)
+ {
+ recommendedActions ??= new List();
+ moreInformation ??= new List();
+
+ return new MigrationIssues(
+ issueCode,
+ issueCategory,
+ issueDescription,
+ possibleCause,
+ recommendedActions?.ToList(),
+ moreInformation?.ToList(),
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The title of the information.
+ /// The URL of the information.
+ /// A new instance for mocking.
+ public static MoreInformation MoreInformation(string title = null, string uri = null)
+ {
+ return new MoreInformation(title, uri, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The Sku kind.
+ /// The resource uri.
+ /// The sku name.
+ /// The sku id.
+ /// The sku type.
+ /// The source name.
+ /// The sku details.
+ /// A new instance for mocking.
+ public static SkusMigrationSuitability SkusMigrationSuitability(SkuKind? kind = null, string resourceUri = null, string displayName = null, string id = null, SkuType? type = null, IEnumerable sources = null, SkuDetails details = null)
+ {
+ sources ??= new List();
+
+ return new SkusMigrationSuitability(
+ kind,
+ resourceUri,
+ displayName,
+ id,
+ type,
+ sources?.ToList(),
+ details,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The sku name.
+ /// The sku type.
+ /// A new instance for mocking.
+ public static SourceRecommendationMigrationSuitability SourceRecommendationMigrationSuitability(string name = null, CloudSuitabilityCommon? migrationSuitabilityReadiness = null)
+ {
+ return new SourceRecommendationMigrationSuitability(name, migrationSuitabilityReadiness != null ? new MigrationSuitability(migrationSuitabilityReadiness, serializedAdditionalRawData: null) : null, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The sku type.
+ /// The sku name.
+ /// The capabilities.
+ /// The sku cost details.
+ /// The sku savings details.
+ /// A new instance for mocking.
+ public static SkuDetails SkuDetails(SkuType? skuType = null, string skuName = null, IEnumerable capabilities = null, IEnumerable totalCost = null, IEnumerable totalSavings = null)
+ {
+ capabilities ??= new List();
+ totalCost ??= new List();
+ totalSavings ??= new List();
+
+ return new SkuDetails(
+ skuType,
+ skuName,
+ capabilities?.ToList(),
+ totalCost?.ToList(),
+ totalSavings?.ToList(),
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The name.
+ /// The value.
+ /// A new instance for mocking.
+ public static NameValuePair NameValuePair(string name = null, string value = null)
+ {
+ return new NameValuePair(name, value, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Gets and sets the security type for this secure VM.
+ /// Gets the suitability for this secure VM.
+ /// Gets the security suitability details for this VM.
+ /// A new instance for mocking.
+ public static VmSecuritySuitability VmSecuritySuitability(AzureVmSecurityType vmSecurityType = default, CloudSuitabilityCommon securitySuitability = default, IEnumerable securitySuitabilityDetails = null)
+ {
+ securitySuitabilityDetails ??= new List();
+
+ return new VmSecuritySuitability(vmSecurityType, securitySuitability, securitySuitabilityDetails?.ToList(), serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Display Name of the Machine.
+ /// Gets the product support status related details.
+ /// Dictionary of disks attached to the machine. Key is ID of disk. Value is a disk object.
+ /// Gets or sets the processor details of the host.
+ ///
+ /// List of Network Adapters that were assessed as part of this machine's
+ /// assessment.
+ ///
+ /// Assessed machine type.
+ /// Boot type of machine discovered in private data center.
+ /// Operating system as reported by datacenter management solution.
+ /// Operating system as reported by datacenter management solution.
+ /// Operating system version as reported by datacenter management solution.
+ /// Operating system architecture as reported by datacenter management solution.
+ /// Description for the machine.
+ /// Megabytes of memory found allocated for the machine in private data center.
+ /// Number of CPU cores found on the machine.
+ ///
+ /// Percentile of Percentage of Cores Utilized noted during time period T.
+ /// Here N and T are settings on Assessment.
+ ///
+ ///
+ /// Percentile of Percentage of Memory Utilized noted during time period T.
+ /// Here N and T are settings on Assessment.
+ ///
+ /// List of errors for this machine.
+ /// A new instance for mocking.
+ public static AssessedMachineExtendedDetails AssessedMachineExtendedDetails(string displayName = null, ProductSupportStatus productSupportStatus = null, IEnumerable disks = null, ProcessorInfo hostProcessor = null, IEnumerable networkAdapters = null, AssessedMachineType? assessedMachineType = null, MachineBootType? bootType = null, string operatingSystemType = null, string operatingSystemName = null, string operatingSystemVersion = null, GuestOperatingSystemArchitecture? operatingSystemArchitecture = null, string description = null, float? megabytesOfMemory = null, int? numberOfCores = null, float? percentageCoresUtilization = null, float? percentageMemoryUtilization = null, IEnumerable errors = null)
+ {
+ disks ??= new List();
+ networkAdapters ??= new List();
+ errors ??= new List();
+
+ return new AssessedMachineExtendedDetails(
+ displayName,
+ productSupportStatus,
+ disks?.ToList(),
+ hostProcessor,
+ networkAdapters?.ToList(),
+ assessedMachineType,
+ bootType,
+ operatingSystemType,
+ operatingSystemName,
+ operatingSystemVersion,
+ operatingSystemArchitecture,
+ description,
+ megabytesOfMemory,
+ numberOfCores,
+ percentageCoresUtilization,
+ percentageMemoryUtilization,
+ errors?.ToList(),
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Gets or sets current version of ServicePack.
+ /// Gets or sets ServicePack of the product.
+ /// Gets or sets the Extended Security Update ESU status.
+ /// Gets or sets the support status of the product.
+ /// Gets or sets the ETA.
+ /// Gets or sets the current ESU support year.
+ /// Gets or sets the main stream end date of the product.
+ /// Gets or sets the extended support end date of the product.
+ /// Gets or sets the extended security update year 1 end date of the product.
+ /// Gets or sets the extended security update year 2 end date of the product.
+ /// Gets or sets the extended security update year 3 end date of the product.
+ /// A new instance for mocking.
+ public static ProductSupportStatus ProductSupportStatus(string currentVersion = null, string servicePackStatus = null, string esuStatus = null, string supportStatus = null, int? eta = null, string currentEsuYear = null, DateTimeOffset? mainstreamEndOn = null, DateTimeOffset? extendedSupportEndOn = null, DateTimeOffset? extendedSecurityUpdateYear1EndOn = null, DateTimeOffset? extendedSecurityUpdateYear2EndOn = null, DateTimeOffset? extendedSecurityUpdateYear3EndOn = null)
+ {
+ return new ProductSupportStatus(
+ currentVersion,
+ servicePackStatus,
+ esuStatus,
+ supportStatus,
+ eta,
+ currentEsuYear,
+ mainstreamEndOn,
+ extendedSupportEndOn,
+ extendedSecurityUpdateYear1EndOn,
+ extendedSecurityUpdateYear2EndOn,
+ extendedSecurityUpdateYear3EndOn,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The disk name.
+ /// The disk display name.
+ /// Gets the gigabytes provisioned.
+ /// Gets the megabytes per second of read.
+ /// Gets the megabytes per second of write.
+ /// Gets the number of read operations per second.
+ /// Gets the number of write operations per second.
+ /// A new instance for mocking.
+ public static AssessedDiskDataV3 AssessedDiskDataV3(string name = null, string displayName = null, float? gigabytesProvisioned = null, float? megabytesPerSecondOfRead = null, float? megabytesPerSecondOfWrite = null, float? numberOfReadOperationsPerSecond = null, float? numberOfWriteOperationsPerSecond = null)
+ {
+ return new AssessedDiskDataV3(
+ name,
+ displayName,
+ gigabytesProvisioned,
+ megabytesPerSecondOfRead,
+ megabytesPerSecondOfWrite,
+ numberOfReadOperationsPerSecond,
+ numberOfWriteOperationsPerSecond,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Gets or sets the name \ model of a processor.
+ /// Gets or sets the number of sockets.
+ /// Gets or sets the number of cores in a socket.
+ /// A new instance for mocking.
+ public static ProcessorInfo ProcessorInfo(string name = null, int? numberOfSockets = null, int? numberOfCoresPerSocket = null)
+ {
+ return new ProcessorInfo(name, numberOfSockets, numberOfCoresPerSocket, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The disk name.
+ /// Gets the net gigabytes transmitted per month.
+ /// Gets the mac address.
+ /// Gets the ip addresses.
+ /// Gets the megabytes per second received.
+ /// Gets the megabytes per second transmitted.
+ /// Display Name of the Machine.
+ /// A new instance for mocking.
+ public static AssessedMachineNetworkAdaptersV3 AssessedMachineNetworkAdaptersV3(string name = null, float? netGigabytesTransmittedPerMonth = null, string macAddress = null, IEnumerable ipAddresses = null, float? megabytesPerSecondRecieved = null, float? megabytesPerSecondTransmitted = null, string displayName = null)
+ {
+ ipAddresses ??= new List();
+
+ return new AssessedMachineNetworkAdaptersV3(
+ name,
+ netGigabytesTransmittedPerMonth,
+ macAddress,
+ ipAddresses?.ToList(),
+ megabytesPerSecondRecieved,
+ megabytesPerSecondTransmitted,
+ displayName,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Gets the error ID.
+ /// Gets the error code.
+ /// Gets the Run as account ID.
+ /// Gets the Appliance name.
+ /// Gets the error message.
+ /// Gets the error summary message.
+ /// Gets the agent scenario where this error occurred.
+ /// Gets the error possible causes.
+ /// Gets the recommended action for the error.
+ /// Gets the error severity.
+ /// Gets the error message parameters.
+ /// Gets the time stamp when the error was updated.
+ /// Gets the type of assessment impacted by this error.
+ /// A new instance for mocking.
+ public static Error Error(int? id = null, string code = null, string runAsAccountId = null, string applianceName = null, string message = null, string summaryMessage = null, string agentScenario = null, string possibleCauses = null, string recommendedAction = null, string severity = null, IEnumerable messageParameters = null, DateTimeOffset? updatedTimeStamp = null, string impactedAssessmentType = null)
+ {
+ messageParameters ??= new List();
+
+ return new Error(
+ id,
+ code,
+ runAsAccountId,
+ applianceName,
+ message,
+ summaryMessage,
+ agentScenario,
+ possibleCauses,
+ recommendedAction,
+ severity,
+ messageParameters?.ToList(),
+ updatedTimeStamp,
+ impactedAssessmentType,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The id.
+ /// The name.
+ /// The resourceType.
+ /// The systemData.
+ /// The resource-specific properties for this resource.
+ /// A new instance for mocking.
+ public static MachineAssessmentV2SummaryData MachineAssessmentV2SummaryData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, SummaryProperties properties = null)
+ {
+ return new MachineAssessmentV2SummaryData(
+ id,
+ name,
+ resourceType,
+ systemData,
+ properties,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The summary type.
+ /// The summary name.
+ /// The source details list.
+ /// The target details list.
+ /// The target source mapping.
+ /// The cost components.
+ /// The cost components.
+ /// A new instance for mocking.
+ public static SummaryProperties SummaryProperties(SummaryType? summaryType = null, string summaryName = null, IEnumerable sources = null, IEnumerable targets = null, IEnumerable targetSourceMapping = null, IEnumerable costComponents = null, IEnumerable savingsComponents = null)
+ {
+ sources ??= new List();
+ targets ??= new List();
+ targetSourceMapping ??= new List();
+ costComponents ??= new List();
+ savingsComponents ??= new List();
+
+ return new SummaryProperties(
+ summaryType,
+ summaryName,
+ sources?.ToList(),
+ targets?.ToList(),
+ targetSourceMapping?.ToList(),
+ costComponents?.ToList(),
+ savingsComponents?.ToList(),
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The source name.
+ /// The source type.
+ /// The migration platform.
+ /// The count of a type of source.
+ /// A new instance for mocking.
+ public static SourceDetails SourceDetails(AssessmentSource? sourceName = null, MigrateWorkloadType? sourceType = null, MigrationPlatform? platform = null, int? count = null)
+ {
+ return new SourceDetails(sourceName, sourceType, platform, count, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The target name.
+ /// The target type.
+ /// The migration platform.
+ /// The count of a type of source.
+ /// A new instance for mocking.
+ public static TargetDetails TargetDetails(AzureTarget? targetName = null, MigrateWorkloadType? targetType = null, MigrationPlatform? platform = null, int? count = null)
+ {
+ return new TargetDetails(targetName, targetType, platform, count, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The source name.
+ /// The target name.
+ /// The count of a type of source.
+ /// The count of a type of target.
+ /// The migration details.
+ /// The management details.
+ /// The cost details.
+ /// The savings details.
+ /// The confidence score.
+ /// A new instance for mocking.
+ public static TargetSourcePair TargetSourcePair(AssessmentSource? sourceRef = null, AzureTarget? targetRef = null, int? sourceCount = null, int? targetCount = null, MigrationDetails migrationDetails = null, IEnumerable managementDetails = null, IEnumerable costDetails = null, IEnumerable savingsDetails = null, double? confidenceScore = null)
+ {
+ managementDetails ??= new List();
+ costDetails ??= new List();
+ savingsDetails ??= new List();
+
+ return new TargetSourcePair(
+ sourceRef,
+ targetRef,
+ sourceCount,
+ targetCount,
+ migrationDetails,
+ managementDetails?.ToList(),
+ costDetails?.ToList(),
+ savingsDetails?.ToList(),
+ confidenceScore,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The readiness summary.
+ /// The migration type.
+ /// A new instance for mocking.
+ public static MigrationDetails MigrationDetails(IEnumerable readinessSummary = null, MigrationType? migrationType = null)
+ {
+ readinessSummary ??= new List();
+
+ return new MigrationDetails(readinessSummary?.ToList(), migrationType, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The name.
+ /// The value.
+ /// A new instance for mocking.
+ public static NameValuePairCloudSuitabilityCommon NameValuePairCloudSuitabilityCommon(CloudSuitabilityCommon? name = null, int? value = null)
+ {
+ return new NameValuePairCloudSuitabilityCommon(name, value, serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The management summary name.
+ /// The management suitability summary.
+ /// A new instance for mocking.
+ public static ManagementDetails ManagementDetails(AzureManagementOfferingType? name = null, IEnumerable readinessSummary = null)
+ {
+ readinessSummary ??= new List();
+
+ return new ManagementDetails(name, readinessSummary?.ToList(), serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// The id.
+ /// The name.
+ /// The resourceType.
+ /// The systemData.
+ /// The resource-specific properties for this resource.
+ /// A new instance for mocking.
+ public static MachineGraphAssessmentOptionData MachineGraphAssessmentOptionData(ResourceIdentifier id = null, string name = null, ResourceType resourceType = default, SystemData systemData = null, IReadOnlyDictionary machineGraphAssessmentOptionsEdges = null)
+ {
+ machineGraphAssessmentOptionsEdges ??= new Dictionary();
+
+ return new MachineGraphAssessmentOptionData(
+ id,
+ name,
+ resourceType,
+ systemData,
+ machineGraphAssessmentOptionsEdges != null ? new MachineGraphAssessmentOptionsProperties(machineGraphAssessmentOptionsEdges, serializedAdditionalRawData: null) : null,
+ serializedAdditionalRawData: null);
+ }
+
+ /// Initializes a new instance of .
+ /// Gets or sets the Azure Locations.
+ /// Gets or sets the Azure Currency.
+ /// Gets or sets the Assessment Savings Options.
+ /// Gets or sets the Licensing Program.
+ /// Gets or sets the Azure VM families.
+ /// Gets or sets the Azure VM family categories.
+ /// Gets or sets the premium disk support.
+ /// Gets or sets the premium disk support.
+ /// Gets or sets the Azure Offer Code.
+ /// Gets or sets the Azure VM security options.
+ /// A new instance for mocking.
+ public static MachineAssessmentOptionsOutboundEdgeGroup MachineAssessmentOptionsOutboundEdgeGroup(IEnumerable targetLocations = null, IEnumerable currencies = null, IEnumerable savingsOptions = null, IEnumerable licensingProgram = null, IEnumerable azureVmFamilies = null, IEnumerable azureVmFamilyCategories = null, IEnumerable premiumDiskSupport = null, IEnumerable ultraDiskSupport = null, IEnumerable azureOfferCode = null, IEnumerable azureVmSecurityOptions = null)
+ {
+ targetLocations ??= new List();
+ currencies ??= new List();
+ savingsOptions ??= new List();
+ licensingProgram ??= new List();
+ azureVmFamilies ??= new List();
+ azureVmFamilyCategories ??= new List();
+ premiumDiskSupport ??= new List();
+ ultraDiskSupport ??= new List();
+ azureOfferCode ??= new List();
+ azureVmSecurityOptions ??= new List();
+
+ return new MachineAssessmentOptionsOutboundEdgeGroup(
+ targetLocations?.ToList(),
+ currencies?.ToList(),
+ savingsOptions?.ToList(),
+ licensingProgram?.ToList(),
+ azureVmFamilies?.ToList(),
+ azureVmFamilyCategories?.ToList(),
+ premiumDiskSupport?.ToList(),
+ ultraDiskSupport?.ToList(),
+ azureOfferCode?.ToList(),
+ azureVmSecurityOptions?.ToList(),
+ serializedAdditionalRawData: null);
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Collection.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Collection.cs
new file mode 100644
index 000000000000..18b71872ce96
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Collection.cs
@@ -0,0 +1,403 @@
+// 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.Globalization;
+using System.Threading;
+using System.Threading.Tasks;
+using Autorest.CSharp.Core;
+using Azure.Core;
+using Azure.Core.Pipeline;
+
+namespace Azure.ResourceManager.Migrate
+{
+ ///
+ /// A class representing a collection of and their operations.
+ /// Each in the collection will belong to the same instance of .
+ /// To get an instance call the GetAssessedMachineV2s method from an instance of .
+ ///
+ public partial class AssessedMachineV2Collection : ArmCollection, IEnumerable, IAsyncEnumerable
+ {
+ private readonly ClientDiagnostics _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics;
+ private readonly AssessedMachinesV2RestOperations _assessedMachineV2AssessedMachinesV2OperationsRestClient;
+
+ /// Initializes a new instance of the class for mocking.
+ protected AssessedMachineV2Collection()
+ {
+ }
+
+ /// Initializes a new instance of the class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the parent resource that is the target of operations.
+ internal AssessedMachineV2Collection(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics = new ClientDiagnostics("Azure.ResourceManager.Migrate", AssessedMachineV2Resource.ResourceType.Namespace, Diagnostics);
+ TryGetApiVersion(AssessedMachineV2Resource.ResourceType, out string assessedMachineV2AssessedMachinesV2OperationsApiVersion);
+ _assessedMachineV2AssessedMachinesV2OperationsRestClient = new AssessedMachinesV2RestOperations(Pipeline, Diagnostics.ApplicationId, Endpoint, assessedMachineV2AssessedMachinesV2OperationsApiVersion);
+#if DEBUG
+ ValidateResourceId(Id);
+#endif
+ }
+
+ internal static void ValidateResourceId(ResourceIdentifier id)
+ {
+ if (id.ResourceType != MachineAssessmentV2Resource.ResourceType)
+ throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, "Invalid resource type {0} expected {1}", id.ResourceType, MachineAssessmentV2Resource.ResourceType), nameof(id));
+ }
+
+ ///
+ /// Get a AssessedMachineV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual async Task> GetAsync(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.Get");
+ scope.Start();
+ try
+ {
+ var response = await _assessedMachineV2AssessedMachinesV2OperationsRestClient.GetAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken).ConfigureAwait(false);
+ if (response.Value == null)
+ throw new RequestFailedException(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get a AssessedMachineV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual Response Get(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.Get");
+ scope.Start();
+ try
+ {
+ var response = _assessedMachineV2AssessedMachinesV2OperationsRestClient.Get(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken);
+ if (response.Value == null)
+ throw new RequestFailedException(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// List AssessedMachineV2 resources by MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_ListByParent
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Filter query.
+ /// Optional parameter for page size.
+ /// Optional parameter for continuation token.
+ /// Total record count.
+ /// The cancellation token to use.
+ /// An async collection of that may take multiple service requests to iterate over.
+ public virtual AsyncPageable GetAllAsync(string filter = null, int? pageSize = null, string continuationToken = null, int? totalRecordCount = null, CancellationToken cancellationToken = default)
+ {
+ HttpMessage FirstPageRequest(int? pageSizeHint) => _assessedMachineV2AssessedMachinesV2OperationsRestClient.CreateListByParentRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, filter, pageSizeHint, continuationToken, totalRecordCount);
+ HttpMessage NextPageRequest(int? pageSizeHint, string nextLink) => _assessedMachineV2AssessedMachinesV2OperationsRestClient.CreateListByParentNextPageRequest(nextLink, Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, filter, pageSizeHint, continuationToken, totalRecordCount);
+ return GeneratorPageableHelpers.CreateAsyncPageable(FirstPageRequest, NextPageRequest, e => new AssessedMachineV2Resource(Client, AssessedMachineV2Data.DeserializeAssessedMachineV2Data(e)), _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics, Pipeline, "AssessedMachineV2Collection.GetAll", "value", "nextLink", cancellationToken);
+ }
+
+ ///
+ /// List AssessedMachineV2 resources by MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_ListByParent
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Filter query.
+ /// Optional parameter for page size.
+ /// Optional parameter for continuation token.
+ /// Total record count.
+ /// The cancellation token to use.
+ /// A collection of that may take multiple service requests to iterate over.
+ public virtual Pageable GetAll(string filter = null, int? pageSize = null, string continuationToken = null, int? totalRecordCount = null, CancellationToken cancellationToken = default)
+ {
+ HttpMessage FirstPageRequest(int? pageSizeHint) => _assessedMachineV2AssessedMachinesV2OperationsRestClient.CreateListByParentRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, filter, pageSizeHint, continuationToken, totalRecordCount);
+ HttpMessage NextPageRequest(int? pageSizeHint, string nextLink) => _assessedMachineV2AssessedMachinesV2OperationsRestClient.CreateListByParentNextPageRequest(nextLink, Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, filter, pageSizeHint, continuationToken, totalRecordCount);
+ return GeneratorPageableHelpers.CreatePageable(FirstPageRequest, NextPageRequest, e => new AssessedMachineV2Resource(Client, AssessedMachineV2Data.DeserializeAssessedMachineV2Data(e)), _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics, Pipeline, "AssessedMachineV2Collection.GetAll", "value", "nextLink", cancellationToken);
+ }
+
+ ///
+ /// Checks to see if the resource exists in azure.
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual async Task> ExistsAsync(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.Exists");
+ scope.Start();
+ try
+ {
+ var response = await _assessedMachineV2AssessedMachinesV2OperationsRestClient.GetAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken: cancellationToken).ConfigureAwait(false);
+ return Response.FromValue(response.Value != null, response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Checks to see if the resource exists in azure.
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual Response Exists(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.Exists");
+ scope.Start();
+ try
+ {
+ var response = _assessedMachineV2AssessedMachinesV2OperationsRestClient.Get(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken: cancellationToken);
+ return Response.FromValue(response.Value != null, response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Tries to get details for this resource from the service.
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual async Task> GetIfExistsAsync(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.GetIfExists");
+ scope.Start();
+ try
+ {
+ var response = await _assessedMachineV2AssessedMachinesV2OperationsRestClient.GetAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken: cancellationToken).ConfigureAwait(false);
+ if (response.Value == null)
+ return new NoValueResponse(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Tries to get details for this resource from the service.
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Machine assessment V2 Assessed Machine ARM name.
+ /// The cancellation token to use.
+ /// is an empty string, and was expected to be non-empty.
+ /// is null.
+ public virtual NullableResponse GetIfExists(string assessedMachineName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNullOrEmpty(assessedMachineName, nameof(assessedMachineName));
+
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Collection.GetIfExists");
+ scope.Start();
+ try
+ {
+ var response = _assessedMachineV2AssessedMachinesV2OperationsRestClient.Get(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Name, Id.Name, assessedMachineName, cancellationToken: cancellationToken);
+ if (response.Value == null)
+ return new NoValueResponse(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetAll().GetEnumerator();
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetAll().GetEnumerator();
+ }
+
+ IAsyncEnumerator IAsyncEnumerable.GetAsyncEnumerator(CancellationToken cancellationToken)
+ {
+ return GetAllAsync(cancellationToken: cancellationToken).GetAsyncEnumerator(cancellationToken);
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.Serialization.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.Serialization.cs
new file mode 100644
index 000000000000..e911eb602144
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.Serialization.cs
@@ -0,0 +1,155 @@
+// 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.Json;
+using Azure.Core;
+using Azure.ResourceManager.Migrate.Models;
+using Azure.ResourceManager.Models;
+
+namespace Azure.ResourceManager.Migrate
+{
+ public partial class AssessedMachineV2Data : IUtf8JsonSerializable, IJsonModel
+ {
+ void IUtf8JsonSerializable.Write(Utf8JsonWriter writer) => ((IJsonModel)this).Write(writer, ModelSerializationExtensions.WireOptions);
+
+ 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)
+ {
+ var format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ if (format != "J")
+ {
+ throw new FormatException($"The model {nameof(AssessedMachineV2Data)} does not support writing '{format}' format.");
+ }
+
+ base.JsonModelWriteCore(writer, options);
+ if (Optional.IsDefined(Properties))
+ {
+ writer.WritePropertyName("properties"u8);
+ writer.WriteObjectValue(Properties, options);
+ }
+ }
+
+ AssessedMachineV2Data IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options)
+ {
+ var format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+ if (format != "J")
+ {
+ throw new FormatException($"The model {nameof(AssessedMachineV2Data)} does not support reading '{format}' format.");
+ }
+
+ using JsonDocument document = JsonDocument.ParseValue(ref reader);
+ return DeserializeAssessedMachineV2Data(document.RootElement, options);
+ }
+
+ internal static AssessedMachineV2Data DeserializeAssessedMachineV2Data(JsonElement element, ModelReaderWriterOptions options = null)
+ {
+ options ??= ModelSerializationExtensions.WireOptions;
+
+ if (element.ValueKind == JsonValueKind.Null)
+ {
+ return null;
+ }
+ AssessedMachineV2Properties properties = default;
+ ResourceIdentifier id = default;
+ string name = default;
+ ResourceType type = default;
+ SystemData systemData = default;
+ IDictionary serializedAdditionalRawData = default;
+ Dictionary rawDataDictionary = new Dictionary();
+ foreach (var property in element.EnumerateObject())
+ {
+ if (property.NameEquals("properties"u8))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ properties = AssessedMachineV2Properties.DeserializeAssessedMachineV2Properties(property.Value, options);
+ continue;
+ }
+ if (property.NameEquals("id"u8))
+ {
+ id = new ResourceIdentifier(property.Value.GetString());
+ continue;
+ }
+ if (property.NameEquals("name"u8))
+ {
+ name = property.Value.GetString();
+ continue;
+ }
+ if (property.NameEquals("type"u8))
+ {
+ type = new ResourceType(property.Value.GetString());
+ continue;
+ }
+ if (property.NameEquals("systemData"u8))
+ {
+ if (property.Value.ValueKind == JsonValueKind.Null)
+ {
+ continue;
+ }
+ systemData = JsonSerializer.Deserialize(property.Value.GetRawText());
+ continue;
+ }
+ if (options.Format != "W")
+ {
+ rawDataDictionary.Add(property.Name, BinaryData.FromString(property.Value.GetRawText()));
+ }
+ }
+ serializedAdditionalRawData = rawDataDictionary;
+ return new AssessedMachineV2Data(
+ id,
+ name,
+ type,
+ systemData,
+ properties,
+ serializedAdditionalRawData);
+ }
+
+ BinaryData IPersistableModel.Write(ModelReaderWriterOptions options)
+ {
+ var format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+
+ switch (format)
+ {
+ case "J":
+ return ModelReaderWriter.Write(this, options);
+ default:
+ throw new FormatException($"The model {nameof(AssessedMachineV2Data)} does not support writing '{options.Format}' format.");
+ }
+ }
+
+ AssessedMachineV2Data IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options)
+ {
+ var format = options.Format == "W" ? ((IPersistableModel)this).GetFormatFromOptions(options) : options.Format;
+
+ switch (format)
+ {
+ case "J":
+ {
+ using JsonDocument document = JsonDocument.Parse(data, ModelSerializationExtensions.JsonDocumentOptions);
+ return DeserializeAssessedMachineV2Data(document.RootElement, options);
+ }
+ default:
+ throw new FormatException($"The model {nameof(AssessedMachineV2Data)} does not support reading '{options.Format}' format.");
+ }
+ }
+
+ string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options) => "J";
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.cs
new file mode 100644
index 000000000000..5f4badcf3e96
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Data.cs
@@ -0,0 +1,75 @@
+// 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.Migrate.Models;
+using Azure.ResourceManager.Models;
+
+namespace Azure.ResourceManager.Migrate
+{
+ ///
+ /// A class representing the AssessedMachineV2 data model.
+ /// Machine assessment V2 Assessed Machine resource.
+ ///
+ public partial class AssessedMachineV2Data : ResourceData
+ {
+ ///
+ /// Keeps track of any properties unknown to the library.
+ ///
+ /// To assign an object to the value of this property use .
+ ///
+ ///
+ /// To assign an already formatted json string to this property use .
+ ///
+ ///
+ /// Examples:
+ ///
+ ///
+ /// BinaryData.FromObjectAsJson("foo")
+ /// Creates a payload of "foo".
+ ///
+ ///
+ /// BinaryData.FromString("\"foo\"")
+ /// Creates a payload of "foo".
+ ///
+ ///
+ /// BinaryData.FromObjectAsJson(new { key = "value" })
+ /// Creates a payload of { "key": "value" }.
+ ///
+ ///
+ /// BinaryData.FromString("{\"key\": \"value\"}")
+ /// Creates a payload of { "key": "value" }.
+ ///
+ ///
+ ///
+ ///
+ private IDictionary _serializedAdditionalRawData;
+
+ /// Initializes a new instance of .
+ internal AssessedMachineV2Data()
+ {
+ }
+
+ /// Initializes a new instance of .
+ /// The id.
+ /// The name.
+ /// The resourceType.
+ /// The systemData.
+ /// The resource-specific properties for this resource.
+ /// Keeps track of any properties unknown to the library.
+ internal AssessedMachineV2Data(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, AssessedMachineV2Properties properties, IDictionary serializedAdditionalRawData) : base(id, name, resourceType, systemData)
+ {
+ Properties = properties;
+ _serializedAdditionalRawData = serializedAdditionalRawData;
+ }
+
+ /// The resource-specific properties for this resource.
+ public AssessedMachineV2Properties Properties { get; }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.Serialization.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.Serialization.cs
new file mode 100644
index 000000000000..05932de2afb4
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.Serialization.cs
@@ -0,0 +1,26 @@
+// 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.Migrate
+{
+ public partial class AssessedMachineV2Resource : IJsonModel
+ {
+ void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options) => ((IJsonModel)Data).Write(writer, options);
+
+ AssessedMachineV2Data IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options) => ((IJsonModel)Data).Create(ref reader, options);
+
+ BinaryData IPersistableModel.Write(ModelReaderWriterOptions options) => ModelReaderWriter.Write(Data, options);
+
+ AssessedMachineV2Data IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options) => ModelReaderWriter.Read(data, options);
+
+ string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options) => ((IPersistableModel)Data).GetFormatFromOptions(options);
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.cs
new file mode 100644
index 000000000000..00d4bc293a72
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/AssessedMachineV2Resource.cs
@@ -0,0 +1,172 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Globalization;
+using System.Threading;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.Core.Pipeline;
+
+namespace Azure.ResourceManager.Migrate
+{
+ ///
+ /// A Class representing an AssessedMachineV2 along with the instance operations that can be performed on it.
+ /// If you have a you can construct an
+ /// from an instance of using the GetAssessedMachineV2Resource method.
+ /// Otherwise you can get one from its parent resource using the GetAssessedMachineV2 method.
+ ///
+ public partial class AssessedMachineV2Resource : ArmResource
+ {
+ /// Generate the resource identifier of a instance.
+ /// The subscriptionId.
+ /// The resourceGroupName.
+ /// The projectName.
+ /// The assessmentName.
+ /// The assessedMachineName.
+ public static ResourceIdentifier CreateResourceIdentifier(string subscriptionId, string resourceGroupName, string projectName, string assessmentName, string assessedMachineName)
+ {
+ var resourceId = $"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}";
+ return new ResourceIdentifier(resourceId);
+ }
+
+ private readonly ClientDiagnostics _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics;
+ private readonly AssessedMachinesV2RestOperations _assessedMachineV2AssessedMachinesV2OperationsRestClient;
+ private readonly AssessedMachineV2Data _data;
+
+ /// Gets the resource type for the operations.
+ public static readonly ResourceType ResourceType = "Microsoft.Migrate/assessmentProjects/assessments/assessedMachines";
+
+ /// Initializes a new instance of the class for mocking.
+ protected AssessedMachineV2Resource()
+ {
+ }
+
+ /// Initializes a new instance of the class.
+ /// The client parameters to use in these operations.
+ /// The resource that is the target of operations.
+ internal AssessedMachineV2Resource(ArmClient client, AssessedMachineV2Data data) : this(client, data.Id)
+ {
+ HasData = true;
+ _data = data;
+ }
+
+ /// Initializes a new instance of the class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the resource that is the target of operations.
+ internal AssessedMachineV2Resource(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics = new ClientDiagnostics("Azure.ResourceManager.Migrate", ResourceType.Namespace, Diagnostics);
+ TryGetApiVersion(ResourceType, out string assessedMachineV2AssessedMachinesV2OperationsApiVersion);
+ _assessedMachineV2AssessedMachinesV2OperationsRestClient = new AssessedMachinesV2RestOperations(Pipeline, Diagnostics.ApplicationId, Endpoint, assessedMachineV2AssessedMachinesV2OperationsApiVersion);
+#if DEBUG
+ ValidateResourceId(Id);
+#endif
+ }
+
+ /// Gets whether or not the current instance has data.
+ public virtual bool HasData { get; }
+
+ /// Gets the data representing this Feature.
+ /// Throws if there is no data loaded in the current instance.
+ public virtual AssessedMachineV2Data Data
+ {
+ get
+ {
+ if (!HasData)
+ throw new InvalidOperationException("The current instance does not have data, you must call Get first.");
+ return _data;
+ }
+ }
+
+ internal static void ValidateResourceId(ResourceIdentifier id)
+ {
+ if (id.ResourceType != ResourceType)
+ throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, "Invalid resource type {0} expected {1}", id.ResourceType, ResourceType), nameof(id));
+ }
+
+ ///
+ /// Get a AssessedMachineV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// The cancellation token to use.
+ public virtual async Task> GetAsync(CancellationToken cancellationToken = default)
+ {
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Resource.Get");
+ scope.Start();
+ try
+ {
+ var response = await _assessedMachineV2AssessedMachinesV2OperationsRestClient.GetAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Parent.Name, Id.Parent.Name, Id.Name, cancellationToken).ConfigureAwait(false);
+ if (response.Value == null)
+ throw new RequestFailedException(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+
+ ///
+ /// Get a AssessedMachineV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}
+ ///
+ ///
+ /// Operation Id
+ /// AssessedMachineV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// The cancellation token to use.
+ public virtual Response Get(CancellationToken cancellationToken = default)
+ {
+ using var scope = _assessedMachineV2AssessedMachinesV2OperationsClientDiagnostics.CreateScope("AssessedMachineV2Resource.Get");
+ scope.Start();
+ try
+ {
+ var response = _assessedMachineV2AssessedMachinesV2OperationsRestClient.Get(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Parent.Name, Id.Parent.Name, Id.Name, cancellationToken);
+ if (response.Value == null)
+ throw new RequestFailedException(response.GetRawResponse());
+ return Response.FromValue(new AssessedMachineV2Resource(Client, response.Value), response.GetRawResponse());
+ }
+ catch (Exception e)
+ {
+ scope.Failed(e);
+ throw;
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MigrateExtensions.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MigrateExtensions.cs
new file mode 100644
index 000000000000..f9ff265e1d12
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MigrateExtensions.cs
@@ -0,0 +1,298 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading;
+using System.Threading.Tasks;
+using Azure.Core;
+using Azure.ResourceManager.Migrate.Mocking;
+using Azure.ResourceManager.Resources;
+
+namespace Azure.ResourceManager.Migrate
+{
+ /// A class to add extension methods to Azure.ResourceManager.Migrate.
+ public static partial class MigrateExtensions
+ {
+ private static MockableMigrateArmClient GetMockableMigrateArmClient(ArmClient client)
+ {
+ return client.GetCachedClient(client0 => new MockableMigrateArmClient(client0));
+ }
+
+ private static MockableMigrateResourceGroupResource GetMockableMigrateResourceGroupResource(ArmResource resource)
+ {
+ return resource.GetCachedClient(client => new MockableMigrateResourceGroupResource(client, resource.Id));
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// The resource ID of the resource to get.
+ /// is null.
+ /// Returns a object.
+ public static MachineAssessmentV2Resource GetMachineAssessmentV2Resource(this ArmClient client, ResourceIdentifier id)
+ {
+ Argument.AssertNotNull(client, nameof(client));
+
+ return GetMockableMigrateArmClient(client).GetMachineAssessmentV2Resource(id);
+ }
+
+ ///
+ /// Gets an object representing an along with the instance operations that can be performed on it but with no data.
+ /// You can use to create an from its components.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// The resource ID of the resource to get.
+ /// is null.
+ /// Returns a object.
+ public static AssessedMachineV2Resource GetAssessedMachineV2Resource(this ArmClient client, ResourceIdentifier id)
+ {
+ Argument.AssertNotNull(client, nameof(client));
+
+ return GetMockableMigrateArmClient(client).GetAssessedMachineV2Resource(id);
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// The resource ID of the resource to get.
+ /// is null.
+ /// Returns a object.
+ public static MachineAssessmentV2SummaryResource GetMachineAssessmentV2SummaryResource(this ArmClient client, ResourceIdentifier id)
+ {
+ Argument.AssertNotNull(client, nameof(client));
+
+ return GetMockableMigrateArmClient(client).GetMachineAssessmentV2SummaryResource(id);
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// The resource ID of the resource to get.
+ /// is null.
+ /// Returns a object.
+ public static MachineGraphAssessmentOptionResource GetMachineGraphAssessmentOptionResource(this ArmClient client, ResourceIdentifier id)
+ {
+ Argument.AssertNotNull(client, nameof(client));
+
+ return GetMockableMigrateArmClient(client).GetMachineGraphAssessmentOptionResource(id);
+ }
+
+ ///
+ /// Gets a collection of MachineAssessmentV2Resources in the ResourceGroupResource.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ /// An object representing collection of MachineAssessmentV2Resources and their operations over a MachineAssessmentV2Resource.
+ public static MachineAssessmentV2Collection GetMachineAssessmentV2s(this ResourceGroupResource resourceGroupResource, string projectName)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineAssessmentV2s(projectName);
+ }
+
+ ///
+ /// Get a MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}
+ ///
+ ///
+ /// Operation Id
+ /// MachineAssessmentV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// Machine Assessment V2 ARM name.
+ /// The cancellation token to use.
+ /// , or is null.
+ /// or is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public static async Task> GetMachineAssessmentV2Async(this ResourceGroupResource resourceGroupResource, string projectName, string assessmentName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return await GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineAssessmentV2Async(projectName, assessmentName, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// Get a MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}
+ ///
+ ///
+ /// Operation Id
+ /// MachineAssessmentV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// Machine Assessment V2 ARM name.
+ /// The cancellation token to use.
+ /// , or is null.
+ /// or is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public static Response GetMachineAssessmentV2(this ResourceGroupResource resourceGroupResource, string projectName, string assessmentName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineAssessmentV2(projectName, assessmentName, cancellationToken);
+ }
+
+ ///
+ /// Gets a collection of MachineGraphAssessmentOptionResources in the ResourceGroupResource.
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ /// An object representing collection of MachineGraphAssessmentOptionResources and their operations over a MachineGraphAssessmentOptionResource.
+ public static MachineGraphAssessmentOptionCollection GetMachineGraphAssessmentOptions(this ResourceGroupResource resourceGroupResource, string projectName)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineGraphAssessmentOptions(projectName);
+ }
+
+ ///
+ /// Get a MachineGraphAssessmentOptions
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessmentOptions/default
+ ///
+ ///
+ /// Operation Id
+ /// MachineGraphAssessmentOptions_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// The cancellation token to use.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public static async Task> GetMachineGraphAssessmentOptionAsync(this ResourceGroupResource resourceGroupResource, string projectName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return await GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineGraphAssessmentOptionAsync(projectName, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// Get a MachineGraphAssessmentOptions
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessmentOptions/default
+ ///
+ ///
+ /// Operation Id
+ /// MachineGraphAssessmentOptions_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Mocking
+ /// To mock this method, please mock instead.
+ ///
+ ///
+ /// The instance the method will execute against.
+ /// Assessment Project Name.
+ /// The cancellation token to use.
+ /// or is null.
+ /// is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public static Response GetMachineGraphAssessmentOption(this ResourceGroupResource resourceGroupResource, string projectName, CancellationToken cancellationToken = default)
+ {
+ Argument.AssertNotNull(resourceGroupResource, nameof(resourceGroupResource));
+
+ return GetMockableMigrateResourceGroupResource(resourceGroupResource).GetMachineGraphAssessmentOption(projectName, cancellationToken);
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateArmClient.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateArmClient.cs
new file mode 100644
index 000000000000..6b99b215234a
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateArmClient.cs
@@ -0,0 +1,85 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using Azure.Core;
+
+namespace Azure.ResourceManager.Migrate.Mocking
+{
+ /// A class to add extension methods to ArmClient.
+ public partial class MockableMigrateArmClient : ArmResource
+ {
+ /// Initializes a new instance of the class for mocking.
+ protected MockableMigrateArmClient()
+ {
+ }
+
+ /// Initializes a new instance of the class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the resource that is the target of operations.
+ internal MockableMigrateArmClient(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ }
+
+ internal MockableMigrateArmClient(ArmClient client) : this(client, ResourceIdentifier.Root)
+ {
+ }
+
+ private string GetApiVersionOrNull(ResourceType resourceType)
+ {
+ TryGetApiVersion(resourceType, out string apiVersion);
+ return apiVersion;
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// The resource ID of the resource to get.
+ /// Returns a object.
+ public virtual MachineAssessmentV2Resource GetMachineAssessmentV2Resource(ResourceIdentifier id)
+ {
+ MachineAssessmentV2Resource.ValidateResourceId(id);
+ return new MachineAssessmentV2Resource(Client, id);
+ }
+
+ ///
+ /// Gets an object representing an along with the instance operations that can be performed on it but with no data.
+ /// You can use to create an from its components.
+ ///
+ /// The resource ID of the resource to get.
+ /// Returns a object.
+ public virtual AssessedMachineV2Resource GetAssessedMachineV2Resource(ResourceIdentifier id)
+ {
+ AssessedMachineV2Resource.ValidateResourceId(id);
+ return new AssessedMachineV2Resource(Client, id);
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// The resource ID of the resource to get.
+ /// Returns a object.
+ public virtual MachineAssessmentV2SummaryResource GetMachineAssessmentV2SummaryResource(ResourceIdentifier id)
+ {
+ MachineAssessmentV2SummaryResource.ValidateResourceId(id);
+ return new MachineAssessmentV2SummaryResource(Client, id);
+ }
+
+ ///
+ /// Gets an object representing a along with the instance operations that can be performed on it but with no data.
+ /// You can use to create a from its components.
+ ///
+ /// The resource ID of the resource to get.
+ /// Returns a object.
+ public virtual MachineGraphAssessmentOptionResource GetMachineGraphAssessmentOptionResource(ResourceIdentifier id)
+ {
+ MachineGraphAssessmentOptionResource.ValidateResourceId(id);
+ return new MachineGraphAssessmentOptionResource(Client, id);
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateResourceGroupResource.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateResourceGroupResource.cs
new file mode 100644
index 000000000000..ceda310de2d3
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Extensions/MockableMigrateResourceGroupResource.cs
@@ -0,0 +1,182 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Threading;
+using System.Threading.Tasks;
+using Azure.Core;
+
+namespace Azure.ResourceManager.Migrate.Mocking
+{
+ /// A class to add extension methods to ResourceGroupResource.
+ public partial class MockableMigrateResourceGroupResource : ArmResource
+ {
+ /// Initializes a new instance of the class for mocking.
+ protected MockableMigrateResourceGroupResource()
+ {
+ }
+
+ /// Initializes a new instance of the class.
+ /// The client parameters to use in these operations.
+ /// The identifier of the resource that is the target of operations.
+ internal MockableMigrateResourceGroupResource(ArmClient client, ResourceIdentifier id) : base(client, id)
+ {
+ }
+
+ private string GetApiVersionOrNull(ResourceType resourceType)
+ {
+ TryGetApiVersion(resourceType, out string apiVersion);
+ return apiVersion;
+ }
+
+ /// Gets a collection of MachineAssessmentV2Resources in the ResourceGroupResource.
+ /// Assessment Project Name.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ /// An object representing collection of MachineAssessmentV2Resources and their operations over a MachineAssessmentV2Resource.
+ public virtual MachineAssessmentV2Collection GetMachineAssessmentV2s(string projectName)
+ {
+ return new MachineAssessmentV2Collection(Client, Id, projectName);
+ }
+
+ ///
+ /// Get a MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}
+ ///
+ ///
+ /// Operation Id
+ /// MachineAssessmentV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Assessment Project Name.
+ /// Machine Assessment V2 ARM name.
+ /// The cancellation token to use.
+ /// or is null.
+ /// or is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public virtual async Task> GetMachineAssessmentV2Async(string projectName, string assessmentName, CancellationToken cancellationToken = default)
+ {
+ return await GetMachineAssessmentV2s(projectName).GetAsync(assessmentName, cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// Get a MachineAssessmentV2
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessments/{assessmentName}
+ ///
+ ///
+ /// Operation Id
+ /// MachineAssessmentV2_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Assessment Project Name.
+ /// Machine Assessment V2 ARM name.
+ /// The cancellation token to use.
+ /// or is null.
+ /// or is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public virtual Response GetMachineAssessmentV2(string projectName, string assessmentName, CancellationToken cancellationToken = default)
+ {
+ return GetMachineAssessmentV2s(projectName).Get(assessmentName, cancellationToken);
+ }
+
+ /// Gets a collection of MachineGraphAssessmentOptionResources in the ResourceGroupResource.
+ /// Assessment Project Name.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ /// An object representing collection of MachineGraphAssessmentOptionResources and their operations over a MachineGraphAssessmentOptionResource.
+ public virtual MachineGraphAssessmentOptionCollection GetMachineGraphAssessmentOptions(string projectName)
+ {
+ return new MachineGraphAssessmentOptionCollection(Client, Id, projectName);
+ }
+
+ ///
+ /// Get a MachineGraphAssessmentOptions
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessmentOptions/default
+ ///
+ ///
+ /// Operation Id
+ /// MachineGraphAssessmentOptions_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Assessment Project Name.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public virtual async Task> GetMachineGraphAssessmentOptionAsync(string projectName, CancellationToken cancellationToken = default)
+ {
+ return await GetMachineGraphAssessmentOptions(projectName).GetAsync(cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// Get a MachineGraphAssessmentOptions
+ ///
+ ///
+ /// Request Path
+ /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/assessmentProjects/{projectName}/assessmentOptions/default
+ ///
+ ///
+ /// Operation Id
+ /// MachineGraphAssessmentOptions_Get
+ ///
+ ///
+ /// Default Api Version
+ /// 2024-03-03-preview
+ ///
+ ///
+ /// Resource
+ ///
+ ///
+ ///
+ ///
+ /// Assessment Project Name.
+ /// The cancellation token to use.
+ /// is null.
+ /// is an empty string, and was expected to be non-empty.
+ [ForwardsClientCalls]
+ public virtual Response GetMachineGraphAssessmentOption(string projectName, CancellationToken cancellationToken = default)
+ {
+ return GetMachineGraphAssessmentOptions(projectName).Get(cancellationToken);
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/Argument.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/Argument.cs
new file mode 100644
index 000000000000..0182a5196211
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/Argument.cs
@@ -0,0 +1,129 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+
+namespace Azure.ResourceManager.Migrate
+{
+ internal static class Argument
+ {
+ public static void AssertNotNull(T value, string name)
+ {
+ if (value is null)
+ {
+ throw new ArgumentNullException(name);
+ }
+ }
+
+ public static void AssertNotNull(T? value, string name)
+ where T : struct
+ {
+ if (!value.HasValue)
+ {
+ throw new ArgumentNullException(name);
+ }
+ }
+
+ public static void AssertNotNullOrEmpty(IEnumerable value, string name)
+ {
+ if (value is null)
+ {
+ throw new ArgumentNullException(name);
+ }
+ if (value is ICollection collectionOfT && collectionOfT.Count == 0)
+ {
+ throw new ArgumentException("Value cannot be an empty collection.", name);
+ }
+ if (value is ICollection collection && collection.Count == 0)
+ {
+ throw new ArgumentException("Value cannot be an empty collection.", name);
+ }
+ using IEnumerator e = value.GetEnumerator();
+ if (!e.MoveNext())
+ {
+ throw new ArgumentException("Value cannot be an empty collection.", name);
+ }
+ }
+
+ public static void AssertNotNullOrEmpty(string value, string name)
+ {
+ if (value is null)
+ {
+ throw new ArgumentNullException(name);
+ }
+ if (value.Length == 0)
+ {
+ throw new ArgumentException("Value cannot be an empty string.", name);
+ }
+ }
+
+ public static void AssertNotNullOrWhiteSpace(string value, string name)
+ {
+ if (value is null)
+ {
+ throw new ArgumentNullException(name);
+ }
+ if (string.IsNullOrWhiteSpace(value))
+ {
+ throw new ArgumentException("Value cannot be empty or contain only white-space characters.", name);
+ }
+ }
+
+ public static void AssertNotDefault(ref T value, string name)
+ where T : struct, IEquatable
+ {
+ if (value.Equals(default))
+ {
+ throw new ArgumentException("Value cannot be empty.", name);
+ }
+ }
+
+ public static void AssertInRange(T value, T minimum, T maximum, string name)
+ where T : notnull, IComparable
+ {
+ if (minimum.CompareTo(value) > 0)
+ {
+ throw new ArgumentOutOfRangeException(name, "Value is less than the minimum allowed.");
+ }
+ if (maximum.CompareTo(value) < 0)
+ {
+ throw new ArgumentOutOfRangeException(name, "Value is greater than the maximum allowed.");
+ }
+ }
+
+ public static void AssertEnumDefined(Type enumType, object value, string name)
+ {
+ if (!Enum.IsDefined(enumType, value))
+ {
+ throw new ArgumentException($"Value not defined for {enumType.FullName}.", name);
+ }
+ }
+
+ public static T CheckNotNull(T value, string name)
+ where T : class
+ {
+ AssertNotNull(value, name);
+ return value;
+ }
+
+ public static string CheckNotNullOrEmpty(string value, string name)
+ {
+ AssertNotNullOrEmpty(value, name);
+ return value;
+ }
+
+ public static void AssertNull(T value, string name, string message = null)
+ {
+ if (value != null)
+ {
+ throw new ArgumentException(message ?? "Value must be null.", name);
+ }
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingDictionary.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingDictionary.cs
new file mode 100644
index 000000000000..a66f9d42e55e
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingDictionary.cs
@@ -0,0 +1,167 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+//
+
+#nullable disable
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+
+namespace Azure.ResourceManager.Migrate
+{
+ internal class ChangeTrackingDictionary : IDictionary, IReadOnlyDictionary where TKey : notnull
+ {
+ private IDictionary _innerDictionary;
+
+ public ChangeTrackingDictionary()
+ {
+ }
+
+ public ChangeTrackingDictionary(IDictionary dictionary)
+ {
+ if (dictionary == null)
+ {
+ return;
+ }
+ _innerDictionary = new Dictionary(dictionary);
+ }
+
+ public ChangeTrackingDictionary(IReadOnlyDictionary dictionary)
+ {
+ if (dictionary == null)
+ {
+ return;
+ }
+ _innerDictionary = new Dictionary();
+ foreach (var pair in dictionary)
+ {
+ _innerDictionary.Add(pair);
+ }
+ }
+
+ public bool IsUndefined => _innerDictionary == null;
+
+ public int Count => IsUndefined ? 0 : EnsureDictionary().Count;
+
+ public bool IsReadOnly => IsUndefined ? false : EnsureDictionary().IsReadOnly;
+
+ public ICollection Keys => IsUndefined ? Array.Empty() : EnsureDictionary().Keys;
+
+ public ICollection Values => IsUndefined ? Array.Empty() : EnsureDictionary().Values;
+
+ public TValue this[TKey key]
+ {
+ get
+ {
+ if (IsUndefined)
+ {
+ throw new KeyNotFoundException(nameof(key));
+ }
+ return EnsureDictionary()[key];
+ }
+ set
+ {
+ EnsureDictionary()[key] = value;
+ }
+ }
+
+ IEnumerable IReadOnlyDictionary.Keys => Keys;
+
+ IEnumerable IReadOnlyDictionary.Values => Values;
+
+ public IEnumerator> GetEnumerator()
+ {
+ if (IsUndefined)
+ {
+ IEnumerator> enumerateEmpty()
+ {
+ yield break;
+ }
+ return enumerateEmpty();
+ }
+ return EnsureDictionary().GetEnumerator();
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetEnumerator();
+ }
+
+ public void Add(KeyValuePair item)
+ {
+ EnsureDictionary().Add(item);
+ }
+
+ public void Clear()
+ {
+ EnsureDictionary().Clear();
+ }
+
+ public bool Contains(KeyValuePair item)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureDictionary().Contains(item);
+ }
+
+ public void CopyTo(KeyValuePair[] array, int index)
+ {
+ if (IsUndefined)
+ {
+ return;
+ }
+ EnsureDictionary().CopyTo(array, index);
+ }
+
+ public bool Remove(KeyValuePair item)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureDictionary().Remove(item);
+ }
+
+ public void Add(TKey key, TValue value)
+ {
+ EnsureDictionary().Add(key, value);
+ }
+
+ public bool ContainsKey(TKey key)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureDictionary().ContainsKey(key);
+ }
+
+ public bool Remove(TKey key)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureDictionary().Remove(key);
+ }
+
+ public bool TryGetValue(TKey key, out TValue value)
+ {
+ if (IsUndefined)
+ {
+ value = default;
+ return false;
+ }
+ return EnsureDictionary().TryGetValue(key, out value);
+ }
+
+ public IDictionary EnsureDictionary()
+ {
+ return _innerDictionary ??= new Dictionary();
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingList.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingList.cs
new file mode 100644
index 000000000000..47489526e8bf
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ChangeTrackingList.cs
@@ -0,0 +1,153 @@
+// 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.Linq;
+
+namespace Azure.ResourceManager.Migrate
+{
+ internal class ChangeTrackingList : IList, IReadOnlyList
+ {
+ private IList _innerList;
+
+ public ChangeTrackingList()
+ {
+ }
+
+ public ChangeTrackingList(IList innerList)
+ {
+ if (innerList != null)
+ {
+ _innerList = innerList;
+ }
+ }
+
+ public ChangeTrackingList(IReadOnlyList innerList)
+ {
+ if (innerList != null)
+ {
+ _innerList = innerList.ToList();
+ }
+ }
+
+ public bool IsUndefined => _innerList == null;
+
+ public int Count => IsUndefined ? 0 : EnsureList().Count;
+
+ public bool IsReadOnly => IsUndefined ? false : EnsureList().IsReadOnly;
+
+ public T this[int index]
+ {
+ get
+ {
+ if (IsUndefined)
+ {
+ throw new ArgumentOutOfRangeException(nameof(index));
+ }
+ return EnsureList()[index];
+ }
+ set
+ {
+ if (IsUndefined)
+ {
+ throw new ArgumentOutOfRangeException(nameof(index));
+ }
+ EnsureList()[index] = value;
+ }
+ }
+
+ public void Reset()
+ {
+ _innerList = null;
+ }
+
+ public IEnumerator GetEnumerator()
+ {
+ if (IsUndefined)
+ {
+ IEnumerator enumerateEmpty()
+ {
+ yield break;
+ }
+ return enumerateEmpty();
+ }
+ return EnsureList().GetEnumerator();
+ }
+
+ IEnumerator IEnumerable.GetEnumerator()
+ {
+ return GetEnumerator();
+ }
+
+ public void Add(T item)
+ {
+ EnsureList().Add(item);
+ }
+
+ public void Clear()
+ {
+ EnsureList().Clear();
+ }
+
+ public bool Contains(T item)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureList().Contains(item);
+ }
+
+ public void CopyTo(T[] array, int arrayIndex)
+ {
+ if (IsUndefined)
+ {
+ return;
+ }
+ EnsureList().CopyTo(array, arrayIndex);
+ }
+
+ public bool Remove(T item)
+ {
+ if (IsUndefined)
+ {
+ return false;
+ }
+ return EnsureList().Remove(item);
+ }
+
+ public int IndexOf(T item)
+ {
+ if (IsUndefined)
+ {
+ return -1;
+ }
+ return EnsureList().IndexOf(item);
+ }
+
+ public void Insert(int index, T item)
+ {
+ EnsureList().Insert(index, item);
+ }
+
+ public void RemoveAt(int index)
+ {
+ if (IsUndefined)
+ {
+ throw new ArgumentOutOfRangeException(nameof(index));
+ }
+ EnsureList().RemoveAt(index);
+ }
+
+ public IList EnsureList()
+ {
+ return _innerList ??= new List();
+ }
+ }
+}
diff --git a/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ModelSerializationExtensions.cs b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ModelSerializationExtensions.cs
new file mode 100644
index 000000000000..8f874b8eacb2
--- /dev/null
+++ b/sdk/migrate/Azure.ResourceManager.Migrate/src/Generated/Internal/ModelSerializationExtensions.cs
@@ -0,0 +1,399 @@
+// 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.Diagnostics;
+using System.Globalization;
+using System.Text.Json;
+using System.Xml;
+using Azure.Core;
+
+namespace Azure.ResourceManager.Migrate
+{
+ internal static class ModelSerializationExtensions
+ {
+ internal static readonly JsonDocumentOptions JsonDocumentOptions = new JsonDocumentOptions { MaxDepth = 256 };
+ internal static readonly ModelReaderWriterOptions WireOptions = new ModelReaderWriterOptions("W");
+
+ public static object GetObject(this JsonElement element)
+ {
+ switch (element.ValueKind)
+ {
+ case JsonValueKind.String:
+ return element.GetString();
+ case JsonValueKind.Number:
+ if (element.TryGetInt32(out int intValue))
+ {
+ return intValue;
+ }
+ if (element.TryGetInt64(out long longValue))
+ {
+ return longValue;
+ }
+ return element.GetDouble();
+ case JsonValueKind.True:
+ return true;
+ case JsonValueKind.False:
+ return false;
+ case JsonValueKind.Undefined:
+ case JsonValueKind.Null:
+ return null;
+ case JsonValueKind.Object:
+ var dictionary = new Dictionary();
+ foreach (var jsonProperty in element.EnumerateObject())
+ {
+ dictionary.Add(jsonProperty.Name, jsonProperty.Value.GetObject());
+ }
+ return dictionary;
+ case JsonValueKind.Array:
+ var list = new List