diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationAppliancesOperations.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationAppliancesOperations.cs
new file mode 100644
index 000000000000..54fcdd53c1c9
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationAppliancesOperations.cs
@@ -0,0 +1,78 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Microsoft.Rest.Azure.OData;
+ using Models;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// ReplicationAppliancesOperations operations.
+ ///
+ public partial interface IReplicationAppliancesOperations
+ {
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// OData parameters to apply to the operation.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ Task>> ListWithHttpMessagesAsync(ODataQuery odataQuery = default(ODataQuery), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ Task>> ListNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationProtectedItemsOperations.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationProtectedItemsOperations.cs
index bf50c778eb1c..b9fab5a366d2 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationProtectedItemsOperations.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/IReplicationProtectedItemsOperations.cs
@@ -520,6 +520,41 @@ public partial interface IReplicationProtectedItemsOperations
///
Task> ResolveHealthErrorsWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, ResolveHealthInput resolveHealthInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication
+ /// protected item.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ Task> SwitchProviderWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
/// Execute test failover.
///
///
@@ -1159,6 +1194,41 @@ public partial interface IReplicationProtectedItemsOperations
///
Task> BeginResolveHealthErrorsWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, ResolveHealthInput resolveHealthInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication
+ /// protected item.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ Task> BeginSwitchProviderWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken));
+ ///
/// Execute test failover.
///
///
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ISiteRecoveryManagementClient.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ISiteRecoveryManagementClient.cs
index edfade7bbef0..0d7d449cb969 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ISiteRecoveryManagementClient.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ISiteRecoveryManagementClient.cs
@@ -89,6 +89,11 @@ public partial interface ISiteRecoveryManagementClient : System.IDisposable
///
IReplicationAlertSettingsOperations ReplicationAlertSettings { get; }
+ ///
+ /// Gets the IReplicationAppliancesOperations.
+ ///
+ IReplicationAppliancesOperations ReplicationAppliances { get; }
+
///
/// Gets the IReplicationEligibilityResultsOperations.
///
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AEnableProtectionInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AEnableProtectionInput.cs
index 134d0f9f587e..27b5775aaa6d 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AEnableProtectionInput.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AEnableProtectionInput.cs
@@ -56,6 +56,8 @@ public A2AEnableProtectionInput()
/// information (for two pass flows).
/// The recovery availability
/// zone.
+ /// The recovery extended
+ /// location.
/// The recovery Azure virtual
/// network ARM id.
/// The recovery subnet name.
@@ -63,7 +65,7 @@ public A2AEnableProtectionInput()
/// scale set Id.
/// The recovery
/// capacity reservation group Id.
- public A2AEnableProtectionInput(string fabricObjectId, string recoveryContainerId = default(string), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string recoveryProximityPlacementGroupId = default(string), IList vmDisks = default(IList), IList vmManagedDisks = default(IList), string multiVmGroupName = default(string), string multiVmGroupId = default(string), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string recoveryAvailabilityZone = default(string), string recoveryAzureNetworkId = default(string), string recoverySubnetName = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string))
+ public A2AEnableProtectionInput(string fabricObjectId, string recoveryContainerId = default(string), string recoveryResourceGroupId = default(string), string recoveryCloudServiceId = default(string), string recoveryAvailabilitySetId = default(string), string recoveryProximityPlacementGroupId = default(string), IList vmDisks = default(IList), IList vmManagedDisks = default(IList), string multiVmGroupName = default(string), string multiVmGroupId = default(string), string recoveryBootDiagStorageAccountId = default(string), DiskEncryptionInfo diskEncryptionInfo = default(DiskEncryptionInfo), string recoveryAvailabilityZone = default(string), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string recoveryAzureNetworkId = default(string), string recoverySubnetName = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string))
{
FabricObjectId = fabricObjectId;
RecoveryContainerId = recoveryContainerId;
@@ -78,6 +80,7 @@ public A2AEnableProtectionInput()
RecoveryBootDiagStorageAccountId = recoveryBootDiagStorageAccountId;
DiskEncryptionInfo = diskEncryptionInfo;
RecoveryAvailabilityZone = recoveryAvailabilityZone;
+ RecoveryExtendedLocation = recoveryExtendedLocation;
RecoveryAzureNetworkId = recoveryAzureNetworkId;
RecoverySubnetName = recoverySubnetName;
RecoveryVirtualMachineScaleSetId = recoveryVirtualMachineScaleSetId;
@@ -170,6 +173,12 @@ public A2AEnableProtectionInput()
[JsonProperty(PropertyName = "recoveryAvailabilityZone")]
public string RecoveryAvailabilityZone { get; set; }
+ ///
+ /// Gets or sets the recovery extended location.
+ ///
+ [JsonProperty(PropertyName = "recoveryExtendedLocation")]
+ public ExtendedLocation RecoveryExtendedLocation { get; set; }
+
///
/// Gets or sets the recovery Azure virtual network ARM id.
///
@@ -226,6 +235,10 @@ public virtual void Validate()
}
}
}
+ if (RecoveryExtendedLocation != null)
+ {
+ RecoveryExtendedLocation.Validate();
+ }
}
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AReplicationDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AReplicationDetails.cs
index 6a66955590ff..411caaf92d44 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AReplicationDetails.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/A2AReplicationDetails.cs
@@ -40,6 +40,10 @@ public A2AReplicationDetails()
/// fabric location.
/// The initial recovery availability
/// zone.
+ /// The initial primary
+ /// extended location.
+ /// The initial recovery
+ /// extended location.
/// The initial recovery
/// fabric location.
/// The multi vm group Id.
@@ -114,6 +118,10 @@ public A2AReplicationDetails()
/// zone.
/// The recovery availability
/// zone.
+ /// The primary Extended
+ /// Location.
+ /// The recovery Extended
+ /// Location.
/// The encryption type of the VM.
/// Possible values include: 'NotEncrypted', 'OnePassEncrypted',
/// 'TwoPassEncrypted'
@@ -129,12 +137,14 @@ public A2AReplicationDetails()
/// machine scale set id.
/// The recovery
/// capacity reservation group Id.
- public A2AReplicationDetails(string fabricObjectId = default(string), string initialPrimaryZone = default(string), string initialPrimaryFabricLocation = default(string), string initialRecoveryZone = default(string), string initialRecoveryFabricLocation = default(string), string multiVmGroupId = default(string), string multiVmGroupName = default(string), string multiVmGroupCreateOption = default(string), string managementId = default(string), IList protectedDisks = default(IList), IList unprotectedDisks = default(IList), IList protectedManagedDisks = default(IList), string recoveryBootDiagStorageAccountId = default(string), string primaryFabricLocation = default(string), string recoveryFabricLocation = default(string), string osType = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureVMName = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryCloudService = default(string), string recoveryAvailabilitySet = default(string), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), IList vmNics = default(IList), AzureToAzureVmSyncedConfigDetails vmSyncedConfigDetails = default(AzureToAzureVmSyncedConfigDetails), int? monitoringPercentageCompletion = default(int?), string monitoringJobType = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), bool? isReplicationAgentUpdateRequired = default(bool?), System.DateTime? agentCertificateExpiryDate = default(System.DateTime?), bool? isReplicationAgentCertificateUpdateRequired = default(bool?), string recoveryFabricObjectId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), string lifecycleId = default(string), string testFailoverRecoveryFabricObjectId = default(string), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string primaryAvailabilityZone = default(string), string recoveryAvailabilityZone = default(string), string vmEncryptionType = default(string), string tfoAzureVMName = default(string), string recoveryAzureGeneration = default(string), string recoveryProximityPlacementGroupId = default(string), string autoProtectionOfDataDisk = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string))
+ public A2AReplicationDetails(string fabricObjectId = default(string), string initialPrimaryZone = default(string), string initialPrimaryFabricLocation = default(string), string initialRecoveryZone = default(string), ExtendedLocation initialPrimaryExtendedLocation = default(ExtendedLocation), ExtendedLocation initialRecoveryExtendedLocation = default(ExtendedLocation), string initialRecoveryFabricLocation = default(string), string multiVmGroupId = default(string), string multiVmGroupName = default(string), string multiVmGroupCreateOption = default(string), string managementId = default(string), IList protectedDisks = default(IList), IList unprotectedDisks = default(IList), IList protectedManagedDisks = default(IList), string recoveryBootDiagStorageAccountId = default(string), string primaryFabricLocation = default(string), string recoveryFabricLocation = default(string), string osType = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureVMName = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryCloudService = default(string), string recoveryAvailabilitySet = default(string), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), IList vmNics = default(IList), AzureToAzureVmSyncedConfigDetails vmSyncedConfigDetails = default(AzureToAzureVmSyncedConfigDetails), int? monitoringPercentageCompletion = default(int?), string monitoringJobType = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), bool? isReplicationAgentUpdateRequired = default(bool?), System.DateTime? agentCertificateExpiryDate = default(System.DateTime?), bool? isReplicationAgentCertificateUpdateRequired = default(bool?), string recoveryFabricObjectId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), string lifecycleId = default(string), string testFailoverRecoveryFabricObjectId = default(string), long? rpoInSeconds = default(long?), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), string primaryAvailabilityZone = default(string), string recoveryAvailabilityZone = default(string), ExtendedLocation primaryExtendedLocation = default(ExtendedLocation), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation), string vmEncryptionType = default(string), string tfoAzureVMName = default(string), string recoveryAzureGeneration = default(string), string recoveryProximityPlacementGroupId = default(string), string autoProtectionOfDataDisk = default(string), string recoveryVirtualMachineScaleSetId = default(string), string recoveryCapacityReservationGroupId = default(string))
{
FabricObjectId = fabricObjectId;
InitialPrimaryZone = initialPrimaryZone;
InitialPrimaryFabricLocation = initialPrimaryFabricLocation;
InitialRecoveryZone = initialRecoveryZone;
+ InitialPrimaryExtendedLocation = initialPrimaryExtendedLocation;
+ InitialRecoveryExtendedLocation = initialRecoveryExtendedLocation;
InitialRecoveryFabricLocation = initialRecoveryFabricLocation;
MultiVmGroupId = multiVmGroupId;
MultiVmGroupName = multiVmGroupName;
@@ -173,6 +183,8 @@ public A2AReplicationDetails()
LastRpoCalculatedTime = lastRpoCalculatedTime;
PrimaryAvailabilityZone = primaryAvailabilityZone;
RecoveryAvailabilityZone = recoveryAvailabilityZone;
+ PrimaryExtendedLocation = primaryExtendedLocation;
+ RecoveryExtendedLocation = recoveryExtendedLocation;
VmEncryptionType = vmEncryptionType;
TfoAzureVMName = tfoAzureVMName;
RecoveryAzureGeneration = recoveryAzureGeneration;
@@ -212,6 +224,18 @@ public A2AReplicationDetails()
[JsonProperty(PropertyName = "initialRecoveryZone")]
public string InitialRecoveryZone { get; private set; }
+ ///
+ /// Gets or sets the initial primary extended location.
+ ///
+ [JsonProperty(PropertyName = "initialPrimaryExtendedLocation")]
+ public ExtendedLocation InitialPrimaryExtendedLocation { get; set; }
+
+ ///
+ /// Gets or sets the initial recovery extended location.
+ ///
+ [JsonProperty(PropertyName = "initialRecoveryExtendedLocation")]
+ public ExtendedLocation InitialRecoveryExtendedLocation { get; set; }
+
///
/// Gets the initial recovery fabric location.
///
@@ -451,6 +475,18 @@ public A2AReplicationDetails()
[JsonProperty(PropertyName = "recoveryAvailabilityZone")]
public string RecoveryAvailabilityZone { get; set; }
+ ///
+ /// Gets or sets the primary Extended Location.
+ ///
+ [JsonProperty(PropertyName = "primaryExtendedLocation")]
+ public ExtendedLocation PrimaryExtendedLocation { get; set; }
+
+ ///
+ /// Gets or sets the recovery Extended Location.
+ ///
+ [JsonProperty(PropertyName = "recoveryExtendedLocation")]
+ public ExtendedLocation RecoveryExtendedLocation { get; set; }
+
///
/// Gets the encryption type of the VM. Possible values include:
/// 'NotEncrypted', 'OnePassEncrypted', 'TwoPassEncrypted'
@@ -495,5 +531,30 @@ public A2AReplicationDetails()
[JsonProperty(PropertyName = "recoveryCapacityReservationGroupId")]
public string RecoveryCapacityReservationGroupId { get; set; }
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (InitialPrimaryExtendedLocation != null)
+ {
+ InitialPrimaryExtendedLocation.Validate();
+ }
+ if (InitialRecoveryExtendedLocation != null)
+ {
+ InitialRecoveryExtendedLocation.Validate();
+ }
+ if (PrimaryExtendedLocation != null)
+ {
+ PrimaryExtendedLocation.Validate();
+ }
+ if (RecoveryExtendedLocation != null)
+ {
+ RecoveryExtendedLocation.Validate();
+ }
+ }
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceQueryParameter.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceQueryParameter.cs
new file mode 100644
index 000000000000..bc898796cff1
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceQueryParameter.cs
@@ -0,0 +1,53 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Query parameter to get appliance.
+ ///
+ public partial class ApplianceQueryParameter
+ {
+ ///
+ /// Initializes a new instance of the ApplianceQueryParameter class.
+ ///
+ public ApplianceQueryParameter()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ApplianceQueryParameter class.
+ ///
+ /// The providerType to be used for fetching
+ /// appliance details.
+ public ApplianceQueryParameter(string providerType = default(string))
+ {
+ ProviderType = providerType;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the providerType to be used for fetching appliance
+ /// details.
+ ///
+ [JsonProperty(PropertyName = "providerType")]
+ public string ProviderType { get; set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceSpecificDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceSpecificDetails.cs
new file mode 100644
index 000000000000..c1f8e0b9f8c2
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ApplianceSpecificDetails.cs
@@ -0,0 +1,35 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using System.Linq;
+
+ ///
+ /// Appliance specific details.
+ ///
+ public partial class ApplianceSpecificDetails
+ {
+ ///
+ /// Initializes a new instance of the ApplianceSpecificDetails class.
+ ///
+ public ApplianceSpecificDetails()
+ {
+ CustomInit();
+ }
+
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ExtendedLocation.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ExtendedLocation.cs
new file mode 100644
index 000000000000..750848ecfb9d
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ExtendedLocation.cs
@@ -0,0 +1,78 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Extended location of the resource.
+ ///
+ public partial class ExtendedLocation
+ {
+ ///
+ /// Initializes a new instance of the ExtendedLocation class.
+ ///
+ public ExtendedLocation()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ExtendedLocation class.
+ ///
+ /// The name of the extended location.
+ public ExtendedLocation(string name)
+ {
+ Name = name;
+ CustomInit();
+ }
+ ///
+ /// Static constructor for ExtendedLocation class.
+ ///
+ static ExtendedLocation()
+ {
+ Type = "EdgeZone";
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the name of the extended location.
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; set; }
+
+ ///
+ /// The extended location type.
+ ///
+ [JsonProperty(PropertyName = "type")]
+ public static string Type { get; private set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (Name == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "Name");
+ }
+ }
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ProtectedDiskDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ProtectedDiskDetails.cs
index c2067c8f82cb..0d356f8f0b7e 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ProtectedDiskDetails.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ProtectedDiskDetails.cs
@@ -67,7 +67,9 @@ public InMageAzureV2ProtectedDiskDetails()
/// The resync start time.
/// The Progress Health.
/// The Progress Status.
- public InMageAzureV2ProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string protectionStage = default(string), string healthErrorCode = default(string), long? rpoInSeconds = default(long?), string resyncRequired = default(string), int? resyncProgressPercentage = default(int?), long? resyncDurationInSeconds = default(long?), long? diskCapacityInBytes = default(long?), long? fileSystemCapacityInBytes = default(long?), double? sourceDataInMegaBytes = default(double?), double? psDataInMegaBytes = default(double?), double? targetDataInMegaBytes = default(double?), string diskResized = default(string), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), long? resyncProcessedBytes = default(long?), long? resyncTotalTransferredBytes = default(long?), long? resyncLast15MinutesTransferredBytes = default(long?), System.DateTime? resyncLastDataTransferTimeUTC = default(System.DateTime?), System.DateTime? resyncStartTime = default(System.DateTime?), string progressHealth = default(string), string progressStatus = default(string))
+ /// The seconds to take for
+ /// switch provider.
+ public InMageAzureV2ProtectedDiskDetails(string diskId = default(string), string diskName = default(string), string protectionStage = default(string), string healthErrorCode = default(string), long? rpoInSeconds = default(long?), string resyncRequired = default(string), int? resyncProgressPercentage = default(int?), long? resyncDurationInSeconds = default(long?), long? diskCapacityInBytes = default(long?), long? fileSystemCapacityInBytes = default(long?), double? sourceDataInMegaBytes = default(double?), double? psDataInMegaBytes = default(double?), double? targetDataInMegaBytes = default(double?), string diskResized = default(string), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), long? resyncProcessedBytes = default(long?), long? resyncTotalTransferredBytes = default(long?), long? resyncLast15MinutesTransferredBytes = default(long?), System.DateTime? resyncLastDataTransferTimeUTC = default(System.DateTime?), System.DateTime? resyncStartTime = default(System.DateTime?), string progressHealth = default(string), string progressStatus = default(string), long? secondsToTakeSwitchProvider = default(long?))
{
DiskId = diskId;
DiskName = diskName;
@@ -91,6 +93,7 @@ public InMageAzureV2ProtectedDiskDetails()
ResyncStartTime = resyncStartTime;
ProgressHealth = progressHealth;
ProgressStatus = progressStatus;
+ SecondsToTakeSwitchProvider = secondsToTakeSwitchProvider;
CustomInit();
}
@@ -232,5 +235,11 @@ public InMageAzureV2ProtectedDiskDetails()
[JsonProperty(PropertyName = "progressStatus")]
public string ProgressStatus { get; set; }
+ ///
+ /// Gets or sets the seconds to take for switch provider.
+ ///
+ [JsonProperty(PropertyName = "secondsToTakeSwitchProvider")]
+ public long? SecondsToTakeSwitchProvider { get; set; }
+
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ReplicationDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ReplicationDetails.cs
index 89c244158602..405a696125ef 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ReplicationDetails.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2ReplicationDetails.cs
@@ -148,7 +148,11 @@ public InMageAzureV2ReplicationDetails()
/// The tags for the target managed
/// disks.
/// The tags for the target NICs.
- public InMageAzureV2ReplicationDetails(string infrastructureVmId = default(string), string vCenterInfrastructureId = default(string), string protectionStage = default(string), string vmId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), int? resyncProgressPercentage = default(int?), long? rpoInSeconds = default(long?), double? compressedDataRateInMB = default(double?), double? uncompressedDataRateInMB = default(double?), string ipAddress = default(string), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), string isAgentUpdateRequired = default(string), string isRebootAfterUpdateRequired = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string processServerId = default(string), string processServerName = default(string), string multiVmGroupId = default(string), string multiVmGroupName = default(string), string multiVmSyncStatus = default(string), IList protectedDisks = default(IList), string diskResized = default(string), string masterTargetId = default(string), int? sourceVmCpuCount = default(int?), int? sourceVmRamSizeInMB = default(int?), string osType = default(string), string vhdName = default(string), string osDiskId = default(string), IList azureVMDiskDetails = default(IList), string recoveryAzureVMName = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureStorageAccount = default(string), string recoveryAzureLogStorageAccountId = default(string), IList vmNics = default(IList), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), string selectedSourceNicId = default(string), string discoveryType = default(string), string enableRdpOnTargetOption = default(string), IList datastores = default(IList), string targetVmId = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisks = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), IList validationErrors = default(IList), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), System.DateTime? lastUpdateReceivedTime = default(System.DateTime?), string replicaId = default(string), string osVersion = default(string), IList protectedManagedDisks = default(IList), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), string firmwareType = default(string), string azureVmGeneration = default(string), bool? isAdditionalStatsAvailable = default(bool?), long? totalDataTransferred = default(long?), string totalProgressHealth = default(string), IDictionary targetVmTags = default(IDictionary), IDictionary seedManagedDiskTags = default(IDictionary), IDictionary targetManagedDiskTags = default(IDictionary), IDictionary targetNicTags = default(IDictionary))
+ /// The switch
+ /// provider blocking error information.
+ /// The switch provider blocking
+ /// error information.
+ public InMageAzureV2ReplicationDetails(string infrastructureVmId = default(string), string vCenterInfrastructureId = default(string), string protectionStage = default(string), string vmId = default(string), string vmProtectionState = default(string), string vmProtectionStateDescription = default(string), int? resyncProgressPercentage = default(int?), long? rpoInSeconds = default(long?), double? compressedDataRateInMB = default(double?), double? uncompressedDataRateInMB = default(double?), string ipAddress = default(string), string agentVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), string isAgentUpdateRequired = default(string), string isRebootAfterUpdateRequired = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string processServerId = default(string), string processServerName = default(string), string multiVmGroupId = default(string), string multiVmGroupName = default(string), string multiVmSyncStatus = default(string), IList protectedDisks = default(IList), string diskResized = default(string), string masterTargetId = default(string), int? sourceVmCpuCount = default(int?), int? sourceVmRamSizeInMB = default(int?), string osType = default(string), string vhdName = default(string), string osDiskId = default(string), IList azureVMDiskDetails = default(IList), string recoveryAzureVMName = default(string), string recoveryAzureVMSize = default(string), string recoveryAzureStorageAccount = default(string), string recoveryAzureLogStorageAccountId = default(string), IList vmNics = default(IList), string selectedRecoveryAzureNetworkId = default(string), string selectedTfoAzureNetworkId = default(string), string selectedSourceNicId = default(string), string discoveryType = default(string), string enableRdpOnTargetOption = default(string), IList datastores = default(IList), string targetVmId = default(string), string recoveryAzureResourceGroupId = default(string), string recoveryAvailabilitySetId = default(string), string targetAvailabilityZone = default(string), string targetProximityPlacementGroupId = default(string), string useManagedDisks = default(string), string licenseType = default(string), string sqlServerLicenseType = default(string), IList validationErrors = default(IList), System.DateTime? lastRpoCalculatedTime = default(System.DateTime?), System.DateTime? lastUpdateReceivedTime = default(System.DateTime?), string replicaId = default(string), string osVersion = default(string), IList protectedManagedDisks = default(IList), System.DateTime? lastRecoveryPointReceived = default(System.DateTime?), string firmwareType = default(string), string azureVmGeneration = default(string), bool? isAdditionalStatsAvailable = default(bool?), long? totalDataTransferred = default(long?), string totalProgressHealth = default(string), IDictionary targetVmTags = default(IDictionary), IDictionary seedManagedDiskTags = default(IDictionary), IDictionary targetManagedDiskTags = default(IDictionary), IDictionary targetNicTags = default(IDictionary), IList switchProviderBlockingErrorDetails = default(IList), InMageAzureV2SwitchProviderDetails switchProviderDetails = default(InMageAzureV2SwitchProviderDetails))
{
InfrastructureVmId = infrastructureVmId;
VCenterInfrastructureId = vCenterInfrastructureId;
@@ -215,6 +219,8 @@ public InMageAzureV2ReplicationDetails()
SeedManagedDiskTags = seedManagedDiskTags;
TargetManagedDiskTags = targetManagedDiskTags;
TargetNicTags = targetNicTags;
+ SwitchProviderBlockingErrorDetails = switchProviderBlockingErrorDetails;
+ SwitchProviderDetails = switchProviderDetails;
CustomInit();
}
@@ -629,5 +635,17 @@ public InMageAzureV2ReplicationDetails()
[JsonProperty(PropertyName = "targetNicTags")]
public IDictionary TargetNicTags { get; set; }
+ ///
+ /// Gets or sets the switch provider blocking error information.
+ ///
+ [JsonProperty(PropertyName = "switchProviderBlockingErrorDetails")]
+ public IList SwitchProviderBlockingErrorDetails { get; set; }
+
+ ///
+ /// Gets or sets the switch provider blocking error information.
+ ///
+ [JsonProperty(PropertyName = "switchProviderDetails")]
+ public InMageAzureV2SwitchProviderDetails SwitchProviderDetails { get; set; }
+
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderBlockingErrorDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderBlockingErrorDetails.cs
new file mode 100644
index 000000000000..2a866da7f074
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderBlockingErrorDetails.cs
@@ -0,0 +1,96 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// InMageAzureV2 switch provider blocking error details.
+ ///
+ public partial class InMageAzureV2SwitchProviderBlockingErrorDetails
+ {
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderBlockingErrorDetails class.
+ ///
+ public InMageAzureV2SwitchProviderBlockingErrorDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderBlockingErrorDetails class.
+ ///
+ /// The error code.
+ /// The error message.
+ /// The possible causes.
+ /// The recommended action.
+ /// The error message
+ /// parameters.
+ /// The error tags.
+ public InMageAzureV2SwitchProviderBlockingErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), IDictionary errorMessageParameters = default(IDictionary), IDictionary errorTags = default(IDictionary))
+ {
+ ErrorCode = errorCode;
+ ErrorMessage = errorMessage;
+ PossibleCauses = possibleCauses;
+ RecommendedAction = recommendedAction;
+ ErrorMessageParameters = errorMessageParameters;
+ ErrorTags = errorTags;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the error code.
+ ///
+ [JsonProperty(PropertyName = "errorCode")]
+ public string ErrorCode { get; private set; }
+
+ ///
+ /// Gets the error message.
+ ///
+ [JsonProperty(PropertyName = "errorMessage")]
+ public string ErrorMessage { get; private set; }
+
+ ///
+ /// Gets the possible causes.
+ ///
+ [JsonProperty(PropertyName = "possibleCauses")]
+ public string PossibleCauses { get; private set; }
+
+ ///
+ /// Gets the recommended action.
+ ///
+ [JsonProperty(PropertyName = "recommendedAction")]
+ public string RecommendedAction { get; private set; }
+
+ ///
+ /// Gets the error message parameters.
+ ///
+ [JsonProperty(PropertyName = "errorMessageParameters")]
+ public IDictionary ErrorMessageParameters { get; private set; }
+
+ ///
+ /// Gets the error tags.
+ ///
+ [JsonProperty(PropertyName = "errorTags")]
+ public IDictionary ErrorTags { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderDetails.cs
new file mode 100644
index 000000000000..9008038f1a86
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderDetails.cs
@@ -0,0 +1,77 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// InMageAzureV2 switch provider details.
+ ///
+ public partial class InMageAzureV2SwitchProviderDetails
+ {
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderDetails class.
+ ///
+ public InMageAzureV2SwitchProviderDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderDetails class.
+ ///
+ /// The target vault Id.
+ /// The target resource Id.
+ /// The target fabric Id.
+ /// The target appliance Id.
+ public InMageAzureV2SwitchProviderDetails(string targetVaultId = default(string), string targetResourceId = default(string), string targetFabricId = default(string), string targetApplianceId = default(string))
+ {
+ TargetVaultId = targetVaultId;
+ TargetResourceId = targetResourceId;
+ TargetFabricId = targetFabricId;
+ TargetApplianceId = targetApplianceId;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the target vault Id.
+ ///
+ [JsonProperty(PropertyName = "targetVaultId")]
+ public string TargetVaultId { get; private set; }
+
+ ///
+ /// Gets the target resource Id.
+ ///
+ [JsonProperty(PropertyName = "targetResourceId")]
+ public string TargetResourceId { get; private set; }
+
+ ///
+ /// Gets the target fabric Id.
+ ///
+ [JsonProperty(PropertyName = "targetFabricId")]
+ public string TargetFabricId { get; private set; }
+
+ ///
+ /// Gets the target appliance Id.
+ ///
+ [JsonProperty(PropertyName = "targetApplianceId")]
+ public string TargetApplianceId { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderProviderInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderProviderInput.cs
new file mode 100644
index 000000000000..78bdc3c3718a
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageAzureV2SwitchProviderProviderInput.cs
@@ -0,0 +1,92 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Microsoft.Rest;
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Provider specific input for InMageAzureV2 switch provider.
+ ///
+ [Newtonsoft.Json.JsonObject("InMageAzureV2")]
+ public partial class InMageAzureV2SwitchProviderProviderInput : SwitchProviderProviderSpecificInput
+ {
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderProviderInput class.
+ ///
+ public InMageAzureV2SwitchProviderProviderInput()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// InMageAzureV2SwitchProviderProviderInput class.
+ ///
+ /// The target vault Id.
+ /// The target fabric Id.
+ /// The target appliance Id.
+ public InMageAzureV2SwitchProviderProviderInput(string targetVaultID, string targetFabricID, string targetApplianceID)
+ {
+ TargetVaultID = targetVaultID;
+ TargetFabricID = targetFabricID;
+ TargetApplianceID = targetApplianceID;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets the target vault Id.
+ ///
+ [JsonProperty(PropertyName = "targetVaultID")]
+ public string TargetVaultID { get; set; }
+
+ ///
+ /// Gets or sets the target fabric Id.
+ ///
+ [JsonProperty(PropertyName = "targetFabricID")]
+ public string TargetFabricID { get; set; }
+
+ ///
+ /// Gets or sets the target appliance Id.
+ ///
+ [JsonProperty(PropertyName = "targetApplianceID")]
+ public string TargetApplianceID { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (TargetVaultID == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "TargetVaultID");
+ }
+ if (TargetFabricID == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "TargetFabricID");
+ }
+ if (TargetApplianceID == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "TargetApplianceID");
+ }
+ }
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageFabricSwitchProviderBlockingErrorDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageFabricSwitchProviderBlockingErrorDetails.cs
new file mode 100644
index 000000000000..ceb6a9030887
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageFabricSwitchProviderBlockingErrorDetails.cs
@@ -0,0 +1,96 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// InMageFabric switch provider blocking error details.
+ ///
+ public partial class InMageFabricSwitchProviderBlockingErrorDetails
+ {
+ ///
+ /// Initializes a new instance of the
+ /// InMageFabricSwitchProviderBlockingErrorDetails class.
+ ///
+ public InMageFabricSwitchProviderBlockingErrorDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// InMageFabricSwitchProviderBlockingErrorDetails class.
+ ///
+ /// The error code.
+ /// The error message.
+ /// The possible causes.
+ /// The recommended action.
+ /// The error message
+ /// parameters.
+ /// The error tags.
+ public InMageFabricSwitchProviderBlockingErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), IDictionary errorMessageParameters = default(IDictionary), IDictionary errorTags = default(IDictionary))
+ {
+ ErrorCode = errorCode;
+ ErrorMessage = errorMessage;
+ PossibleCauses = possibleCauses;
+ RecommendedAction = recommendedAction;
+ ErrorMessageParameters = errorMessageParameters;
+ ErrorTags = errorTags;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the error code.
+ ///
+ [JsonProperty(PropertyName = "errorCode")]
+ public string ErrorCode { get; private set; }
+
+ ///
+ /// Gets the error message.
+ ///
+ [JsonProperty(PropertyName = "errorMessage")]
+ public string ErrorMessage { get; private set; }
+
+ ///
+ /// Gets the possible causes.
+ ///
+ [JsonProperty(PropertyName = "possibleCauses")]
+ public string PossibleCauses { get; private set; }
+
+ ///
+ /// Gets the recommended action.
+ ///
+ [JsonProperty(PropertyName = "recommendedAction")]
+ public string RecommendedAction { get; private set; }
+
+ ///
+ /// Gets the error message parameters.
+ ///
+ [JsonProperty(PropertyName = "errorMessageParameters")]
+ public IDictionary ErrorMessageParameters { get; private set; }
+
+ ///
+ /// Gets the error tags.
+ ///
+ [JsonProperty(PropertyName = "errorTags")]
+ public IDictionary ErrorTags { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceDetails.cs
new file mode 100644
index 000000000000..9444ad7de6ad
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceDetails.cs
@@ -0,0 +1,134 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// InMageRcm appliance details.
+ ///
+ public partial class InMageRcmApplianceDetails
+ {
+ ///
+ /// Initializes a new instance of the InMageRcmApplianceDetails class.
+ ///
+ public InMageRcmApplianceDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the InMageRcmApplianceDetails class.
+ ///
+ /// The appliance Id.
+ /// The appliance name.
+ /// The fabric ARM Id.
+ /// The process server.
+ /// The of RCM proxy.
+ /// The push installer.
+ /// The replication agent.
+ /// The reprotect agent.
+ /// The Mars agent.
+ /// The DRA.
+ /// The switch
+ /// provider blocking error information.
+ public InMageRcmApplianceDetails(string id = default(string), string name = default(string), string fabricArmId = default(string), ProcessServerDetails processServer = default(ProcessServerDetails), RcmProxyDetails rcmProxy = default(RcmProxyDetails), PushInstallerDetails pushInstaller = default(PushInstallerDetails), ReplicationAgentDetails replicationAgent = default(ReplicationAgentDetails), ReprotectAgentDetails reprotectAgent = default(ReprotectAgentDetails), MarsAgentDetails marsAgent = default(MarsAgentDetails), DraDetails dra = default(DraDetails), IList switchProviderBlockingErrorDetails = default(IList))
+ {
+ Id = id;
+ Name = name;
+ FabricArmId = fabricArmId;
+ ProcessServer = processServer;
+ RcmProxy = rcmProxy;
+ PushInstaller = pushInstaller;
+ ReplicationAgent = replicationAgent;
+ ReprotectAgent = reprotectAgent;
+ MarsAgent = marsAgent;
+ Dra = dra;
+ SwitchProviderBlockingErrorDetails = switchProviderBlockingErrorDetails;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the appliance Id.
+ ///
+ [JsonProperty(PropertyName = "id")]
+ public string Id { get; private set; }
+
+ ///
+ /// Gets the appliance name.
+ ///
+ [JsonProperty(PropertyName = "name")]
+ public string Name { get; private set; }
+
+ ///
+ /// Gets the fabric ARM Id.
+ ///
+ [JsonProperty(PropertyName = "fabricArmId")]
+ public string FabricArmId { get; private set; }
+
+ ///
+ /// Gets the process server.
+ ///
+ [JsonProperty(PropertyName = "processServer")]
+ public ProcessServerDetails ProcessServer { get; private set; }
+
+ ///
+ /// Gets the of RCM proxy.
+ ///
+ [JsonProperty(PropertyName = "rcmProxy")]
+ public RcmProxyDetails RcmProxy { get; private set; }
+
+ ///
+ /// Gets the push installer.
+ ///
+ [JsonProperty(PropertyName = "pushInstaller")]
+ public PushInstallerDetails PushInstaller { get; private set; }
+
+ ///
+ /// Gets the replication agent.
+ ///
+ [JsonProperty(PropertyName = "replicationAgent")]
+ public ReplicationAgentDetails ReplicationAgent { get; private set; }
+
+ ///
+ /// Gets the reprotect agent.
+ ///
+ [JsonProperty(PropertyName = "reprotectAgent")]
+ public ReprotectAgentDetails ReprotectAgent { get; private set; }
+
+ ///
+ /// Gets the Mars agent.
+ ///
+ [JsonProperty(PropertyName = "marsAgent")]
+ public MarsAgentDetails MarsAgent { get; private set; }
+
+ ///
+ /// Gets the DRA.
+ ///
+ [JsonProperty(PropertyName = "dra")]
+ public DraDetails Dra { get; private set; }
+
+ ///
+ /// Gets the switch provider blocking error information.
+ ///
+ [JsonProperty(PropertyName = "switchProviderBlockingErrorDetails")]
+ public IList SwitchProviderBlockingErrorDetails { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceSpecificDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceSpecificDetails.cs
new file mode 100644
index 000000000000..88973e1b5405
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmApplianceSpecificDetails.cs
@@ -0,0 +1,56 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// InMageRcm appliance specific details.
+ ///
+ [Newtonsoft.Json.JsonObject("InMageRcm")]
+ public partial class InMageRcmApplianceSpecificDetails : ApplianceSpecificDetails
+ {
+ ///
+ /// Initializes a new instance of the InMageRcmApplianceSpecificDetails
+ /// class.
+ ///
+ public InMageRcmApplianceSpecificDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the InMageRcmApplianceSpecificDetails
+ /// class.
+ ///
+ /// The list of appliances.
+ public InMageRcmApplianceSpecificDetails(IList appliances = default(IList))
+ {
+ Appliances = appliances;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ [JsonProperty(PropertyName = "appliances")]
+ public IList Appliances { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmFabricSwitchProviderBlockingErrorDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmFabricSwitchProviderBlockingErrorDetails.cs
new file mode 100644
index 000000000000..d20021ae2ca2
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/InMageRcmFabricSwitchProviderBlockingErrorDetails.cs
@@ -0,0 +1,96 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// InMageRcmFabric switch provider blocking error details.
+ ///
+ public partial class InMageRcmFabricSwitchProviderBlockingErrorDetails
+ {
+ ///
+ /// Initializes a new instance of the
+ /// InMageRcmFabricSwitchProviderBlockingErrorDetails class.
+ ///
+ public InMageRcmFabricSwitchProviderBlockingErrorDetails()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the
+ /// InMageRcmFabricSwitchProviderBlockingErrorDetails class.
+ ///
+ /// The error code.
+ /// The error message.
+ /// The possible causes.
+ /// The recommended action.
+ /// The error message
+ /// parameters.
+ /// The error tags.
+ public InMageRcmFabricSwitchProviderBlockingErrorDetails(string errorCode = default(string), string errorMessage = default(string), string possibleCauses = default(string), string recommendedAction = default(string), IDictionary errorMessageParameters = default(IDictionary), IDictionary errorTags = default(IDictionary))
+ {
+ ErrorCode = errorCode;
+ ErrorMessage = errorMessage;
+ PossibleCauses = possibleCauses;
+ RecommendedAction = recommendedAction;
+ ErrorMessageParameters = errorMessageParameters;
+ ErrorTags = errorTags;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets the error code.
+ ///
+ [JsonProperty(PropertyName = "errorCode")]
+ public string ErrorCode { get; private set; }
+
+ ///
+ /// Gets the error message.
+ ///
+ [JsonProperty(PropertyName = "errorMessage")]
+ public string ErrorMessage { get; private set; }
+
+ ///
+ /// Gets the possible causes.
+ ///
+ [JsonProperty(PropertyName = "possibleCauses")]
+ public string PossibleCauses { get; private set; }
+
+ ///
+ /// Gets the recommended action.
+ ///
+ [JsonProperty(PropertyName = "recommendedAction")]
+ public string RecommendedAction { get; private set; }
+
+ ///
+ /// Gets the error message parameters.
+ ///
+ [JsonProperty(PropertyName = "errorMessageParameters")]
+ public IDictionary ErrorMessageParameters { get; private set; }
+
+ ///
+ /// Gets the error tags.
+ ///
+ [JsonProperty(PropertyName = "errorTags")]
+ public IDictionary ErrorTags { get; private set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/RecoveryPlanA2AInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/RecoveryPlanA2AInput.cs
index 60e9ca2bda5b..f7c17f0a7aaa 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/RecoveryPlanA2AInput.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/RecoveryPlanA2AInput.cs
@@ -32,10 +32,16 @@ public RecoveryPlanA2AInput()
///
/// The primary zone.
/// The recovery zone.
- public RecoveryPlanA2AInput(string primaryZone = default(string), string recoveryZone = default(string))
+ /// The primary extended
+ /// location.
+ /// The recovery extended
+ /// location.
+ public RecoveryPlanA2AInput(string primaryZone = default(string), string recoveryZone = default(string), ExtendedLocation primaryExtendedLocation = default(ExtendedLocation), ExtendedLocation recoveryExtendedLocation = default(ExtendedLocation))
{
PrimaryZone = primaryZone;
RecoveryZone = recoveryZone;
+ PrimaryExtendedLocation = primaryExtendedLocation;
+ RecoveryExtendedLocation = recoveryExtendedLocation;
CustomInit();
}
@@ -56,5 +62,34 @@ public RecoveryPlanA2AInput()
[JsonProperty(PropertyName = "recoveryZone")]
public string RecoveryZone { get; set; }
+ ///
+ /// Gets or sets the primary extended location.
+ ///
+ [JsonProperty(PropertyName = "primaryExtendedLocation")]
+ public ExtendedLocation PrimaryExtendedLocation { get; set; }
+
+ ///
+ /// Gets or sets the recovery extended location.
+ ///
+ [JsonProperty(PropertyName = "recoveryExtendedLocation")]
+ public ExtendedLocation RecoveryExtendedLocation { get; set; }
+
+ ///
+ /// Validate the object.
+ ///
+ ///
+ /// Thrown if validation fails
+ ///
+ public virtual void Validate()
+ {
+ if (PrimaryExtendedLocation != null)
+ {
+ PrimaryExtendedLocation.Validate();
+ }
+ if (RecoveryExtendedLocation != null)
+ {
+ RecoveryExtendedLocation.Validate();
+ }
+ }
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationAppliance.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationAppliance.cs
new file mode 100644
index 000000000000..d7afc1d7712b
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationAppliance.cs
@@ -0,0 +1,51 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Replication appliance definition.
+ ///
+ public partial class ReplicationAppliance
+ {
+ ///
+ /// Initializes a new instance of the ReplicationAppliance class.
+ ///
+ public ReplicationAppliance()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ReplicationAppliance class.
+ ///
+ /// Appliance related data.
+ public ReplicationAppliance(ReplicationApplianceProperties properties = default(ReplicationApplianceProperties))
+ {
+ Properties = properties;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets appliance related data.
+ ///
+ [JsonProperty(PropertyName = "properties")]
+ public ReplicationApplianceProperties Properties { get; set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationApplianceProperties.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationApplianceProperties.cs
new file mode 100644
index 000000000000..ecd8355b163e
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationApplianceProperties.cs
@@ -0,0 +1,54 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Replication appliance properties.
+ ///
+ public partial class ReplicationApplianceProperties
+ {
+ ///
+ /// Initializes a new instance of the ReplicationApplianceProperties
+ /// class.
+ ///
+ public ReplicationApplianceProperties()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the ReplicationApplianceProperties
+ /// class.
+ ///
+ /// Provider specific
+ /// settings.
+ public ReplicationApplianceProperties(ApplianceSpecificDetails providerSpecificDetails = default(ApplianceSpecificDetails))
+ {
+ ProviderSpecificDetails = providerSpecificDetails;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets provider specific settings.
+ ///
+ [JsonProperty(PropertyName = "providerSpecificDetails")]
+ public ApplianceSpecificDetails ProviderSpecificDetails { get; set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationProtectedItemProperties.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationProtectedItemProperties.cs
index da5da4f7dd38..edb10202781a 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationProtectedItemProperties.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/ReplicationProtectedItemProperties.cs
@@ -59,6 +59,10 @@ public ReplicationProtectedItemProperties()
/// The Test failover state.
/// The Test failover state
/// description.
+ /// The switch provider
+ /// state.
+ /// The switch provider
+ /// state description.
/// The allowed operations on the
/// Replication protected item.
/// The consolidated protection health
@@ -85,7 +89,7 @@ public ReplicationProtectedItemProperties()
/// Id.
/// The correlation Id for events
/// associated with this protected item.
- public ReplicationProtectedItemProperties(string friendlyName = default(string), string protectedItemType = default(string), string protectableItemId = default(string), string recoveryServicesProviderId = default(string), string primaryFabricFriendlyName = default(string), string primaryFabricProvider = default(string), string recoveryFabricFriendlyName = default(string), string recoveryFabricId = default(string), string primaryProtectionContainerFriendlyName = default(string), string recoveryProtectionContainerFriendlyName = default(string), string protectionState = default(string), string protectionStateDescription = default(string), string activeLocation = default(string), string testFailoverState = default(string), string testFailoverStateDescription = default(string), IList allowedOperations = default(IList), string replicationHealth = default(string), string failoverHealth = default(string), IList healthErrors = default(IList), string policyId = default(string), string policyFriendlyName = default(string), System.DateTime? lastSuccessfulFailoverTime = default(System.DateTime?), System.DateTime? lastSuccessfulTestFailoverTime = default(System.DateTime?), CurrentScenarioDetails currentScenario = default(CurrentScenarioDetails), string failoverRecoveryPointId = default(string), ReplicationProviderSpecificSettings providerSpecificDetails = default(ReplicationProviderSpecificSettings), string recoveryContainerId = default(string), string eventCorrelationId = default(string))
+ public ReplicationProtectedItemProperties(string friendlyName = default(string), string protectedItemType = default(string), string protectableItemId = default(string), string recoveryServicesProviderId = default(string), string primaryFabricFriendlyName = default(string), string primaryFabricProvider = default(string), string recoveryFabricFriendlyName = default(string), string recoveryFabricId = default(string), string primaryProtectionContainerFriendlyName = default(string), string recoveryProtectionContainerFriendlyName = default(string), string protectionState = default(string), string protectionStateDescription = default(string), string activeLocation = default(string), string testFailoverState = default(string), string testFailoverStateDescription = default(string), string switchProviderState = default(string), string switchProviderStateDescription = default(string), IList allowedOperations = default(IList), string replicationHealth = default(string), string failoverHealth = default(string), IList healthErrors = default(IList), string policyId = default(string), string policyFriendlyName = default(string), System.DateTime? lastSuccessfulFailoverTime = default(System.DateTime?), System.DateTime? lastSuccessfulTestFailoverTime = default(System.DateTime?), CurrentScenarioDetails currentScenario = default(CurrentScenarioDetails), string failoverRecoveryPointId = default(string), ReplicationProviderSpecificSettings providerSpecificDetails = default(ReplicationProviderSpecificSettings), string recoveryContainerId = default(string), string eventCorrelationId = default(string))
{
FriendlyName = friendlyName;
ProtectedItemType = protectedItemType;
@@ -102,6 +106,8 @@ public ReplicationProtectedItemProperties()
ActiveLocation = activeLocation;
TestFailoverState = testFailoverState;
TestFailoverStateDescription = testFailoverStateDescription;
+ SwitchProviderState = switchProviderState;
+ SwitchProviderStateDescription = switchProviderStateDescription;
AllowedOperations = allowedOperations;
ReplicationHealth = replicationHealth;
FailoverHealth = failoverHealth;
@@ -214,6 +220,18 @@ public ReplicationProtectedItemProperties()
[JsonProperty(PropertyName = "testFailoverStateDescription")]
public string TestFailoverStateDescription { get; set; }
+ ///
+ /// Gets or sets the switch provider state.
+ ///
+ [JsonProperty(PropertyName = "switchProviderState")]
+ public string SwitchProviderState { get; set; }
+
+ ///
+ /// Gets or sets the switch provider state description.
+ ///
+ [JsonProperty(PropertyName = "switchProviderStateDescription")]
+ public string SwitchProviderStateDescription { get; set; }
+
///
/// Gets or sets the allowed operations on the Replication protected
/// item.
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInput.cs
new file mode 100644
index 000000000000..4b8808292956
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInput.cs
@@ -0,0 +1,51 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Input definition for switch provider.
+ ///
+ public partial class SwitchProviderInput
+ {
+ ///
+ /// Initializes a new instance of the SwitchProviderInput class.
+ ///
+ public SwitchProviderInput()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the SwitchProviderInput class.
+ ///
+ /// Switch provider input properties.
+ public SwitchProviderInput(SwitchProviderInputProperties properties = default(SwitchProviderInputProperties))
+ {
+ Properties = properties;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets switch provider input properties.
+ ///
+ [JsonProperty(PropertyName = "properties")]
+ public SwitchProviderInputProperties Properties { get; set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInputProperties.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInputProperties.cs
new file mode 100644
index 000000000000..550a8d95396e
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderInputProperties.cs
@@ -0,0 +1,62 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using Newtonsoft.Json;
+ using System.Linq;
+
+ ///
+ /// Input definition for switch provider input properties.
+ ///
+ public partial class SwitchProviderInputProperties
+ {
+ ///
+ /// Initializes a new instance of the SwitchProviderInputProperties
+ /// class.
+ ///
+ public SwitchProviderInputProperties()
+ {
+ CustomInit();
+ }
+
+ ///
+ /// Initializes a new instance of the SwitchProviderInputProperties
+ /// class.
+ ///
+ /// Target provider type.
+ /// Provider specific
+ /// settings.
+ public SwitchProviderInputProperties(string targetInstanceType = default(string), SwitchProviderProviderSpecificInput providerSpecificDetails = default(SwitchProviderProviderSpecificInput))
+ {
+ TargetInstanceType = targetInstanceType;
+ ProviderSpecificDetails = providerSpecificDetails;
+ CustomInit();
+ }
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ ///
+ /// Gets or sets target provider type.
+ ///
+ [JsonProperty(PropertyName = "targetInstanceType")]
+ public string TargetInstanceType { get; set; }
+
+ ///
+ /// Gets or sets provider specific settings.
+ ///
+ [JsonProperty(PropertyName = "providerSpecificDetails")]
+ public SwitchProviderProviderSpecificInput ProviderSpecificDetails { get; set; }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderProviderSpecificInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderProviderSpecificInput.cs
new file mode 100644
index 000000000000..8faf85d33a97
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/SwitchProviderProviderSpecificInput.cs
@@ -0,0 +1,36 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery.Models
+{
+ using System.Linq;
+
+ ///
+ /// Provider specific switch provider input.
+ ///
+ public partial class SwitchProviderProviderSpecificInput
+ {
+ ///
+ /// Initializes a new instance of the
+ /// SwitchProviderProviderSpecificInput class.
+ ///
+ public SwitchProviderProviderSpecificInput()
+ {
+ CustomInit();
+ }
+
+
+ ///
+ /// An initialization method that performs custom operations like setting defaults
+ ///
+ partial void CustomInit();
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareCbtContainerMappingInput.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareCbtContainerMappingInput.cs
index 63cff0b93c54..50eeab52a5e7 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareCbtContainerMappingInput.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareCbtContainerMappingInput.cs
@@ -33,15 +33,15 @@ public VMwareCbtContainerMappingInput()
/// Initializes a new instance of the VMwareCbtContainerMappingInput
/// class.
///
+ /// The storage account ARM Id.
+ /// The target location.
/// The target key vault ARM Id.
/// The target key vault URL.
- /// The storage account ARM Id.
/// The secret name of the
/// storage account.
/// The secret name
/// of the service bus connection string.
- /// The target location.
- public VMwareCbtContainerMappingInput(string keyVaultId, string keyVaultUri, string storageAccountId, string storageAccountSasSecretName, string serviceBusConnectionStringSecretName, string targetLocation)
+ public VMwareCbtContainerMappingInput(string storageAccountId, string targetLocation, string keyVaultId = default(string), string keyVaultUri = default(string), string storageAccountSasSecretName = default(string), string serviceBusConnectionStringSecretName = default(string))
{
KeyVaultId = keyVaultId;
KeyVaultUri = keyVaultUri;
@@ -101,26 +101,10 @@ public VMwareCbtContainerMappingInput(string keyVaultId, string keyVaultUri, str
///
public virtual void Validate()
{
- if (KeyVaultId == null)
- {
- throw new ValidationException(ValidationRules.CannotBeNull, "KeyVaultId");
- }
- if (KeyVaultUri == null)
- {
- throw new ValidationException(ValidationRules.CannotBeNull, "KeyVaultUri");
- }
if (StorageAccountId == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "StorageAccountId");
}
- if (StorageAccountSasSecretName == null)
- {
- throw new ValidationException(ValidationRules.CannotBeNull, "StorageAccountSasSecretName");
- }
- if (ServiceBusConnectionStringSecretName == null)
- {
- throw new ValidationException(ValidationRules.CannotBeNull, "ServiceBusConnectionStringSecretName");
- }
if (TargetLocation == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "TargetLocation");
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareDetails.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareDetails.cs
index 8934fe5f6bac..3bfa9c8b3405 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareDetails.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/Models/VMwareDetails.cs
@@ -75,7 +75,9 @@ public VMwareDetails()
/// Agent expiry date.
/// The agent version
/// details.
- public VMwareDetails(IList processServers = default(IList), IList masterTargetServers = default(IList), IList runAsAccounts = default(IList), string replicationPairCount = default(string), string processServerCount = default(string), string agentCount = default(string), string protectedServers = default(string), string systemLoad = default(string), string systemLoadStatus = default(string), string cpuLoad = default(string), string cpuLoadStatus = default(string), long? totalMemoryInBytes = default(long?), long? availableMemoryInBytes = default(long?), string memoryUsageStatus = default(string), long? totalSpaceInBytes = default(long?), long? availableSpaceInBytes = default(long?), string spaceUsageStatus = default(string), string webLoad = default(string), string webLoadStatus = default(string), string databaseServerLoad = default(string), string databaseServerLoadStatus = default(string), string csServiceStatus = default(string), string ipAddress = default(string), string agentVersion = default(string), string hostName = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string versionStatus = default(string), System.DateTime? sslCertExpiryDate = default(System.DateTime?), int? sslCertExpiryRemainingDays = default(int?), string psTemplateVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), VersionDetails agentVersionDetails = default(VersionDetails))
+ /// The switch
+ /// provider blocking error information.
+ public VMwareDetails(IList processServers = default(IList), IList masterTargetServers = default(IList), IList runAsAccounts = default(IList), string replicationPairCount = default(string), string processServerCount = default(string), string agentCount = default(string), string protectedServers = default(string), string systemLoad = default(string), string systemLoadStatus = default(string), string cpuLoad = default(string), string cpuLoadStatus = default(string), long? totalMemoryInBytes = default(long?), long? availableMemoryInBytes = default(long?), string memoryUsageStatus = default(string), long? totalSpaceInBytes = default(long?), long? availableSpaceInBytes = default(long?), string spaceUsageStatus = default(string), string webLoad = default(string), string webLoadStatus = default(string), string databaseServerLoad = default(string), string databaseServerLoadStatus = default(string), string csServiceStatus = default(string), string ipAddress = default(string), string agentVersion = default(string), string hostName = default(string), System.DateTime? lastHeartbeat = default(System.DateTime?), string versionStatus = default(string), System.DateTime? sslCertExpiryDate = default(System.DateTime?), int? sslCertExpiryRemainingDays = default(int?), string psTemplateVersion = default(string), System.DateTime? agentExpiryDate = default(System.DateTime?), VersionDetails agentVersionDetails = default(VersionDetails), IList switchProviderBlockingErrorDetails = default(IList))
{
ProcessServers = processServers;
MasterTargetServers = masterTargetServers;
@@ -109,6 +111,7 @@ public VMwareDetails()
PsTemplateVersion = psTemplateVersion;
AgentExpiryDate = agentExpiryDate;
AgentVersionDetails = agentVersionDetails;
+ SwitchProviderBlockingErrorDetails = switchProviderBlockingErrorDetails;
CustomInit();
}
@@ -312,5 +315,11 @@ public VMwareDetails()
[JsonProperty(PropertyName = "agentVersionDetails")]
public VersionDetails AgentVersionDetails { get; set; }
+ ///
+ /// Gets or sets the switch provider blocking error information.
+ ///
+ [JsonProperty(PropertyName = "switchProviderBlockingErrorDetails")]
+ public IList SwitchProviderBlockingErrorDetails { get; set; }
+
}
}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperations.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperations.cs
new file mode 100644
index 000000000000..c7f45913ff5b
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperations.cs
@@ -0,0 +1,434 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Microsoft.Rest.Azure.OData;
+ using Models;
+ using Newtonsoft.Json;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+ using System.Net;
+ using System.Net.Http;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// ReplicationAppliancesOperations operations.
+ ///
+ internal partial class ReplicationAppliancesOperations : IServiceOperations, IReplicationAppliancesOperations
+ {
+ ///
+ /// Initializes a new instance of the ReplicationAppliancesOperations class.
+ ///
+ ///
+ /// Reference to the service client.
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ internal ReplicationAppliancesOperations(SiteRecoveryManagementClient client)
+ {
+ if (client == null)
+ {
+ throw new System.ArgumentNullException("client");
+ }
+ Client = client;
+ }
+
+ ///
+ /// Gets a reference to the SiteRecoveryManagementClient
+ ///
+ public SiteRecoveryManagementClient Client { get; private set; }
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// OData parameters to apply to the operation.
+ ///
+ ///
+ /// Headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// A response object containing the response body and response headers.
+ ///
+ public async Task>> ListWithHttpMessagesAsync(ODataQuery odataQuery = default(ODataQuery), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.ResourceName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ResourceName");
+ }
+ if (Client.ResourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ResourceGroupName");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("odataQuery", odataQuery);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters);
+ }
+ // Construct URL
+ var _baseUrl = Client.BaseUri.AbsoluteUri;
+ var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAppliances").ToString();
+ _url = _url.Replace("{resourceName}", System.Uri.EscapeDataString(Client.ResourceName));
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(Client.ResourceGroupName));
+ _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
+ List _queryParameters = new List();
+ if (odataQuery != null)
+ {
+ var _odataFilter = odataQuery.ToString();
+ if (!string.IsNullOrEmpty(_odataFilter))
+ {
+ _queryParameters.Add(_odataFilter);
+ }
+ }
+ if (Client.ApiVersion != null)
+ {
+ _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion)));
+ }
+ if (_queryParameters.Count > 0)
+ {
+ _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters);
+ }
+ // Create HTTP transport objects
+ var _httpRequest = new HttpRequestMessage();
+ HttpResponseMessage _httpResponse = null;
+ _httpRequest.Method = new HttpMethod("GET");
+ _httpRequest.RequestUri = new System.Uri(_url);
+ // Set Headers
+ if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value)
+ {
+ _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString());
+ }
+ if (Client.AcceptLanguage != null)
+ {
+ if (_httpRequest.Headers.Contains("accept-language"))
+ {
+ _httpRequest.Headers.Remove("accept-language");
+ }
+ _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage);
+ }
+
+
+ if (customHeaders != null)
+ {
+ foreach(var _header in customHeaders)
+ {
+ if (_httpRequest.Headers.Contains(_header.Key))
+ {
+ _httpRequest.Headers.Remove(_header.Key);
+ }
+ _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
+ }
+ }
+
+ // Serialize Request
+ string _requestContent = null;
+ // Set Credentials
+ if (Client.Credentials != null)
+ {
+ cancellationToken.ThrowIfCancellationRequested();
+ await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ }
+ // Send Request
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
+ }
+ cancellationToken.ThrowIfCancellationRequested();
+ _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
+ }
+ HttpStatusCode _statusCode = _httpResponse.StatusCode;
+ cancellationToken.ThrowIfCancellationRequested();
+ string _responseContent = null;
+ if ((int)_statusCode != 200)
+ {
+ var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex = new CloudException(_errorBody.Message);
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse>();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ ///
+ /// Headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// A response object containing the response body and response headers.
+ ///
+ public async Task>> ListNextWithHttpMessagesAsync(string nextPageLink, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (nextPageLink == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "nextPageLink");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("nextPageLink", nextPageLink);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters);
+ }
+ // Construct URL
+ string _url = "{nextLink}";
+ _url = _url.Replace("{nextLink}", nextPageLink);
+ List _queryParameters = new List();
+ if (_queryParameters.Count > 0)
+ {
+ _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters);
+ }
+ // Create HTTP transport objects
+ var _httpRequest = new HttpRequestMessage();
+ HttpResponseMessage _httpResponse = null;
+ _httpRequest.Method = new HttpMethod("GET");
+ _httpRequest.RequestUri = new System.Uri(_url);
+ // Set Headers
+ if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value)
+ {
+ _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString());
+ }
+ if (Client.AcceptLanguage != null)
+ {
+ if (_httpRequest.Headers.Contains("accept-language"))
+ {
+ _httpRequest.Headers.Remove("accept-language");
+ }
+ _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage);
+ }
+
+
+ if (customHeaders != null)
+ {
+ foreach(var _header in customHeaders)
+ {
+ if (_httpRequest.Headers.Contains(_header.Key))
+ {
+ _httpRequest.Headers.Remove(_header.Key);
+ }
+ _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
+ }
+ }
+
+ // Serialize Request
+ string _requestContent = null;
+ // Set Credentials
+ if (Client.Credentials != null)
+ {
+ cancellationToken.ThrowIfCancellationRequested();
+ await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ }
+ // Send Request
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
+ }
+ cancellationToken.ThrowIfCancellationRequested();
+ _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
+ }
+ HttpStatusCode _statusCode = _httpResponse.StatusCode;
+ cancellationToken.ThrowIfCancellationRequested();
+ string _responseContent = null;
+ if ((int)_statusCode != 200)
+ {
+ var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex = new CloudException(_errorBody.Message);
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse>();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperationsExtensions.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperationsExtensions.cs
new file mode 100644
index 000000000000..a5003776f35c
--- /dev/null
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationAppliancesOperationsExtensions.cs
@@ -0,0 +1,106 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for
+// license information.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is
+// regenerated.
+//
+
+namespace Microsoft.Azure.Management.RecoveryServices.SiteRecovery
+{
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Microsoft.Rest.Azure.OData;
+ using Models;
+ using System.Threading;
+ using System.Threading.Tasks;
+
+ ///
+ /// Extension methods for ReplicationAppliancesOperations.
+ ///
+ public static partial class ReplicationAppliancesOperationsExtensions
+ {
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// OData parameters to apply to the operation.
+ ///
+ public static IPage List(this IReplicationAppliancesOperations operations, ODataQuery odataQuery = default(ODataQuery))
+ {
+ return operations.ListAsync(odataQuery).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// OData parameters to apply to the operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListAsync(this IReplicationAppliancesOperations operations, ODataQuery odataQuery = default(ODataQuery), CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListWithHttpMessagesAsync(odataQuery, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ public static IPage ListNext(this IReplicationAppliancesOperations operations, string nextPageLink)
+ {
+ return operations.ListNextAsync(nextPageLink).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Gets the list of appliances.
+ ///
+ ///
+ /// Gets the list of Azure Site Recovery appliances for the vault.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// The NextLink from the previous successful call to List operation.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task> ListNextAsync(this IReplicationAppliancesOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
+ }
+}
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperations.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperations.cs
index c2c1effa4bc7..e0f111ea2e36 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperations.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperations.cs
@@ -879,6 +879,37 @@ internal ReplicationProtectedItemsOperations(SiteRecoveryManagementClient client
return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false);
}
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// The headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public async Task> SwitchProviderWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ // Send request
+ AzureOperationResponse _response = await BeginSwitchProviderWithHttpMessagesAsync(fabricName, protectionContainerName, replicatedProtectedItemName, switchProviderInput, customHeaders, cancellationToken).ConfigureAwait(false);
+ return await Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false);
+ }
+
///
/// Execute test failover.
///
@@ -4186,6 +4217,238 @@ internal ReplicationProtectedItemsOperations(SiteRecoveryManagementClient client
return _result;
}
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// Headers that will be added to request.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ ///
+ /// Thrown when the operation returned an invalid status code
+ ///
+ ///
+ /// Thrown when unable to deserialize the response
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// Thrown when a required parameter is null
+ ///
+ ///
+ /// A response object containing the response body and response headers.
+ ///
+ public async Task> BeginSwitchProviderWithHttpMessagesAsync(string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ if (Client.ApiVersion == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ApiVersion");
+ }
+ if (Client.ResourceName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ResourceName");
+ }
+ if (Client.ResourceGroupName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.ResourceGroupName");
+ }
+ if (Client.SubscriptionId == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
+ }
+ if (fabricName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "fabricName");
+ }
+ if (protectionContainerName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "protectionContainerName");
+ }
+ if (replicatedProtectedItemName == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "replicatedProtectedItemName");
+ }
+ if (switchProviderInput == null)
+ {
+ throw new ValidationException(ValidationRules.CannotBeNull, "switchProviderInput");
+ }
+ // Tracing
+ bool _shouldTrace = ServiceClientTracing.IsEnabled;
+ string _invocationId = null;
+ if (_shouldTrace)
+ {
+ _invocationId = ServiceClientTracing.NextInvocationId.ToString();
+ Dictionary tracingParameters = new Dictionary();
+ tracingParameters.Add("fabricName", fabricName);
+ tracingParameters.Add("protectionContainerName", protectionContainerName);
+ tracingParameters.Add("replicatedProtectedItemName", replicatedProtectedItemName);
+ tracingParameters.Add("switchProviderInput", switchProviderInput);
+ tracingParameters.Add("cancellationToken", cancellationToken);
+ ServiceClientTracing.Enter(_invocationId, this, "BeginSwitchProvider", tracingParameters);
+ }
+ // Construct URL
+ var _baseUrl = Client.BaseUri.AbsoluteUri;
+ var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider").ToString();
+ _url = _url.Replace("{resourceName}", System.Uri.EscapeDataString(Client.ResourceName));
+ _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(Client.ResourceGroupName));
+ _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
+ _url = _url.Replace("{fabricName}", System.Uri.EscapeDataString(fabricName));
+ _url = _url.Replace("{protectionContainerName}", System.Uri.EscapeDataString(protectionContainerName));
+ _url = _url.Replace("{replicatedProtectedItemName}", System.Uri.EscapeDataString(replicatedProtectedItemName));
+ List _queryParameters = new List();
+ if (Client.ApiVersion != null)
+ {
+ _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion)));
+ }
+ if (_queryParameters.Count > 0)
+ {
+ _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters);
+ }
+ // Create HTTP transport objects
+ var _httpRequest = new HttpRequestMessage();
+ HttpResponseMessage _httpResponse = null;
+ _httpRequest.Method = new HttpMethod("POST");
+ _httpRequest.RequestUri = new System.Uri(_url);
+ // Set Headers
+ if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value)
+ {
+ _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString());
+ }
+ if (Client.AcceptLanguage != null)
+ {
+ if (_httpRequest.Headers.Contains("accept-language"))
+ {
+ _httpRequest.Headers.Remove("accept-language");
+ }
+ _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage);
+ }
+
+
+ if (customHeaders != null)
+ {
+ foreach(var _header in customHeaders)
+ {
+ if (_httpRequest.Headers.Contains(_header.Key))
+ {
+ _httpRequest.Headers.Remove(_header.Key);
+ }
+ _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
+ }
+ }
+
+ // Serialize Request
+ string _requestContent = null;
+ if(switchProviderInput != null)
+ {
+ _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(switchProviderInput, Client.SerializationSettings);
+ _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8);
+ _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8");
+ }
+ // Set Credentials
+ if (Client.Credentials != null)
+ {
+ cancellationToken.ThrowIfCancellationRequested();
+ await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ }
+ // Send Request
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
+ }
+ cancellationToken.ThrowIfCancellationRequested();
+ _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
+ }
+ HttpStatusCode _statusCode = _httpResponse.StatusCode;
+ cancellationToken.ThrowIfCancellationRequested();
+ string _responseContent = null;
+ if ((int)_statusCode != 200 && (int)_statusCode != 202)
+ {
+ var ex = new CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
+ try
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ CloudError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ if (_errorBody != null)
+ {
+ ex = new CloudException(_errorBody.Message);
+ ex.Body = _errorBody;
+ }
+ }
+ catch (JsonException)
+ {
+ // Ignore the exception
+ }
+ ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
+ ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Error(_invocationId, ex);
+ }
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw ex;
+ }
+ // Create Result
+ var _result = new AzureOperationResponse();
+ _result.Request = _httpRequest;
+ _result.Response = _httpResponse;
+ if (_httpResponse.Headers.Contains("x-ms-request-id"))
+ {
+ _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
+ }
+ // Deserialize Response
+ if ((int)_statusCode == 200)
+ {
+ _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
+ try
+ {
+ _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings);
+ }
+ catch (JsonException ex)
+ {
+ _httpRequest.Dispose();
+ if (_httpResponse != null)
+ {
+ _httpResponse.Dispose();
+ }
+ throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
+ }
+ }
+ if (_shouldTrace)
+ {
+ ServiceClientTracing.Exit(_invocationId, _result);
+ }
+ return _result;
+ }
+
///
/// Execute test failover.
///
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperationsExtensions.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperationsExtensions.cs
index efeeae6e9a8b..7ce082826bf0 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperationsExtensions.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/ReplicationProtectedItemsOperationsExtensions.cs
@@ -864,6 +864,64 @@ public static ReplicationProtectedItem ResolveHealthErrors(this IReplicationProt
}
}
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ public static ReplicationProtectedItem SwitchProvider(this IReplicationProtectedItemsOperations operations, string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput)
+ {
+ return operations.SwitchProviderAsync(fabricName, protectionContainerName, replicatedProtectedItemName, switchProviderInput).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task SwitchProviderAsync(this IReplicationProtectedItemsOperations operations, string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.SwitchProviderWithHttpMessagesAsync(fabricName, protectionContainerName, replicatedProtectedItemName, switchProviderInput, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
///
/// Execute test failover.
///
@@ -1946,6 +2004,64 @@ public static ReplicationProtectedItem BeginResolveHealthErrors(this IReplicatio
}
}
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ public static ReplicationProtectedItem BeginSwitchProvider(this IReplicationProtectedItemsOperations operations, string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput)
+ {
+ return operations.BeginSwitchProviderAsync(fabricName, protectionContainerName, replicatedProtectedItemName, switchProviderInput).GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Execute switch provider.
+ ///
+ ///
+ /// Operation to initiate a switch provider of the replication protected item.
+ ///
+ ///
+ /// The operations group for this extension method.
+ ///
+ ///
+ /// Unique fabric name.
+ ///
+ ///
+ /// Protection container name.
+ ///
+ ///
+ /// Replication protected item name.
+ ///
+ ///
+ /// Switch provider input.
+ ///
+ ///
+ /// The cancellation token.
+ ///
+ public static async Task BeginSwitchProviderAsync(this IReplicationProtectedItemsOperations operations, string fabricName, string protectionContainerName, string replicatedProtectedItemName, SwitchProviderInput switchProviderInput, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ using (var _result = await operations.BeginSwitchProviderWithHttpMessagesAsync(fabricName, protectionContainerName, replicatedProtectedItemName, switchProviderInput, null, cancellationToken).ConfigureAwait(false))
+ {
+ return _result.Body;
+ }
+ }
+
///
/// Execute test failover.
///
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SdkInfo_SiteRecoveryManagementClient.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SdkInfo_SiteRecoveryManagementClient.cs
index 2da24475ad32..f244116792d3 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SdkInfo_SiteRecoveryManagementClient.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SdkInfo_SiteRecoveryManagementClient.cs
@@ -19,46 +19,36 @@ public static IEnumerable> ApiInfo_SiteRecoveryMan
{
return new Tuple[]
{
- new Tuple("Compute", "ReplicationEligibilityResults", "2021-08-01"),
- new Tuple("RecoveryServices", "MigrationRecoveryPoints", "2021-08-01"),
- new Tuple("RecoveryServices", "Operations", "2021-08-01"),
- new Tuple("RecoveryServices", "RecoveryPoints", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationAlertSettings", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationEvents", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationFabrics", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationJobs", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationLogicalNetworks", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationMigrationItems", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationNetworkMappings", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationNetworks", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationPolicies", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationProtectableItems", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationProtectedItems", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationProtectionContainerMappings", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationProtectionContainers", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationProtectionIntents", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationRecoveryPlans", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationRecoveryServicesProviders", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationStorageClassificationMappings", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationStorageClassifications", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationVaultHealth", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationVaultSetting", "2021-08-01"),
- new Tuple("RecoveryServices", "ReplicationvCenters", "2021-08-01"),
- new Tuple("RecoveryServices", "SupportedOperatingSystems", "2021-08-01"),
- new Tuple("RecoveryServices", "TargetComputeSizes", "2021-08-01"),
+ new Tuple("Compute", "ReplicationEligibilityResults", "2021-12-01"),
+ new Tuple("RecoveryServices", "MigrationRecoveryPoints", "2021-12-01"),
+ new Tuple("RecoveryServices", "Operations", "2021-12-01"),
+ new Tuple("RecoveryServices", "RecoveryPoints", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationAlertSettings", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationAppliances", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationEvents", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationFabrics", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationJobs", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationLogicalNetworks", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationMigrationItems", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationNetworkMappings", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationNetworks", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationPolicies", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationProtectableItems", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationProtectedItems", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationProtectionContainerMappings", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationProtectionContainers", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationProtectionIntents", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationRecoveryPlans", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationRecoveryServicesProviders", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationStorageClassificationMappings", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationStorageClassifications", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationVaultHealth", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationVaultSetting", "2021-12-01"),
+ new Tuple("RecoveryServices", "ReplicationvCenters", "2021-12-01"),
+ new Tuple("RecoveryServices", "SupportedOperatingSystems", "2021-12-01"),
+ new Tuple("RecoveryServices", "TargetComputeSizes", "2021-12-01"),
}.AsEnumerable();
}
}
- // BEGIN: Code Generation Metadata Section
- public static readonly String AutoRestVersion = "v2";
- public static readonly String AutoRestBootStrapperVersion = "autorest@2.0.4413";
- public static readonly String AutoRestCmdExecuted = "cmd.exe /c autorest.cmd https://github.com/Azure/azure-rest-api-specs/blob/main/specification/recoveryservicessiterecovery/resource-manager/readme.md --csharp --version=v2 --reflect-api-versions --csharp-sdks-folder=C:\\repos\\azure-sdk-for-net\\sdk";
- public static readonly String GithubForkName = "Azure";
- public static readonly String GithubBranchName = "main";
- public static readonly String GithubCommidId = "3eaa729b3686f20817145e771a8ab707c739dbbd";
- public static readonly String CodeGenerationErrors = "";
- public static readonly String GithubRepoName = "azure-rest-api-specs";
- // END: Code Generation Metadata Section
}
}
-
diff --git a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SiteRecoveryManagementClient.cs b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SiteRecoveryManagementClient.cs
index 5a0caded8289..2ff6a2a41ab9 100644
--- a/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SiteRecoveryManagementClient.cs
+++ b/sdk/recoveryservices-siterecovery/Microsoft.Azure.Management.RecoveryServices.SiteRecovery/src/Generated/SiteRecoveryManagementClient.cs
@@ -92,6 +92,11 @@ public partial class SiteRecoveryManagementClient : ServiceClient
public virtual IReplicationAlertSettingsOperations ReplicationAlertSettings { get; private set; }
+ ///
+ /// Gets the IReplicationAppliancesOperations.
+ ///
+ public virtual IReplicationAppliancesOperations ReplicationAppliances { get; private set; }
+
///
/// Gets the IReplicationEligibilityResultsOperations.
///
@@ -460,6 +465,7 @@ private void Initialize()
{
Operations = new Operations(this);
ReplicationAlertSettings = new ReplicationAlertSettingsOperations(this);
+ ReplicationAppliances = new ReplicationAppliancesOperations(this);
ReplicationEligibilityResults = new ReplicationEligibilityResultsOperations(this);
ReplicationEvents = new ReplicationEventsOperations(this);
ReplicationFabrics = new ReplicationFabricsOperations(this);
@@ -486,7 +492,7 @@ private void Initialize()
ReplicationVaultHealth = new ReplicationVaultHealthOperations(this);
ReplicationVaultSetting = new ReplicationVaultSettingOperations(this);
BaseUri = new System.Uri("https://management.azure.com");
- ApiVersion = "2021-08-01";
+ ApiVersion = "2021-12-01";
AcceptLanguage = "en-US";
LongRunningOperationRetryTimeout = 30;
GenerateClientRequestId = true;
@@ -529,6 +535,8 @@ private void Initialize()
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("resourceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
+ SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
+ DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
@@ -601,6 +609,8 @@ private void Initialize()
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
+ SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
+ DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));
DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter("instanceType"));
SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter("instanceType"));