diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/pom.xml b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/pom.xml
index eb6d5385f067..561d37a74574 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/pom.xml
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/pom.xml
@@ -11,8 +11,8 @@
com.microsoft.azure
azure-arm-parent
- 1.2.0
- ../../parents/azure-arm-parent
+ 1.1.0
+ ../../../pom.management.xml
azure-mgmt-recoveryservices
1.0.0-beta
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AApplyRecoveryPointInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AApplyRecoveryPointInput.java
index c09d2b723362..2bf7181a4c68 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AApplyRecoveryPointInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AApplyRecoveryPointInput.java
@@ -14,7 +14,7 @@
/**
* ApplyRecoveryPoint input specific to A2A provider.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AApplyRecoveryPointInput.class)
@JsonTypeName("A2A")
public class A2AApplyRecoveryPointInput extends ApplyRecoveryPointProviderSpecificInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerCreationInput.java
index e131df958b69..4fb1e362454f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerCreationInput.java
@@ -14,7 +14,7 @@
/**
* A2A cloud creation input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AContainerCreationInput.class)
@JsonTypeName("A2A")
public class A2AContainerCreationInput extends ReplicationProviderSpecificContainerCreationInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerMappingInput.java
index 5713ab5ae50d..175aefdce459 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AContainerMappingInput.java
@@ -15,7 +15,7 @@
/**
* A2A container mapping input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AContainerMappingInput.class)
@JsonTypeName("A2A")
public class A2AContainerMappingInput extends ReplicationProviderSpecificContainerMappingInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEnableProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEnableProtectionInput.java
index 07b9f8533af9..377b6512d5d5 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEnableProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEnableProtectionInput.java
@@ -16,7 +16,7 @@
/**
* A2A enable protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AEnableProtectionInput.class)
@JsonTypeName("A2A")
public class A2AEnableProtectionInput extends EnableProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEventDetails.java
index 7a026a7d2112..35980010b542 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AEventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a A2A event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AEventDetails.class)
@JsonTypeName("A2A")
public class A2AEventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AFailoverProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AFailoverProviderInput.java
index 67f5f8b8be98..3be515d453cb 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AFailoverProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AFailoverProviderInput.java
@@ -15,7 +15,7 @@
/**
* A2A provider specific input for failover.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AFailoverProviderInput.class)
@JsonTypeName("A2A")
public class A2AFailoverProviderInput extends ProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyCreationInput.java
index 5417ca549b8c..cffa99c6986f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyCreationInput.java
@@ -15,7 +15,7 @@
/**
* A2A Policy creation input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2APolicyCreationInput.class)
@JsonTypeName("A2A")
public class A2APolicyCreationInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyDetails.java
index 6ea4fc9b6f37..3448d6ba7473 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2APolicyDetails.java
@@ -15,7 +15,7 @@
/**
* A2A specific policy details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2APolicyDetails.class)
@JsonTypeName("A2A")
public class A2APolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AProtectionContainerMappingDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AProtectionContainerMappingDetails.java
index 257d194e2bb2..f6fe9ed86781 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AProtectionContainerMappingDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AProtectionContainerMappingDetails.java
@@ -15,7 +15,7 @@
/**
* A2A provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AProtectionContainerMappingDetails.class)
@JsonTypeName("A2A")
public class A2AProtectionContainerMappingDetails extends ProtectionContainerMappingProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ARecoveryPointDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ARecoveryPointDetails.java
index aa0d24f8e7f9..e126f4582d3f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ARecoveryPointDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ARecoveryPointDetails.java
@@ -15,7 +15,7 @@
/**
* A2A provider specific recovery point details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2ARecoveryPointDetails.class)
@JsonTypeName("A2A")
public class A2ARecoveryPointDetails extends ProviderSpecificRecoveryPointDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReplicationDetails.java
index dc91682cf39e..33888921e617 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* A2A provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AReplicationDetails.class)
@JsonTypeName("A2A")
public class A2AReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReprotectInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReprotectInput.java
index a29cebeb4f46..d1a91beed198 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReprotectInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AReprotectInput.java
@@ -16,7 +16,7 @@
/**
* Azure specific reprotect input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AReprotectInput.class)
@JsonTypeName("A2A")
public class A2AReprotectInput extends ReverseReplicationProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ASwitchProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ASwitchProtectionInput.java
index 3b6688a7170a..d70ae7a6cb74 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ASwitchProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2ASwitchProtectionInput.java
@@ -16,7 +16,7 @@
/**
* A2A specific switch protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2ASwitchProtectionInput.class)
@JsonTypeName("A2A")
public class A2ASwitchProtectionInput extends SwitchProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateContainerMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateContainerMappingInput.java
index 7a52e911ad65..e4ac2d777286 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateContainerMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateContainerMappingInput.java
@@ -15,7 +15,7 @@
/**
* A2A update protection container mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AUpdateContainerMappingInput.class)
@JsonTypeName("A2A")
public class A2AUpdateContainerMappingInput extends ReplicationProviderSpecificUpdateContainerMappingInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateReplicationProtectedItemInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateReplicationProtectedItemInput.java
index 2224aaddfc39..6c0fd9bf5481 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateReplicationProtectedItemInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/A2AUpdateReplicationProtectedItemInput.java
@@ -16,7 +16,7 @@
/**
* InMage Azure V2 input to update replication protected item.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = A2AUpdateReplicationProtectedItemInput.class)
@JsonTypeName("A2A")
public class A2AUpdateReplicationProtectedItemInput extends UpdateReplicationProtectedItemProviderInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ApplyRecoveryPointProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ApplyRecoveryPointProviderSpecificInput.java
index 8bc28ab08b6f..232050517084 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ApplyRecoveryPointProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ApplyRecoveryPointProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific input for apply recovery point.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ApplyRecoveryPointProviderSpecificInput.class)
@JsonTypeName("ApplyRecoveryPointProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AApplyRecoveryPointInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AsrJobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AsrJobDetails.java
index c0a2be27ac39..93d5c148f200 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AsrJobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AsrJobDetails.java
@@ -14,7 +14,7 @@
/**
* This class represents job details based on specific job type.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AsrJobDetails.class)
@JsonTypeName("AsrJobDetails")
public class AsrJobDetails extends JobDetails {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AutomationRunbookTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AutomationRunbookTaskDetails.java
index b00be4504ab9..d97d7244f24b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AutomationRunbookTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AutomationRunbookTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the task details for an automation runbook.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AutomationRunbookTaskDetails.class)
@JsonTypeName("AutomationRunbookTaskDetails")
public class AutomationRunbookTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricCreationInput.java
index a5b6e11fb93d..1317a075f19f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricCreationInput.java
@@ -15,7 +15,7 @@
/**
* Fabric provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AzureFabricCreationInput.class)
@JsonTypeName("Azure")
public class AzureFabricCreationInput extends FabricSpecificCreationInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricSpecificDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricSpecificDetails.java
index 5c90ae41ff7b..1f36acb8747e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricSpecificDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureFabricSpecificDetails.java
@@ -16,7 +16,7 @@
/**
* Azure Fabric Specific Details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AzureFabricSpecificDetails.class)
@JsonTypeName("Azure")
public class AzureFabricSpecificDetails extends FabricSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureCreateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureCreateNetworkMappingInput.java
index 1bfa9a4d2513..8b3bbd4f3472 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureCreateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureCreateNetworkMappingInput.java
@@ -16,7 +16,7 @@
* Create network mappings input properties/behavior specific to Azure to Azure
* Network mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AzureToAzureCreateNetworkMappingInput.class)
@JsonTypeName("AzureToAzure")
public class AzureToAzureCreateNetworkMappingInput extends FabricSpecificCreateNetworkMappingInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureNetworkMappingSettings.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureNetworkMappingSettings.java
index c135d7c5c53d..0ff93df27027 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureNetworkMappingSettings.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureNetworkMappingSettings.java
@@ -15,7 +15,7 @@
/**
* A2A Network Mapping fabric specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AzureToAzureNetworkMappingSettings.class)
@JsonTypeName("AzureToAzure")
public class AzureToAzureNetworkMappingSettings extends NetworkMappingFabricSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureUpdateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureUpdateNetworkMappingInput.java
index aac96435edfa..fcea701fd4b1 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureUpdateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/AzureToAzureUpdateNetworkMappingInput.java
@@ -15,7 +15,7 @@
/**
* Updates network mappings input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = AzureToAzureUpdateNetworkMappingInput.class)
@JsonTypeName("AzureToAzure")
public class AzureToAzureUpdateNetworkMappingInput extends FabricSpecificUpdateNetworkMappingInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConfigurationSettings.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConfigurationSettings.java
index a659422825b4..ba6812c825ff 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConfigurationSettings.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConfigurationSettings.java
@@ -15,7 +15,7 @@
/**
* Replication provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ConfigurationSettings.class)
@JsonTypeName("ConfigurationSettings")
@JsonSubTypes({
@JsonSubTypes.Type(name = "HyperVVirtualMachine", value = HyperVVirtualMachineDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConsistencyCheckTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConsistencyCheckTaskDetails.java
index 1a35131a5668..f281cf6c84fa 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConsistencyCheckTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ConsistencyCheckTaskDetails.java
@@ -17,7 +17,7 @@
* This class contains monitoring details of all the inconsistent Protected
* Entities in Vmm.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ConsistencyCheckTaskDetails.class)
@JsonTypeName("ConsistencyCheckTaskDetails")
public class ConsistencyCheckTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/DisableProtectionProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/DisableProtectionProviderSpecificInput.java
index f711ade21b9a..349f77d02d3f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/DisableProtectionProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/DisableProtectionProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Disable protection provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = DisableProtectionProviderSpecificInput.class)
@JsonTypeName("DisableProtectionProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "InMage", value = InMageDisableProtectionProviderSpecificInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableMigrationProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableMigrationProviderSpecificInput.java
index 66d26dca0b38..7d0dcd255b5b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableMigrationProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableMigrationProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Enable migration provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = EnableMigrationProviderSpecificInput.class)
@JsonTypeName("EnableMigrationProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtEnableMigrationInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableProtectionProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableProtectionProviderSpecificInput.java
index 4c25e83bd9b8..6081fbee87a2 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableProtectionProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EnableProtectionProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Enable protection provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = EnableProtectionProviderSpecificInput.class)
@JsonTypeName("EnableProtectionProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AEnableProtectionInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProperties.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProperties.java
index 36d5892d9d3b..8a20cb2e7bad 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProperties.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProperties.java
@@ -42,6 +42,12 @@ public class EventProperties {
@JsonProperty(value = "affectedObjectFriendlyName")
private String affectedObjectFriendlyName;
+ /**
+ * The affected object correlationId for the event.
+ */
+ @JsonProperty(value = "affectedObjectCorrelationId", access = JsonProperty.Access.WRITE_ONLY)
+ private String affectedObjectCorrelationId;
+
/**
* The severity of the event.
*/
@@ -159,6 +165,15 @@ public EventProperties withAffectedObjectFriendlyName(String affectedObjectFrien
return this;
}
+ /**
+ * Get the affected object correlationId for the event.
+ *
+ * @return the affectedObjectCorrelationId value
+ */
+ public String affectedObjectCorrelationId() {
+ return this.affectedObjectCorrelationId;
+ }
+
/**
* Get the severity of the event.
*
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProviderSpecificDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProviderSpecificDetails.java
index a00eb3e27deb..d4adcafdd1ff 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProviderSpecificDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventProviderSpecificDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for provider specific details for an event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = EventProviderSpecificDetails.class)
@JsonTypeName("EventProviderSpecificDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AEventDetails.class),
@@ -23,7 +23,8 @@
@JsonSubTypes.Type(name = "HyperVReplica2012R2", value = HyperVReplica2012R2EventDetails.class),
@JsonSubTypes.Type(name = "HyperVReplicaAzure", value = HyperVReplicaAzureEventDetails.class),
@JsonSubTypes.Type(name = "HyperVReplicaBaseEventDetails", value = HyperVReplicaBaseEventDetails.class),
- @JsonSubTypes.Type(name = "InMageAzureV2", value = InMageAzureV2EventDetails.class)
+ @JsonSubTypes.Type(name = "InMageAzureV2", value = InMageAzureV2EventDetails.class),
+ @JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtEventDetails.class)
})
public class EventProviderSpecificDetails {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventQueryParameter.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventQueryParameter.java
index 17fe45f39f27..022ebc84b957 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventQueryParameter.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventQueryParameter.java
@@ -45,6 +45,12 @@ public class EventQueryParameter {
@JsonProperty(value = "affectedObjectFriendlyName")
private String affectedObjectFriendlyName;
+ /**
+ * The affected object correlationId for the events to be queried.
+ */
+ @JsonProperty(value = "affectedObjectCorrelationId", access = JsonProperty.Access.WRITE_ONLY)
+ private String affectedObjectCorrelationId;
+
/**
* The start time of the time range within which the events are to be
* queried.
@@ -159,6 +165,15 @@ public EventQueryParameter withAffectedObjectFriendlyName(String affectedObjectF
return this;
}
+ /**
+ * Get the affected object correlationId for the events to be queried.
+ *
+ * @return the affectedObjectCorrelationId value
+ */
+ public String affectedObjectCorrelationId() {
+ return this.affectedObjectCorrelationId;
+ }
+
/**
* Get the start time of the time range within which the events are to be queried.
*
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventSpecificDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventSpecificDetails.java
index 76784fc4c1f2..2f4d929bb435 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventSpecificDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/EventSpecificDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event specific details for an event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = EventSpecificDetails.class)
@JsonTypeName("EventSpecificDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "JobStatus", value = JobStatusEventDetails.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ExportJobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ExportJobDetails.java
index d089eec7e834..ecb56948daea 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ExportJobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ExportJobDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents details for export jobs workflow.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ExportJobDetails.class)
@JsonTypeName("ExportJobDetails")
public class ExportJobDetails extends JobDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricReplicationGroupTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricReplicationGroupTaskDetails.java
index dd38966fea89..b397da9211be 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricReplicationGroupTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricReplicationGroupTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the fabric replication group task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FabricReplicationGroupTaskDetails.class)
@JsonTypeName("FabricReplicationGroupTaskDetails")
public class FabricReplicationGroupTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreateNetworkMappingInput.java
index d0bc7974d436..a15977c259b0 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreateNetworkMappingInput.java
@@ -15,7 +15,7 @@
/**
* Input details specific to fabrics during Network Mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FabricSpecificCreateNetworkMappingInput.class)
@JsonTypeName("FabricSpecificCreateNetworkMappingInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "AzureToAzure", value = AzureToAzureCreateNetworkMappingInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreationInput.java
index 38f4d5e50555..1fdf4798114b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificCreationInput.java
@@ -15,7 +15,7 @@
/**
* Fabric provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FabricSpecificCreationInput.class)
@JsonTypeName("FabricSpecificCreationInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "Azure", value = AzureFabricCreationInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificDetails.java
index c1a7c96ff9ff..9b0a9df20a11 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificDetails.java
@@ -15,7 +15,7 @@
/**
* Fabric specific details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FabricSpecificDetails.class)
@JsonTypeName("FabricSpecificDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "Azure", value = AzureFabricSpecificDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificUpdateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificUpdateNetworkMappingInput.java
index 819dce093fe9..f2ab3f51b35a 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificUpdateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FabricSpecificUpdateNetworkMappingInput.java
@@ -15,7 +15,7 @@
/**
* Input details specific to fabrics during Network Mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FabricSpecificUpdateNetworkMappingInput.class)
@JsonTypeName("FabricSpecificUpdateNetworkMappingInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "AzureToAzure", value = AzureToAzureUpdateNetworkMappingInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FailoverJobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FailoverJobDetails.java
index 6124671bc348..f904fb5e1a10 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FailoverJobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/FailoverJobDetails.java
@@ -16,7 +16,7 @@
/**
* This class represents the details for a failover job.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = FailoverJobDetails.class)
@JsonTypeName("FailoverJobDetails")
public class FailoverJobDetails extends JobDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/GroupTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/GroupTaskDetails.java
index b838076fa6af..7de23beed0fa 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/GroupTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/GroupTaskDetails.java
@@ -18,7 +18,7 @@
* This class represents the group task details when parent child relationship
* exists in the drill down.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = GroupTaskDetails.class)
@JsonTypeName("GroupTaskDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "InlineWorkflowTaskDetails", value = InlineWorkflowTaskDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012EventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012EventDetails.java
index bde002947d04..873feeed602d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012EventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012EventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a HyperVReplica E2E event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplica2012EventDetails.class)
@JsonTypeName("HyperVReplica2012")
public class HyperVReplica2012EventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012R2EventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012R2EventDetails.java
index f1519f0a82ce..0fc3eeb36dfc 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012R2EventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplica2012R2EventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a HyperVReplica blue E2E event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplica2012R2EventDetails.class)
@JsonTypeName("HyperVReplica2012R2")
public class HyperVReplica2012R2EventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureApplyRecoveryPointInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureApplyRecoveryPointInput.java
index 59de305a5696..83dd3c36d8c0 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureApplyRecoveryPointInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureApplyRecoveryPointInput.java
@@ -15,7 +15,7 @@
/**
* ApplyRecoveryPoint input specific to HyperVReplicaAzure provider.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureApplyRecoveryPointInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureApplyRecoveryPointInput extends ApplyRecoveryPointProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEnableProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEnableProtectionInput.java
index 1e31ba569cc0..6c10dce7afd8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEnableProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEnableProtectionInput.java
@@ -16,7 +16,7 @@
/**
* Azure specific enable protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureEnableProtectionInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureEnableProtectionInput extends EnableProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEventDetails.java
index dcf85b599fe4..014ac69f7bb8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureEventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a HyperVReplica E2A event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureEventDetails.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureEventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailbackProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailbackProviderInput.java
index 5a6a362dd08f..d4f5bfddcd3e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailbackProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailbackProviderInput.java
@@ -15,7 +15,7 @@
/**
* HvrA provider specific input for failback.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureFailbackProviderInput.class)
@JsonTypeName("HyperVReplicaAzureFailback")
public class HyperVReplicaAzureFailbackProviderInput extends ProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailoverProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailoverProviderInput.java
index 880bbe4dec17..4acf1a0486bc 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailoverProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureFailoverProviderInput.java
@@ -15,7 +15,7 @@
/**
* HvrA provider specific input for failover.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureFailoverProviderInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureFailoverProviderInput extends ProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyDetails.java
index e5187c7f14c8..1349554e3bf2 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyDetails.java
@@ -15,7 +15,7 @@
/**
* Hyper-V Replica Azure specific protection profile details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzurePolicyDetails.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzurePolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyInput.java
index de31d7a9c5a2..35d6411e50d3 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzurePolicyInput.java
@@ -16,7 +16,7 @@
/**
* Hyper-V Replica Azure specific input for creating a protection profile.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzurePolicyInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzurePolicyInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReplicationDetails.java
index dd77e48a2c78..b38cbd6f15cb 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* Hyper V Replica Azure provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureReplicationDetails.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReprotectInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReprotectInput.java
index cb888b7f5f44..4447e038dc31 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReprotectInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureReprotectInput.java
@@ -15,7 +15,7 @@
/**
* Azure specific reprotect input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureReprotectInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureReprotectInput extends ReverseReplicationProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureUpdateReplicationProtectedItemInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureUpdateReplicationProtectedItemInput.java
index ee3295d99a74..40ce874c7d86 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureUpdateReplicationProtectedItemInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaAzureUpdateReplicationProtectedItemInput.java
@@ -15,7 +15,7 @@
/**
* HyperV replica Azure input to update replication protected item.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaAzureUpdateReplicationProtectedItemInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class HyperVReplicaAzureUpdateReplicationProtectedItemInput extends UpdateReplicationProtectedItemProviderInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseEventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseEventDetails.java
index 200f5903d6cb..b637818c62d8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseEventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseEventDetails.java
@@ -15,7 +15,7 @@
/**
* Abstract model class for event details of a HyperVReplica E2E event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBaseEventDetails.class)
@JsonTypeName("HyperVReplicaBaseEventDetails")
public class HyperVReplicaBaseEventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBasePolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBasePolicyDetails.java
index 2828de249060..ef1ca0f24f19 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBasePolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBasePolicyDetails.java
@@ -15,7 +15,7 @@
/**
* Base class for HyperVReplica policy details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBasePolicyDetails.class)
@JsonTypeName("HyperVReplicaBasePolicyDetails")
public class HyperVReplicaBasePolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseReplicationDetails.java
index b80d066a6719..661f3005b77d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBaseReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* Hyper V replica provider specific settings base class.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBaseReplicationDetails.class)
@JsonTypeName("HyperVReplicaBaseReplicationDetails")
public class HyperVReplicaBaseReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyDetails.java
index 15b8b1fdfd6a..576f70c39b3a 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyDetails.java
@@ -15,7 +15,7 @@
/**
* Hyper-V Replica Blue specific protection profile details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBluePolicyDetails.class)
@JsonTypeName("HyperVReplica2012R2")
public class HyperVReplicaBluePolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyInput.java
index f491978500bc..ef7e3a4f0bde 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBluePolicyInput.java
@@ -15,7 +15,7 @@
/**
* HyperV Replica Blue policy input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBluePolicyInput.class)
@JsonTypeName("HyperVReplica2012R2")
public class HyperVReplicaBluePolicyInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBlueReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBlueReplicationDetails.java
index 5fffe1e8f72f..becfd6bad76d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBlueReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaBlueReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* HyperV replica 2012 R2 (Blue) replication details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaBlueReplicationDetails.class)
@JsonTypeName("HyperVReplica2012R2")
public class HyperVReplicaBlueReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyDetails.java
index d9d1ac89b63d..99e2fd219fbf 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyDetails.java
@@ -15,7 +15,7 @@
/**
* Hyper-V Replica Blue specific protection profile details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaPolicyDetails.class)
@JsonTypeName("HyperVReplica2012")
public class HyperVReplicaPolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyInput.java
index ac7392e97786..0b7c959183ed 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaPolicyInput.java
@@ -15,7 +15,7 @@
/**
* Hyper-V Replica specific policy Input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaPolicyInput.class)
@JsonTypeName("HyperVReplica2012")
public class HyperVReplicaPolicyInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaReplicationDetails.java
index 895477982ce2..ac5997a56d80 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVReplicaReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* HyperV replica 2012 replication details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVReplicaReplicationDetails.class)
@JsonTypeName("HyperVReplica2012")
public class HyperVReplicaReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVSiteDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVSiteDetails.java
index 6ddb74e2bea7..8004df18b226 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVSiteDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVSiteDetails.java
@@ -14,7 +14,7 @@
/**
* HyperVSite fabric specific details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVSiteDetails.class)
@JsonTypeName("HyperVSite")
public class HyperVSiteDetails extends FabricSpecificDetails {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVVirtualMachineDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVVirtualMachineDetails.java
index cf850f1799c6..e528e07d8223 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVVirtualMachineDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/HyperVVirtualMachineDetails.java
@@ -16,7 +16,7 @@
/**
* Single Host fabric provider specific VM settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = HyperVVirtualMachineDetails.class)
@JsonTypeName("HyperVVirtualMachine")
public class HyperVVirtualMachineDetails extends ConfigurationSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ApplyRecoveryPointInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ApplyRecoveryPointInput.java
index c5b7ef453e44..94c7fd6f2f9b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ApplyRecoveryPointInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ApplyRecoveryPointInput.java
@@ -15,7 +15,7 @@
/**
* ApplyRecoveryPoint input specific to InMageAzureV2 provider.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2ApplyRecoveryPointInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2ApplyRecoveryPointInput extends ApplyRecoveryPointProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EnableProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EnableProtectionInput.java
index 5eb990297d27..077c3e50f069 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EnableProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EnableProtectionInput.java
@@ -16,7 +16,7 @@
/**
* VMware Azure specific enable protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2EnableProtectionInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2EnableProtectionInput extends EnableProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EventDetails.java
index 917162ce1640..67e9b9ec8792 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2EventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a VMwareAzureV2 event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2EventDetails.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2EventDetails extends EventProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2FailoverProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2FailoverProviderInput.java
index ba6a8c21faf4..86acb8a5ba3d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2FailoverProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2FailoverProviderInput.java
@@ -15,7 +15,7 @@
/**
* InMageAzureV2 provider specific input for failover.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2FailoverProviderInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2FailoverProviderInput extends ProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyDetails.java
index dd3f60750d69..7c0310315ba8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyDetails.java
@@ -15,7 +15,7 @@
/**
* InMage Azure v2 specific protection profile details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2PolicyDetails.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2PolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyInput.java
index d5b35873fe36..404772e2dae1 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2PolicyInput.java
@@ -15,7 +15,7 @@
/**
* VMWare Azure specific policy Input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2PolicyInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2PolicyInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2RecoveryPointDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2RecoveryPointDetails.java
index dce8c9a3bb3d..55146a702f33 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2RecoveryPointDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2RecoveryPointDetails.java
@@ -15,7 +15,7 @@
/**
* InMage Azure V2 provider specific recovery point details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2RecoveryPointDetails.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2RecoveryPointDetails extends ProviderSpecificRecoveryPointDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReplicationDetails.java
index f9ba467dd942..d94fb2c077b6 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReplicationDetails.java
@@ -17,7 +17,7 @@
/**
* InMageAzureV2 provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2ReplicationDetails.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2ReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReprotectInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReprotectInput.java
index d42db3668229..00f6b5377b7e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReprotectInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2ReprotectInput.java
@@ -16,7 +16,7 @@
/**
* InMageAzureV2 specific provider input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2ReprotectInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2ReprotectInput extends ReverseReplicationProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2UpdateReplicationProtectedItemInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2UpdateReplicationProtectedItemInput.java
index 0b84bb25690e..aa9f7b1cadb3 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2UpdateReplicationProtectedItemInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageAzureV2UpdateReplicationProtectedItemInput.java
@@ -15,7 +15,7 @@
/**
* InMage Azure V2 input to update replication protected item.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageAzureV2UpdateReplicationProtectedItemInput.class)
@JsonTypeName("InMageAzureV2")
public class InMageAzureV2UpdateReplicationProtectedItemInput extends UpdateReplicationProtectedItemProviderInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageBasePolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageBasePolicyDetails.java
index 67d655ec8ad3..c2d9d02796f8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageBasePolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageBasePolicyDetails.java
@@ -15,7 +15,7 @@
/**
* Base class for the policies of providers using InMage replication.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageBasePolicyDetails.class)
@JsonTypeName("InMageBasePolicyDetails")
public class InMageBasePolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageDisableProtectionProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageDisableProtectionProviderSpecificInput.java
index 413e3798b63c..d3dafe3f0cb2 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageDisableProtectionProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageDisableProtectionProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* InMage disable protection provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageDisableProtectionProviderSpecificInput.class)
@JsonTypeName("InMage")
public class InMageDisableProtectionProviderSpecificInput extends DisableProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageEnableProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageEnableProtectionInput.java
index dc1c768fba3e..2c691256d199 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageEnableProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageEnableProtectionInput.java
@@ -16,7 +16,7 @@
/**
* VMware Azure specific enable protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageEnableProtectionInput.class)
@JsonTypeName("InMage")
public class InMageEnableProtectionInput extends EnableProtectionProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageFailoverProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageFailoverProviderInput.java
index 6d0bacb5053a..2cebd2fdf0a2 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageFailoverProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageFailoverProviderInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific input for InMage failover.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageFailoverProviderInput.class)
@JsonTypeName("InMage")
public class InMageFailoverProviderInput extends ProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyDetails.java
index 0a949924c494..a5394b544b0c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyDetails.java
@@ -15,7 +15,7 @@
/**
* InMage specific protection profile details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMagePolicyDetails.class)
@JsonTypeName("InMage")
public class InMagePolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyInput.java
index 6fbc1834af9c..a1385b8be6a8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMagePolicyInput.java
@@ -15,7 +15,7 @@
/**
* VMWare Azure specific protection profile Input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMagePolicyInput.class)
@JsonTypeName("InMage")
public class InMagePolicyInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReplicationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReplicationDetails.java
index 9cbf438567a2..31be2773f0a9 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReplicationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReplicationDetails.java
@@ -18,7 +18,7 @@
/**
* InMage provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageReplicationDetails.class)
@JsonTypeName("InMage")
public class InMageReplicationDetails extends ReplicationProviderSpecificSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReprotectInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReprotectInput.java
index 817ac731d9ed..1580e33a1c69 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReprotectInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InMageReprotectInput.java
@@ -16,7 +16,7 @@
/**
* InMageAzureV2 specific provider input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InMageReprotectInput.class)
@JsonTypeName("InMage")
public class InMageReprotectInput extends ReverseReplicationProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InlineWorkflowTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InlineWorkflowTaskDetails.java
index a545c7908688..8b3564c8a09e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InlineWorkflowTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/InlineWorkflowTaskDetails.java
@@ -16,7 +16,7 @@
/**
* This class represents the inline workflow task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = InlineWorkflowTaskDetails.class)
@JsonTypeName("InlineWorkflowTaskDetails")
public class InlineWorkflowTaskDetails extends GroupTaskDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobDetails.java
index 5ccc406da30e..c3d2abd463d8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobDetails.java
@@ -17,7 +17,7 @@
/**
* Job details based on specific job type.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = JobDetails.class)
@JsonTypeName("JobDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "AsrJobDetails", value = AsrJobDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobStatusEventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobStatusEventDetails.java
index e84009188f68..2b472ac7e433 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobStatusEventDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobStatusEventDetails.java
@@ -15,7 +15,7 @@
/**
* Model class for event details of a job status event.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = JobStatusEventDetails.class)
@JsonTypeName("JobStatus")
public class JobStatusEventDetails extends EventSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobTaskDetails.java
index 820720e577ab..28e7d5a2b54e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/JobTaskDetails.java
@@ -16,7 +16,7 @@
* This class represents a task which is actually a workflow so that one can
* navigate to its individual drill down.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = JobTaskDetails.class)
@JsonTypeName("JobTaskDetails")
public class JobTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ManualActionTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ManualActionTaskDetails.java
index 4a43c393951d..22cd2cdc168c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ManualActionTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ManualActionTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the manual action task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ManualActionTaskDetails.class)
@JsonTypeName("ManualActionTaskDetails")
public class ManualActionTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrateProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrateProviderSpecificInput.java
index 3ade71df7af1..3df05cf39a16 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrateProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrateProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Migrate provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = MigrateProviderSpecificInput.class)
@JsonTypeName("MigrateProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtMigrateInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrationItemOperation.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrationItemOperation.java
index 792390cb9c42..de73d4feb02b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrationItemOperation.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/MigrationItemOperation.java
@@ -28,6 +28,9 @@ public final class MigrationItemOperation extends ExpandableStringEnum {
+ /** Static value None for ProtectionHealth. */
+ public static final ProtectionHealth NONE = fromString("None");
+
+ /** Static value Normal for ProtectionHealth. */
+ public static final ProtectionHealth NORMAL = fromString("Normal");
+
+ /** Static value Warning for ProtectionHealth. */
+ public static final ProtectionHealth WARNING = fromString("Warning");
+
+ /** Static value Critical for ProtectionHealth. */
+ public static final ProtectionHealth CRITICAL = fromString("Critical");
+
+ /**
+ * Creates or finds a ProtectionHealth from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ProtectionHealth
+ */
+ @JsonCreator
+ public static ProtectionHealth fromString(String name) {
+ return fromString(name, ProtectionHealth.class);
+ }
+
+ /**
+ * @return known ProtectionHealth values
+ */
+ public static Collection values() {
+ return values(ProtectionHealth.class);
+ }
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificFailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificFailoverInput.java
index 1bab9c6da96e..6065f3bf521f 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificFailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificFailoverInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific failover input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ProviderSpecificFailoverInput.class)
@JsonTypeName("ProviderSpecificFailoverInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AFailoverProviderInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificRecoveryPointDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificRecoveryPointDetails.java
index b6c68586010e..d1006458d2b9 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificRecoveryPointDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ProviderSpecificRecoveryPointDetails.java
@@ -15,7 +15,7 @@
/**
* Replication provider specific recovery point details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ProviderSpecificRecoveryPointDetails.class)
@JsonTypeName("ProviderSpecificRecoveryPointDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2ARecoveryPointDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RcmAzureMigrationPolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RcmAzureMigrationPolicyDetails.java
index 7b3679329c5f..4d3e2239e88e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RcmAzureMigrationPolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RcmAzureMigrationPolicyDetails.java
@@ -15,7 +15,7 @@
/**
* RCM based Azure migration specific policy details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RcmAzureMigrationPolicyDetails.class)
@JsonTypeName("RcmAzureMigration")
public class RcmAzureMigrationPolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanA2AFailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanA2AFailoverInput.java
index 9d5d2fbca2c1..4eb3c658f24a 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanA2AFailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanA2AFailoverInput.java
@@ -15,7 +15,7 @@
/**
* Recovery plan A2A failover input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanA2AFailoverInput.class)
@JsonTypeName("A2A")
public class RecoveryPlanA2AFailoverInput extends RecoveryPlanProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanActionDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanActionDetails.java
index 8aeb31b47f92..76c08ddae089 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanActionDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanActionDetails.java
@@ -15,7 +15,7 @@
/**
* Recovery plan action custom details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanActionDetails.class)
@JsonTypeName("RecoveryPlanActionDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "AutomationRunbookActionDetails", value = RecoveryPlanAutomationRunbookActionDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanAutomationRunbookActionDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanAutomationRunbookActionDetails.java
index 710b75daaf55..612eb255b862 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanAutomationRunbookActionDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanAutomationRunbookActionDetails.java
@@ -15,7 +15,7 @@
/**
* Recovery plan Automation runbook action details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanAutomationRunbookActionDetails.class)
@JsonTypeName("AutomationRunbookActionDetails")
public class RecoveryPlanAutomationRunbookActionDetails extends RecoveryPlanActionDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanGroupTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanGroupTaskDetails.java
index 12a2da136267..4cff23fb4fb5 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanGroupTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanGroupTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the recovery plan group task.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanGroupTaskDetails.class)
@JsonTypeName("RecoveryPlanGroupTaskDetails")
public class RecoveryPlanGroupTaskDetails extends GroupTaskDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailbackInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailbackInput.java
index c7785424e182..ed27b8b6bb5b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailbackInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailbackInput.java
@@ -15,7 +15,7 @@
/**
* Recovery plan HVR Azure failback input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanHyperVReplicaAzureFailbackInput.class)
@JsonTypeName("HyperVReplicaAzureFailback")
public class RecoveryPlanHyperVReplicaAzureFailbackInput extends RecoveryPlanProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailoverInput.java
index 8b5b393f6759..92c0369da880 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanHyperVReplicaAzureFailoverInput.java
@@ -15,13 +15,13 @@
/**
* Recovery plan HVR Azure failover input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanHyperVReplicaAzureFailoverInput.class)
@JsonTypeName("HyperVReplicaAzure")
public class RecoveryPlanHyperVReplicaAzureFailoverInput extends RecoveryPlanProviderSpecificFailoverInput {
/**
* The vault location.
*/
- @JsonProperty(value = "vaultLocation", required = true)
+ @JsonProperty(value = "vaultLocation")
private String vaultLocation;
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageAzureV2FailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageAzureV2FailoverInput.java
index 43a13065e1a7..13dc7fa2a3d4 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageAzureV2FailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageAzureV2FailoverInput.java
@@ -15,7 +15,7 @@
/**
* Recovery plan InMageAzureV2 failover input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanInMageAzureV2FailoverInput.class)
@JsonTypeName("InMageAzureV2")
public class RecoveryPlanInMageAzureV2FailoverInput extends RecoveryPlanProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageFailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageFailoverInput.java
index 84fcd0b7fdb5..de4e28388abe 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageFailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanInMageFailoverInput.java
@@ -15,7 +15,7 @@
/**
* Recovery plan InMage failover input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanInMageFailoverInput.class)
@JsonTypeName("InMage")
public class RecoveryPlanInMageFailoverInput extends RecoveryPlanProviderSpecificFailoverInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanManualActionDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanManualActionDetails.java
index 37dffa760e2a..1cc658197345 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanManualActionDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanManualActionDetails.java
@@ -15,7 +15,7 @@
/**
* Recovery plan manual action details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanManualActionDetails.class)
@JsonTypeName("ManualActionDetails")
public class RecoveryPlanManualActionDetails extends RecoveryPlanActionDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanProviderSpecificFailoverInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanProviderSpecificFailoverInput.java
index 2749bc35641a..28b82391842c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanProviderSpecificFailoverInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanProviderSpecificFailoverInput.java
@@ -15,7 +15,7 @@
/**
* Recovery plan provider specific failover input base class.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanProviderSpecificFailoverInput.class)
@JsonTypeName("RecoveryPlanProviderSpecificFailoverInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = RecoveryPlanA2AFailoverInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanScriptActionDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanScriptActionDetails.java
index 1411b9bf4354..ac78a8b4690d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanScriptActionDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanScriptActionDetails.java
@@ -15,7 +15,7 @@
/**
* Recovery plan script action details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanScriptActionDetails.class)
@JsonTypeName("ScriptActionDetails")
public class RecoveryPlanScriptActionDetails extends RecoveryPlanActionDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanShutdownGroupTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanShutdownGroupTaskDetails.java
index f228ef031024..227b679af023 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanShutdownGroupTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/RecoveryPlanShutdownGroupTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the recovery plan shutdown group task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = RecoveryPlanShutdownGroupTaskDetails.class)
@JsonTypeName("RecoveryPlanShutdownGroupTaskDetails")
public class RecoveryPlanShutdownGroupTaskDetails extends GroupTaskDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationGroupDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationGroupDetails.java
index 11df6a969490..f2b7d4a6dc0d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationGroupDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationGroupDetails.java
@@ -14,7 +14,7 @@
/**
* Replication group details. This will be used in case of San and Wvr.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReplicationGroupDetails.class)
@JsonTypeName("ReplicationGroupDetails")
public class ReplicationGroupDetails extends ConfigurationSettings {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationMigrationItems.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationMigrationItems.java
index 1e10b3d7fe53..c625d1f972df 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationMigrationItems.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationMigrationItems.java
@@ -31,6 +31,19 @@ public interface ReplicationMigrationItems extends SupportsCreating migrateAsync(String fabricName, String protectionContainerName, String migrationItemName, MigrateInputProperties properties);
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ Observable resyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties);
+
/**
* Test migrate item.
* The operation to initiate test migration of the item.
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerCreationInput.java
index 343b5ea9e2e4..edf5d4e42c53 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerCreationInput.java
@@ -15,11 +15,11 @@
/**
* Provider specific input for container creation operation.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReplicationProviderSpecificContainerCreationInput.class)
@JsonTypeName("ReplicationProviderSpecificContainerCreationInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AContainerCreationInput.class),
- @JsonSubTypes.Type(name = "6c7da455-506f-43ff-a16a-8eb101aebb70", value = VMwareCbtContainerCreationInput.class)
+ @JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtContainerCreationInput.class)
})
public class ReplicationProviderSpecificContainerCreationInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerMappingInput.java
index 5fd36a97cade..31e0da3fbf2a 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificContainerMappingInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific input for pairing operations.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReplicationProviderSpecificContainerMappingInput.class)
@JsonTypeName("ReplicationProviderSpecificContainerMappingInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AContainerMappingInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificSettings.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificSettings.java
index eacd9bf37e5b..6b3e1b1d8aa2 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificSettings.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificSettings.java
@@ -15,7 +15,7 @@
/**
* Replication provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReplicationProviderSpecificSettings.class)
@JsonTypeName("ReplicationProviderSpecificSettings")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AReplicationDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificUpdateContainerMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificUpdateContainerMappingInput.java
index 01b7c2dc7a2f..2b38a42eec96 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificUpdateContainerMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReplicationProviderSpecificUpdateContainerMappingInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific input for update pairing operations.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReplicationProviderSpecificUpdateContainerMappingInput.class)
@JsonTypeName("ReplicationProviderSpecificUpdateContainerMappingInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AUpdateContainerMappingInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResourceHealthSummary.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResourceHealthSummary.java
index 5bb4629018d9..326a59b9222c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResourceHealthSummary.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResourceHealthSummary.java
@@ -9,6 +9,7 @@
package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
import java.util.List;
+import java.util.Map;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
@@ -29,6 +30,12 @@ public class ResourceHealthSummary {
@JsonProperty(value = "issues")
private List issues;
+ /**
+ * The categorized resource counts.
+ */
+ @JsonProperty(value = "categorizedResourceCounts")
+ private Map categorizedResourceCounts;
+
/**
* Get the count of total resources under the container.
*
@@ -69,4 +76,24 @@ public ResourceHealthSummary withIssues(List issues) {
return this;
}
+ /**
+ * Get the categorized resource counts.
+ *
+ * @return the categorizedResourceCounts value
+ */
+ public Map categorizedResourceCounts() {
+ return this.categorizedResourceCounts;
+ }
+
+ /**
+ * Set the categorized resource counts.
+ *
+ * @param categorizedResourceCounts the categorizedResourceCounts value to set
+ * @return the ResourceHealthSummary object itself.
+ */
+ public ResourceHealthSummary withCategorizedResourceCounts(Map categorizedResourceCounts) {
+ this.categorizedResourceCounts = categorizedResourceCounts;
+ return this;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInput.java
new file mode 100644
index 000000000000..be337ae85fb7
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInput.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Resync input.
+ */
+public class ResyncInput {
+ /**
+ * Resync input properties.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private ResyncInputProperties properties;
+
+ /**
+ * Get resync input properties.
+ *
+ * @return the properties value
+ */
+ public ResyncInputProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set resync input properties.
+ *
+ * @param properties the properties value to set
+ * @return the ResyncInput object itself.
+ */
+ public ResyncInput withProperties(ResyncInputProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInputProperties.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInputProperties.java
new file mode 100644
index 000000000000..40ab441d73ed
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncInputProperties.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Resync input properties.
+ */
+public class ResyncInputProperties {
+ /**
+ * The provider specific details.
+ */
+ @JsonProperty(value = "providerSpecificDetails", required = true)
+ private ResyncProviderSpecificInput providerSpecificDetails;
+
+ /**
+ * Get the provider specific details.
+ *
+ * @return the providerSpecificDetails value
+ */
+ public ResyncProviderSpecificInput providerSpecificDetails() {
+ return this.providerSpecificDetails;
+ }
+
+ /**
+ * Set the provider specific details.
+ *
+ * @param providerSpecificDetails the providerSpecificDetails value to set
+ * @return the ResyncInputProperties object itself.
+ */
+ public ResyncInputProperties withProviderSpecificDetails(ResyncProviderSpecificInput providerSpecificDetails) {
+ this.providerSpecificDetails = providerSpecificDetails;
+ return this;
+ }
+
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncProviderSpecificInput.java
new file mode 100644
index 000000000000..f0d92daf2b30
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncProviderSpecificInput.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+
+/**
+ * Resync provider specific input.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ResyncProviderSpecificInput.class)
+@JsonTypeName("ResyncProviderSpecificInput")
+@JsonSubTypes({
+ @JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtResyncInput.class)
+})
+public class ResyncProviderSpecificInput {
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncState.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncState.java
new file mode 100644
index 000000000000..024240b12a73
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ResyncState.java
@@ -0,0 +1,44 @@
+/**
+ * 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.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import java.util.Collection;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.microsoft.rest.ExpandableStringEnum;
+
+/**
+ * Defines values for ResyncState.
+ */
+public final class ResyncState extends ExpandableStringEnum {
+ /** Static value None for ResyncState. */
+ public static final ResyncState NONE = fromString("None");
+
+ /** Static value PreparedForResynchronization for ResyncState. */
+ public static final ResyncState PREPARED_FOR_RESYNCHRONIZATION = fromString("PreparedForResynchronization");
+
+ /** Static value StartedResynchronization for ResyncState. */
+ public static final ResyncState STARTED_RESYNCHRONIZATION = fromString("StartedResynchronization");
+
+ /**
+ * Creates or finds a ResyncState from its string representation.
+ * @param name a name to look for
+ * @return the corresponding ResyncState
+ */
+ @JsonCreator
+ public static ResyncState fromString(String name) {
+ return fromString(name, ResyncState.class);
+ }
+
+ /**
+ * @return known ResyncState values
+ */
+ public static Collection values() {
+ return values(ResyncState.class);
+ }
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReverseReplicationProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReverseReplicationProviderSpecificInput.java
index 5bdc2bf385e7..3b58092486fd 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReverseReplicationProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ReverseReplicationProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific reverse replication input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ReverseReplicationProviderSpecificInput.class)
@JsonTypeName("ReverseReplicationProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AReprotectInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SanEnableProtectionInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SanEnableProtectionInput.java
index 782be3098413..1bdb3164577e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SanEnableProtectionInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SanEnableProtectionInput.java
@@ -14,7 +14,7 @@
/**
* San enable protection provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = SanEnableProtectionInput.class)
@JsonTypeName("San")
public class SanEnableProtectionInput extends EnableProtectionProviderSpecificInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ScriptActionTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ScriptActionTaskDetails.java
index bd10b981e28b..dd9a2d499d5c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ScriptActionTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/ScriptActionTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the script action task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = ScriptActionTaskDetails.class)
@JsonTypeName("ScriptActionTaskDetails")
public class ScriptActionTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionJobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionJobDetails.java
index ad61ceb3d2f6..d0203de5250e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionJobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionJobDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents details for switch protection job.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = SwitchProtectionJobDetails.class)
@JsonTypeName("SwitchProtectionJobDetails")
public class SwitchProtectionJobDetails extends JobDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionProviderSpecificInput.java
index f624855a4408..1567dd4e0d53 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/SwitchProtectionProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Provider specific switch protection input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = SwitchProtectionProviderSpecificInput.class)
@JsonTypeName("SwitchProtectionProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2ASwitchProtectionInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TaskTypeDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TaskTypeDetails.java
index 38efd8e14395..7b285709e98d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TaskTypeDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TaskTypeDetails.java
@@ -15,7 +15,7 @@
/**
* Task details based on specific task type.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = TaskTypeDetails.class)
@JsonTypeName("TaskTypeDetails")
@JsonSubTypes({
@JsonSubTypes.Type(name = "AutomationRunbookTaskDetails", value = AutomationRunbookTaskDetails.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestFailoverJobDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestFailoverJobDetails.java
index 4258ebd5c360..3d1328651c8b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestFailoverJobDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestFailoverJobDetails.java
@@ -16,7 +16,7 @@
/**
* This class represents the details for a test failover job.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = TestFailoverJobDetails.class)
@JsonTypeName("TestFailoverJobDetails")
public class TestFailoverJobDetails extends JobDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestMigrateProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestMigrateProviderSpecificInput.java
index b5148dd14523..58a237146634 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestMigrateProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/TestMigrateProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Test migrate provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = TestMigrateProviderSpecificInput.class)
@JsonTypeName("TestMigrateProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtTestMigrateInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateMigrationItemProviderSpecificInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateMigrationItemProviderSpecificInput.java
index 004d411271c1..d68e488d80f9 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateMigrationItemProviderSpecificInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateMigrationItemProviderSpecificInput.java
@@ -15,7 +15,7 @@
/**
* Update migration item provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = UpdateMigrationItemProviderSpecificInput.class)
@JsonTypeName("UpdateMigrationItemProviderSpecificInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "VMwareCbt", value = VMwareCbtUpdateMigrationItemInput.class)
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateReplicationProtectedItemProviderInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateReplicationProtectedItemProviderInput.java
index 57fa2d093ec9..94ea23e27a8d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateReplicationProtectedItemProviderInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/UpdateReplicationProtectedItemProviderInput.java
@@ -15,7 +15,7 @@
/**
* Update replication protected item provider specific input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = UpdateReplicationProtectedItemProviderInput.class)
@JsonTypeName("UpdateReplicationProtectedItemProviderInput")
@JsonSubTypes({
@JsonSubTypes.Type(name = "A2A", value = A2AUpdateReplicationProtectedItemInput.class),
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerCreationInput.java
index f6268b80bdb5..9a1d4dce4cdd 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerCreationInput.java
@@ -14,7 +14,7 @@
/**
* VMwareCbt container creation input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
-@JsonTypeName("6c7da455-506f-43ff-a16a-8eb101aebb70")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtContainerCreationInput.class)
+@JsonTypeName("VMwareCbt")
public class VMwareCbtContainerCreationInput extends ReplicationProviderSpecificContainerCreationInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerMappingInput.java
index 3ad43edf5e57..ce69d51660c0 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtContainerMappingInput.java
@@ -15,7 +15,7 @@
/**
* VMwareCbt container mapping input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtContainerMappingInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtContainerMappingInput extends ReplicationProviderSpecificContainerMappingInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtDiskInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtDiskInput.java
index 12a0781a08fe..042ffd2668aa 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtDiskInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtDiskInput.java
@@ -45,6 +45,12 @@ public class VMwareCbtDiskInput {
@JsonProperty(value = "diskType")
private DiskAccountType diskType;
+ /**
+ * The DiskEncryptionSet ARM Id.
+ */
+ @JsonProperty(value = "diskEncryptionSetId")
+ private String diskEncryptionSetId;
+
/**
* Get the disk Id.
*
@@ -145,4 +151,24 @@ public VMwareCbtDiskInput withDiskType(DiskAccountType diskType) {
return this;
}
+ /**
+ * Get the DiskEncryptionSet ARM Id.
+ *
+ * @return the diskEncryptionSetId value
+ */
+ public String diskEncryptionSetId() {
+ return this.diskEncryptionSetId;
+ }
+
+ /**
+ * Set the DiskEncryptionSet ARM Id.
+ *
+ * @param diskEncryptionSetId the diskEncryptionSetId value to set
+ * @return the VMwareCbtDiskInput object itself.
+ */
+ public VMwareCbtDiskInput withDiskEncryptionSetId(String diskEncryptionSetId) {
+ this.diskEncryptionSetId = diskEncryptionSetId;
+ return this;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEnableMigrationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEnableMigrationInput.java
index 8062e685151f..2ef6d7059bc8 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEnableMigrationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEnableMigrationInput.java
@@ -16,7 +16,7 @@
/**
* VMwareCbt specific enable migration input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtEnableMigrationInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtEnableMigrationInput extends EnableMigrationProviderSpecificInput {
/**
@@ -86,12 +86,24 @@ public class VMwareCbtEnableMigrationInput extends EnableMigrationProviderSpecif
@JsonProperty(value = "targetAvailabilitySetId")
private String targetAvailabilitySetId;
+ /**
+ * The target availability zone.
+ */
+ @JsonProperty(value = "targetAvailabilityZone")
+ private String targetAvailabilityZone;
+
/**
* The target boot diagnostics storage account ARM Id.
*/
@JsonProperty(value = "targetBootDiagnosticsStorageAccountId")
private String targetBootDiagnosticsStorageAccountId;
+ /**
+ * A value indicating whether auto resync is to be done.
+ */
+ @JsonProperty(value = "performAutoResync")
+ private String performAutoResync;
+
/**
* Get the ARM Id of the VM discovered in VMware.
*
@@ -312,6 +324,26 @@ public VMwareCbtEnableMigrationInput withTargetAvailabilitySetId(String targetAv
return this;
}
+ /**
+ * Get the target availability zone.
+ *
+ * @return the targetAvailabilityZone value
+ */
+ public String targetAvailabilityZone() {
+ return this.targetAvailabilityZone;
+ }
+
+ /**
+ * Set the target availability zone.
+ *
+ * @param targetAvailabilityZone the targetAvailabilityZone value to set
+ * @return the VMwareCbtEnableMigrationInput object itself.
+ */
+ public VMwareCbtEnableMigrationInput withTargetAvailabilityZone(String targetAvailabilityZone) {
+ this.targetAvailabilityZone = targetAvailabilityZone;
+ return this;
+ }
+
/**
* Get the target boot diagnostics storage account ARM Id.
*
@@ -332,4 +364,24 @@ public VMwareCbtEnableMigrationInput withTargetBootDiagnosticsStorageAccountId(S
return this;
}
+ /**
+ * Get a value indicating whether auto resync is to be done.
+ *
+ * @return the performAutoResync value
+ */
+ public String performAutoResync() {
+ return this.performAutoResync;
+ }
+
+ /**
+ * Set a value indicating whether auto resync is to be done.
+ *
+ * @param performAutoResync the performAutoResync value to set
+ * @return the VMwareCbtEnableMigrationInput object itself.
+ */
+ public VMwareCbtEnableMigrationInput withPerformAutoResync(String performAutoResync) {
+ this.performAutoResync = performAutoResync;
+ return this;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEventDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEventDetails.java
new file mode 100644
index 000000000000..e7fdc86de757
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtEventDetails.java
@@ -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.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * Event details for VMwareCbt provider.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtEventDetails.class)
+@JsonTypeName("VMwareCbt")
+public class VMwareCbtEventDetails extends EventProviderSpecificDetails {
+ /**
+ * The migration item name.
+ */
+ @JsonProperty(value = "migrationItemName", access = JsonProperty.Access.WRITE_ONLY)
+ private String migrationItemName;
+
+ /**
+ * Get the migration item name.
+ *
+ * @return the migrationItemName value
+ */
+ public String migrationItemName() {
+ return this.migrationItemName;
+ }
+
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrateInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrateInput.java
index 22292f77f166..bc41f2d305bc 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrateInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrateInput.java
@@ -15,7 +15,7 @@
/**
* VMwareCbt specific migrate input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtMigrateInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtMigrateInput extends MigrateProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrationDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrationDetails.java
index 49716b052645..984809649041 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrationDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtMigrationDetails.java
@@ -17,7 +17,7 @@
/**
* VMwareCbt provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtMigrationDetails.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtMigrationDetails extends MigrationProviderSpecificSettings {
/**
@@ -32,6 +32,18 @@ public class VMwareCbtMigrationDetails extends MigrationProviderSpecificSettings
@JsonProperty(value = "osType", access = JsonProperty.Access.WRITE_ONLY)
private String osType;
+ /**
+ * The firmware type.
+ */
+ @JsonProperty(value = "firmwareType", access = JsonProperty.Access.WRITE_ONLY)
+ private String firmwareType;
+
+ /**
+ * The target generation.
+ */
+ @JsonProperty(value = "targetGeneration", access = JsonProperty.Access.WRITE_ONLY)
+ private String targetGeneration;
+
/**
* License Type of the VM to be used.
*/
@@ -80,6 +92,12 @@ public class VMwareCbtMigrationDetails extends MigrationProviderSpecificSettings
@JsonProperty(value = "targetAvailabilitySetId")
private String targetAvailabilitySetId;
+ /**
+ * The target availability zone.
+ */
+ @JsonProperty(value = "targetAvailabilityZone")
+ private String targetAvailabilityZone;
+
/**
* The target boot diagnostics storage account ARM Id.
*/
@@ -116,6 +134,49 @@ public class VMwareCbtMigrationDetails extends MigrationProviderSpecificSettings
@JsonProperty(value = "lastRecoveryPointReceived", access = JsonProperty.Access.WRITE_ONLY)
private DateTime lastRecoveryPointReceived;
+ /**
+ * The last recovery point Id.
+ */
+ @JsonProperty(value = "lastRecoveryPointId", access = JsonProperty.Access.WRITE_ONLY)
+ private String lastRecoveryPointId;
+
+ /**
+ * The initial seeding progress percentage.
+ */
+ @JsonProperty(value = "initialSeedingProgressPercentage", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer initialSeedingProgressPercentage;
+
+ /**
+ * The migration progress percentage.
+ */
+ @JsonProperty(value = "migrationProgressPercentage", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer migrationProgressPercentage;
+
+ /**
+ * The resync progress percentage.
+ */
+ @JsonProperty(value = "resyncProgressPercentage", access = JsonProperty.Access.WRITE_ONLY)
+ private Integer resyncProgressPercentage;
+
+ /**
+ * A value indicating whether resync is required.
+ */
+ @JsonProperty(value = "resyncRequired", access = JsonProperty.Access.WRITE_ONLY)
+ private String resyncRequired;
+
+ /**
+ * The resync state. Possible values include: 'None',
+ * 'PreparedForResynchronization', 'StartedResynchronization'.
+ */
+ @JsonProperty(value = "resyncState", access = JsonProperty.Access.WRITE_ONLY)
+ private ResyncState resyncState;
+
+ /**
+ * A value indicating whether auto resync is to be done.
+ */
+ @JsonProperty(value = "performAutoResync")
+ private String performAutoResync;
+
/**
* Get the ARM Id of the VM discovered in VMware.
*
@@ -134,6 +195,24 @@ public String osType() {
return this.osType;
}
+ /**
+ * Get the firmware type.
+ *
+ * @return the firmwareType value
+ */
+ public String firmwareType() {
+ return this.firmwareType;
+ }
+
+ /**
+ * Get the target generation.
+ *
+ * @return the targetGeneration value
+ */
+ public String targetGeneration() {
+ return this.targetGeneration;
+ }
+
/**
* Get license Type of the VM to be used.
*
@@ -261,6 +340,26 @@ public VMwareCbtMigrationDetails withTargetAvailabilitySetId(String targetAvaila
return this;
}
+ /**
+ * Get the target availability zone.
+ *
+ * @return the targetAvailabilityZone value
+ */
+ public String targetAvailabilityZone() {
+ return this.targetAvailabilityZone;
+ }
+
+ /**
+ * Set the target availability zone.
+ *
+ * @param targetAvailabilityZone the targetAvailabilityZone value to set
+ * @return the VMwareCbtMigrationDetails object itself.
+ */
+ public VMwareCbtMigrationDetails withTargetAvailabilityZone(String targetAvailabilityZone) {
+ this.targetAvailabilityZone = targetAvailabilityZone;
+ return this;
+ }
+
/**
* Get the target boot diagnostics storage account ARM Id.
*
@@ -359,4 +458,78 @@ public DateTime lastRecoveryPointReceived() {
return this.lastRecoveryPointReceived;
}
+ /**
+ * Get the last recovery point Id.
+ *
+ * @return the lastRecoveryPointId value
+ */
+ public String lastRecoveryPointId() {
+ return this.lastRecoveryPointId;
+ }
+
+ /**
+ * Get the initial seeding progress percentage.
+ *
+ * @return the initialSeedingProgressPercentage value
+ */
+ public Integer initialSeedingProgressPercentage() {
+ return this.initialSeedingProgressPercentage;
+ }
+
+ /**
+ * Get the migration progress percentage.
+ *
+ * @return the migrationProgressPercentage value
+ */
+ public Integer migrationProgressPercentage() {
+ return this.migrationProgressPercentage;
+ }
+
+ /**
+ * Get the resync progress percentage.
+ *
+ * @return the resyncProgressPercentage value
+ */
+ public Integer resyncProgressPercentage() {
+ return this.resyncProgressPercentage;
+ }
+
+ /**
+ * Get a value indicating whether resync is required.
+ *
+ * @return the resyncRequired value
+ */
+ public String resyncRequired() {
+ return this.resyncRequired;
+ }
+
+ /**
+ * Get the resync state. Possible values include: 'None', 'PreparedForResynchronization', 'StartedResynchronization'.
+ *
+ * @return the resyncState value
+ */
+ public ResyncState resyncState() {
+ return this.resyncState;
+ }
+
+ /**
+ * Get a value indicating whether auto resync is to be done.
+ *
+ * @return the performAutoResync value
+ */
+ public String performAutoResync() {
+ return this.performAutoResync;
+ }
+
+ /**
+ * Set a value indicating whether auto resync is to be done.
+ *
+ * @param performAutoResync the performAutoResync value to set
+ * @return the VMwareCbtMigrationDetails object itself.
+ */
+ public VMwareCbtMigrationDetails withPerformAutoResync(String performAutoResync) {
+ this.performAutoResync = performAutoResync;
+ return this;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtPolicyCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtPolicyCreationInput.java
index 1f43858e42a9..ba776fda5415 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtPolicyCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtPolicyCreationInput.java
@@ -15,7 +15,7 @@
/**
* VMware Cbt policy creation input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtPolicyCreationInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtPolicyCreationInput extends PolicyProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectedDiskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectedDiskDetails.java
index 4bff16cc327f..1854401e7dfa 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectedDiskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectedDiskDetails.java
@@ -56,6 +56,12 @@ public class VMwareCbtProtectedDiskDetails {
@JsonProperty(value = "logStorageAccountSasSecretName", access = JsonProperty.Access.WRITE_ONLY)
private String logStorageAccountSasSecretName;
+ /**
+ * The DiskEncryptionSet ARM Id.
+ */
+ @JsonProperty(value = "diskEncryptionSetId", access = JsonProperty.Access.WRITE_ONLY)
+ private String diskEncryptionSetId;
+
/**
* The ARM Id of the seed managed disk.
*/
@@ -73,7 +79,7 @@ public class VMwareCbtProtectedDiskDetails {
* 'StandardSSD_LRS'.
*/
@JsonProperty(value = "diskType")
- private DiskType diskType;
+ private DiskAccountType diskType;
/**
* Get the disk id.
@@ -138,6 +144,15 @@ public String logStorageAccountSasSecretName() {
return this.logStorageAccountSasSecretName;
}
+ /**
+ * Get the DiskEncryptionSet ARM Id.
+ *
+ * @return the diskEncryptionSetId value
+ */
+ public String diskEncryptionSetId() {
+ return this.diskEncryptionSetId;
+ }
+
/**
* Get the ARM Id of the seed managed disk.
*
@@ -161,7 +176,7 @@ public String targetManagedDiskId() {
*
* @return the diskType value
*/
- public DiskType diskType() {
+ public DiskAccountType diskType() {
return this.diskType;
}
@@ -171,7 +186,7 @@ public DiskType diskType() {
* @param diskType the diskType value to set
* @return the VMwareCbtProtectedDiskDetails object itself.
*/
- public VMwareCbtProtectedDiskDetails withDiskType(DiskType diskType) {
+ public VMwareCbtProtectedDiskDetails withDiskType(DiskAccountType diskType) {
this.diskType = diskType;
return this;
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectionContainerMappingDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectionContainerMappingDetails.java
index fac5b44aec52..f487f3a8ee40 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectionContainerMappingDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtProtectionContainerMappingDetails.java
@@ -15,7 +15,7 @@
/**
* VMwareCbt provider specific container mapping details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtProtectionContainerMappingDetails.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtProtectionContainerMappingDetails extends ProtectionContainerMappingProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtResyncInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtResyncInput.java
new file mode 100644
index 000000000000..cbb9c78842ed
--- /dev/null
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtResyncInput.java
@@ -0,0 +1,47 @@
+/**
+ * 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.
+ */
+
+package com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/**
+ * VMwareCbt specific resync input.
+ */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtResyncInput.class)
+@JsonTypeName("VMwareCbt")
+public class VMwareCbtResyncInput extends ResyncProviderSpecificInput {
+ /**
+ * A value indicating whether CBT is to be reset.
+ */
+ @JsonProperty(value = "skipCbtReset", required = true)
+ private String skipCbtReset;
+
+ /**
+ * Get a value indicating whether CBT is to be reset.
+ *
+ * @return the skipCbtReset value
+ */
+ public String skipCbtReset() {
+ return this.skipCbtReset;
+ }
+
+ /**
+ * Set a value indicating whether CBT is to be reset.
+ *
+ * @param skipCbtReset the skipCbtReset value to set
+ * @return the VMwareCbtResyncInput object itself.
+ */
+ public VMwareCbtResyncInput withSkipCbtReset(String skipCbtReset) {
+ this.skipCbtReset = skipCbtReset;
+ return this;
+ }
+
+}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtTestMigrateInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtTestMigrateInput.java
index a64149096888..053a726b6b15 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtTestMigrateInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtTestMigrateInput.java
@@ -15,7 +15,7 @@
/**
* VMwareCbt specific test migrate input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtTestMigrateInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtTestMigrateInput extends TestMigrateProviderSpecificInput {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtUpdateMigrationItemInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtUpdateMigrationItemInput.java
index 7d62abc3e8ed..6bb5be44ef7b 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtUpdateMigrationItemInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareCbtUpdateMigrationItemInput.java
@@ -16,7 +16,7 @@
/**
* VMwareCbt specific update migration item input.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareCbtUpdateMigrationItemInput.class)
@JsonTypeName("VMwareCbt")
public class VMwareCbtUpdateMigrationItemInput extends UpdateMigrationItemProviderSpecificInput {
/**
@@ -43,6 +43,12 @@ public class VMwareCbtUpdateMigrationItemInput extends UpdateMigrationItemProvid
@JsonProperty(value = "targetAvailabilitySetId")
private String targetAvailabilitySetId;
+ /**
+ * The target availability zone.
+ */
+ @JsonProperty(value = "targetAvailabilityZone")
+ private String targetAvailabilityZone;
+
/**
* The target boot diagnostics storage account ARM Id.
*/
@@ -68,6 +74,12 @@ public class VMwareCbtUpdateMigrationItemInput extends UpdateMigrationItemProvid
@JsonProperty(value = "licenseType")
private LicenseType licenseType;
+ /**
+ * A value indicating whether auto resync is to be done.
+ */
+ @JsonProperty(value = "performAutoResync")
+ private String performAutoResync;
+
/**
* Get the target VM name.
*
@@ -148,6 +160,26 @@ public VMwareCbtUpdateMigrationItemInput withTargetAvailabilitySetId(String targ
return this;
}
+ /**
+ * Get the target availability zone.
+ *
+ * @return the targetAvailabilityZone value
+ */
+ public String targetAvailabilityZone() {
+ return this.targetAvailabilityZone;
+ }
+
+ /**
+ * Set the target availability zone.
+ *
+ * @param targetAvailabilityZone the targetAvailabilityZone value to set
+ * @return the VMwareCbtUpdateMigrationItemInput object itself.
+ */
+ public VMwareCbtUpdateMigrationItemInput withTargetAvailabilityZone(String targetAvailabilityZone) {
+ this.targetAvailabilityZone = targetAvailabilityZone;
+ return this;
+ }
+
/**
* Get the target boot diagnostics storage account ARM Id.
*
@@ -228,4 +260,24 @@ public VMwareCbtUpdateMigrationItemInput withLicenseType(LicenseType licenseType
return this;
}
+ /**
+ * Get a value indicating whether auto resync is to be done.
+ *
+ * @return the performAutoResync value
+ */
+ public String performAutoResync() {
+ return this.performAutoResync;
+ }
+
+ /**
+ * Set a value indicating whether auto resync is to be done.
+ *
+ * @param performAutoResync the performAutoResync value to set
+ * @return the VMwareCbtUpdateMigrationItemInput object itself.
+ */
+ public VMwareCbtUpdateMigrationItemInput withPerformAutoResync(String performAutoResync) {
+ this.performAutoResync = performAutoResync;
+ return this;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareDetails.java
index 546d8830b749..0f3787241e0d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareDetails.java
@@ -17,7 +17,7 @@
/**
* Store the fabric details specific to the VMware fabric.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareDetails.class)
@JsonTypeName("VMware")
public class VMwareDetails extends FabricSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricCreationInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricCreationInput.java
index a6c2028382ab..1a01a14ee133 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricCreationInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricCreationInput.java
@@ -15,15 +15,21 @@
/**
* VMwareV2 fabric provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareV2FabricCreationInput.class)
@JsonTypeName("VMwareV2")
public class VMwareV2FabricCreationInput extends FabricSpecificCreationInput {
/**
* The ARM Id of the VMware site.
*/
- @JsonProperty(value = "vmwareSiteId", required = true)
+ @JsonProperty(value = "vmwareSiteId")
private String vmwareSiteId;
+ /**
+ * The ARM Id of the physical site.
+ */
+ @JsonProperty(value = "physicalSiteId")
+ private String physicalSiteId;
+
/**
* The ARM Id of the migration solution.
*/
@@ -50,6 +56,26 @@ public VMwareV2FabricCreationInput withVmwareSiteId(String vmwareSiteId) {
return this;
}
+ /**
+ * Get the ARM Id of the physical site.
+ *
+ * @return the physicalSiteId value
+ */
+ public String physicalSiteId() {
+ return this.physicalSiteId;
+ }
+
+ /**
+ * Set the ARM Id of the physical site.
+ *
+ * @param physicalSiteId the physicalSiteId value to set
+ * @return the VMwareV2FabricCreationInput object itself.
+ */
+ public VMwareV2FabricCreationInput withPhysicalSiteId(String physicalSiteId) {
+ this.physicalSiteId = physicalSiteId;
+ return this;
+ }
+
/**
* Get the ARM Id of the migration solution.
*
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricSpecificDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricSpecificDetails.java
index 1ea4cfb47fc7..bb17be68600c 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricSpecificDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareV2FabricSpecificDetails.java
@@ -15,7 +15,7 @@
/**
* VMwareV2 fabric specific details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareV2FabricSpecificDetails.class)
@JsonTypeName("VMwareV2")
public class VMwareV2FabricSpecificDetails extends FabricSpecificDetails {
/**
@@ -24,6 +24,12 @@ public class VMwareV2FabricSpecificDetails extends FabricSpecificDetails {
@JsonProperty(value = "vmwareSiteId", access = JsonProperty.Access.WRITE_ONLY)
private String vmwareSiteId;
+ /**
+ * The ARM Id of the physical site.
+ */
+ @JsonProperty(value = "physicalSiteId", access = JsonProperty.Access.WRITE_ONLY)
+ private String physicalSiteId;
+
/**
* The Migration solution ARM Id.
*/
@@ -36,6 +42,12 @@ public class VMwareV2FabricSpecificDetails extends FabricSpecificDetails {
@JsonProperty(value = "serviceEndpoint", access = JsonProperty.Access.WRITE_ONLY)
private String serviceEndpoint;
+ /**
+ * The service resource Id.
+ */
+ @JsonProperty(value = "serviceResourceId", access = JsonProperty.Access.WRITE_ONLY)
+ private String serviceResourceId;
+
/**
* Get the ARM Id of the VMware site.
*
@@ -45,6 +57,15 @@ public String vmwareSiteId() {
return this.vmwareSiteId;
}
+ /**
+ * Get the ARM Id of the physical site.
+ *
+ * @return the physicalSiteId value
+ */
+ public String physicalSiteId() {
+ return this.physicalSiteId;
+ }
+
/**
* Get the Migration solution ARM Id.
*
@@ -63,4 +84,13 @@ public String serviceEndpoint() {
return this.serviceEndpoint;
}
+ /**
+ * Get the service resource Id.
+ *
+ * @return the serviceResourceId value
+ */
+ public String serviceResourceId() {
+ return this.serviceResourceId;
+ }
+
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareVirtualMachineDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareVirtualMachineDetails.java
index 34c91b10656b..fead599263a1 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareVirtualMachineDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VMwareVirtualMachineDetails.java
@@ -16,7 +16,7 @@
/**
* VMware provider specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VMwareVirtualMachineDetails.class)
@JsonTypeName("VMwareVirtualMachine")
public class VMwareVirtualMachineDetails extends ConfigurationSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VirtualMachineTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VirtualMachineTaskDetails.java
index b1ebf0ad5649..fbf4e4b48e7d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VirtualMachineTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VirtualMachineTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the virtual machine task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VirtualMachineTaskDetails.class)
@JsonTypeName("VirtualMachineTaskDetails")
public class VirtualMachineTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmNicUpdatesTaskDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmNicUpdatesTaskDetails.java
index 479345a71dcb..e7ccc0f1e357 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmNicUpdatesTaskDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmNicUpdatesTaskDetails.java
@@ -15,7 +15,7 @@
/**
* This class represents the vm NicUpdates task details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmNicUpdatesTaskDetails.class)
@JsonTypeName("VmNicUpdatesTaskDetails")
public class VmNicUpdatesTaskDetails extends TaskTypeDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmDetails.java
index 68a533bdaedd..5010e102ef74 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmDetails.java
@@ -14,7 +14,7 @@
/**
* VMM fabric specific details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmDetails.class)
@JsonTypeName("VMM")
public class VmmDetails extends FabricSpecificDetails {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureCreateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureCreateNetworkMappingInput.java
index a056a3d5a8d9..696621af833d 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureCreateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureCreateNetworkMappingInput.java
@@ -15,7 +15,7 @@
* Create network mappings input properties/behavior specific to Vmm to Azure
* Network mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToAzureCreateNetworkMappingInput.class)
@JsonTypeName("VmmToAzure")
public class VmmToAzureCreateNetworkMappingInput extends FabricSpecificCreateNetworkMappingInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureNetworkMappingSettings.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureNetworkMappingSettings.java
index f29358d71404..5ae7dee88829 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureNetworkMappingSettings.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureNetworkMappingSettings.java
@@ -14,7 +14,7 @@
/**
* E2A Network Mapping fabric specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToAzureNetworkMappingSettings.class)
@JsonTypeName("VmmToAzure")
public class VmmToAzureNetworkMappingSettings extends NetworkMappingFabricSpecificSettings {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureUpdateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureUpdateNetworkMappingInput.java
index 0e42ac5ef867..c640ca7d5986 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureUpdateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToAzureUpdateNetworkMappingInput.java
@@ -14,7 +14,7 @@
/**
* Update network mappings input properties/behavior specific to vmm to azure.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToAzureUpdateNetworkMappingInput.class)
@JsonTypeName("VmmToAzure")
public class VmmToAzureUpdateNetworkMappingInput extends FabricSpecificUpdateNetworkMappingInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmCreateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmCreateNetworkMappingInput.java
index 0431eb03b2e3..8d6d91c4840a 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmCreateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmCreateNetworkMappingInput.java
@@ -15,7 +15,7 @@
* Create network mappings input properties/behavior specific to vmm to vmm
* Network mapping.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToVmmCreateNetworkMappingInput.class)
@JsonTypeName("VmmToVmm")
public class VmmToVmmCreateNetworkMappingInput extends FabricSpecificCreateNetworkMappingInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmNetworkMappingSettings.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmNetworkMappingSettings.java
index 5ac13a94e9dd..6fb41626c118 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmNetworkMappingSettings.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmNetworkMappingSettings.java
@@ -14,7 +14,7 @@
/**
* E2E Network Mapping fabric specific settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToVmmNetworkMappingSettings.class)
@JsonTypeName("VmmToVmm")
public class VmmToVmmNetworkMappingSettings extends NetworkMappingFabricSpecificSettings {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmUpdateNetworkMappingInput.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmUpdateNetworkMappingInput.java
index c3e17206ae57..c7316e289b94 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmUpdateNetworkMappingInput.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmToVmmUpdateNetworkMappingInput.java
@@ -14,7 +14,7 @@
/**
* Update network mappings input properties/behavior specific to vmm to vmm.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmToVmmUpdateNetworkMappingInput.class)
@JsonTypeName("VmmToVmm")
public class VmmToVmmUpdateNetworkMappingInput extends FabricSpecificUpdateNetworkMappingInput {
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmVirtualMachineDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmVirtualMachineDetails.java
index f8fbb9eb1ba1..8a63977c8b94 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmVirtualMachineDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmmVirtualMachineDetails.java
@@ -16,7 +16,7 @@
/**
* VMM fabric provider specific VM settings.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmmVirtualMachineDetails.class)
@JsonTypeName("VmmVirtualMachine")
public class VmmVirtualMachineDetails extends ConfigurationSettings {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmwareCbtPolicyDetails.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmwareCbtPolicyDetails.java
index 81bf2c5d6821..447d2de39839 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmwareCbtPolicyDetails.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/VmwareCbtPolicyDetails.java
@@ -15,7 +15,7 @@
/**
* VMware Cbt specific policy details.
*/
-@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType")
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "instanceType", defaultImpl = VmwareCbtPolicyDetails.class)
@JsonTypeName("VMwareCbt")
public class VmwareCbtPolicyDetails extends PolicyProviderSpecificDetails {
/**
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/MigrationRecoveryPointsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/MigrationRecoveryPointsImpl.java
index bea06f712436..51ae4205d217 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/MigrationRecoveryPointsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/MigrationRecoveryPointsImpl.java
@@ -54,10 +54,14 @@ public MigrationRecoveryPoint call(MigrationRecoveryPointInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String migrationItemName, String migrationRecoveryPointName) {
MigrationRecoveryPointsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, migrationItemName, migrationRecoveryPointName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public MigrationRecoveryPoint call(MigrationRecoveryPointInner inner) {
- return wrapModel(inner);
+ public Observable call(MigrationRecoveryPointInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((MigrationRecoveryPoint)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/RecoveryPointsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/RecoveryPointsImpl.java
index 8b4a8fc8a660..97898bb4028e 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/RecoveryPointsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/RecoveryPointsImpl.java
@@ -54,10 +54,14 @@ public RecoveryPoint call(RecoveryPointInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String replicatedProtectedItemName, String recoveryPointName) {
RecoveryPointsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, replicatedProtectedItemName, recoveryPointName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public RecoveryPoint call(RecoveryPointInner inner) {
- return wrapModel(inner);
+ public Observable call(RecoveryPointInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((RecoveryPoint)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationAlertSettingsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationAlertSettingsImpl.java
index 48820c65d3f7..572b30674118 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationAlertSettingsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationAlertSettingsImpl.java
@@ -63,10 +63,14 @@ public Alert call(AlertInner inner) {
public Observable getAsync(String alertSettingName) {
ReplicationAlertSettingsInner client = this.inner();
return client.getAsync(alertSettingName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Alert call(AlertInner inner) {
- return wrapModel(inner);
+ public Observable call(AlertInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Alert)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationEventsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationEventsImpl.java
index a1f322c6eb6b..2a3a0c202fa3 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationEventsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationEventsImpl.java
@@ -54,10 +54,14 @@ public Event call(EventInner inner) {
public Observable getAsync(String eventName) {
ReplicationEventsInner client = this.inner();
return client.getAsync(eventName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Event call(EventInner inner) {
- return wrapModel(inner);
+ public Observable call(EventInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Event)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationFabricsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationFabricsImpl.java
index 7afa9e4f412a..c7dce9cf45ac 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationFabricsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationFabricsImpl.java
@@ -112,10 +112,14 @@ public Fabric call(FabricInner inner) {
public Observable getAsync(String fabricName) {
ReplicationFabricsInner client = this.inner();
return client.getAsync(fabricName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Fabric call(FabricInner inner) {
- return wrapModel(inner);
+ public Observable call(FabricInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Fabric)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationJobsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationJobsImpl.java
index 5892f64c026e..865e2b6671a7 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationJobsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationJobsImpl.java
@@ -103,10 +103,14 @@ public Job call(JobInner inner) {
public Observable getAsync(String jobName) {
ReplicationJobsInner client = this.inner();
return client.getAsync(jobName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Job call(JobInner inner) {
- return wrapModel(inner);
+ public Observable call(JobInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Job)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationLogicalNetworksImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationLogicalNetworksImpl.java
index 4039e7bd3168..d655bed7c5ca 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationLogicalNetworksImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationLogicalNetworksImpl.java
@@ -54,10 +54,14 @@ public LogicalNetwork call(LogicalNetworkInner inner) {
public Observable getAsync(String fabricName, String logicalNetworkName) {
ReplicationLogicalNetworksInner client = this.inner();
return client.getAsync(fabricName, logicalNetworkName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public LogicalNetwork call(LogicalNetworkInner inner) {
- return wrapModel(inner);
+ public Observable call(LogicalNetworkInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((LogicalNetwork)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsImpl.java
index cd104d0283d1..589de0f4f508 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsImpl.java
@@ -17,6 +17,7 @@
import com.microsoft.azure.Page;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.MigrationItem;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.MigrateInputProperties;
+import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ResyncInputProperties;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.TestMigrateInputProperties;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.TestMigrateCleanupInputProperties;
@@ -57,6 +58,18 @@ public MigrationItem call(MigrationItemInner inner) {
});
}
+ @Override
+ public Observable resyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ ReplicationMigrationItemsInner client = this.inner();
+ return client.resyncAsync(fabricName, protectionContainerName, migrationItemName, properties)
+ .map(new Func1() {
+ @Override
+ public MigrationItem call(MigrationItemInner inner) {
+ return new MigrationItemImpl(inner, manager());
+ }
+ });
+ }
+
@Override
public Observable testMigrateAsync(String fabricName, String protectionContainerName, String migrationItemName, TestMigrateInputProperties properties) {
ReplicationMigrationItemsInner client = this.inner();
@@ -121,10 +134,14 @@ public MigrationItem call(MigrationItemInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String migrationItemName) {
ReplicationMigrationItemsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, migrationItemName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public MigrationItem call(MigrationItemInner inner) {
- return wrapModel(inner);
+ public Observable call(MigrationItemInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((MigrationItem)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsInner.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsInner.java
index b1f6659ae2d6..5b2c44f65ac7 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsInner.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationMigrationItemsInner.java
@@ -17,6 +17,8 @@
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.EnableMigrationInputProperties;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.MigrateInput;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.MigrateInputProperties;
+import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ResyncInput;
+import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ResyncInputProperties;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.TestMigrateCleanupInput;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.TestMigrateCleanupInputProperties;
import com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.TestMigrateInput;
@@ -113,6 +115,14 @@ interface ReplicationMigrationItemsService {
@POST("Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate")
Observable> beginMigrate(@Path("resourceName") String resourceName, @Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("fabricName") String fabricName, @Path("protectionContainerName") String protectionContainerName, @Path("migrationItemName") String migrationItemName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Body MigrateInput migrateInput, @Header("User-Agent") String userAgent);
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ReplicationMigrationItems resync" })
+ @POST("Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync")
+ Observable> resync(@Path("resourceName") String resourceName, @Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("fabricName") String fabricName, @Path("protectionContainerName") String protectionContainerName, @Path("migrationItemName") String migrationItemName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Body ResyncInput input, @Header("User-Agent") String userAgent);
+
+ @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ReplicationMigrationItems beginResync" })
+ @POST("Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync")
+ Observable> beginResync(@Path("resourceName") String resourceName, @Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("fabricName") String fabricName, @Path("protectionContainerName") String protectionContainerName, @Path("migrationItemName") String migrationItemName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Body ResyncInput input, @Header("User-Agent") String userAgent);
+
@Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.recoveryservices.siterecovery.v2018_01_10.ReplicationMigrationItems testMigrate" })
@POST("Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate")
Observable> testMigrate(@Path("resourceName") String resourceName, @Path("resourceGroupName") String resourceGroupName, @Path("subscriptionId") String subscriptionId, @Path("fabricName") String fabricName, @Path("protectionContainerName") String protectionContainerName, @Path("migrationItemName") String migrationItemName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Body TestMigrateInput testMigrateInput, @Header("User-Agent") String userAgent);
@@ -1564,6 +1574,216 @@ private ServiceResponse beginMigrateDelegate(Response resyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(resyncWithServiceResponseAsync(fabricName, protectionContainerName, migrationItemName, properties), serviceCallback);
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable resyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ return resyncWithServiceResponseAsync(fabricName, protectionContainerName, migrationItemName, properties).map(new Func1, MigrationItemInner>() {
+ @Override
+ public MigrationItemInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable for the request
+ */
+ public Observable> resyncWithServiceResponseAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ if (this.client.resourceName() == null) {
+ throw new IllegalArgumentException("Parameter this.client.resourceName() is required and cannot be null.");
+ }
+ if (this.client.resourceGroupName() == null) {
+ throw new IllegalArgumentException("Parameter this.client.resourceGroupName() is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (fabricName == null) {
+ throw new IllegalArgumentException("Parameter fabricName is required and cannot be null.");
+ }
+ if (protectionContainerName == null) {
+ throw new IllegalArgumentException("Parameter protectionContainerName is required and cannot be null.");
+ }
+ if (migrationItemName == null) {
+ throw new IllegalArgumentException("Parameter migrationItemName is required and cannot be null.");
+ }
+ if (this.client.apiVersion() == null) {
+ throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
+ }
+ if (properties == null) {
+ throw new IllegalArgumentException("Parameter properties is required and cannot be null.");
+ }
+ Validator.validate(properties);
+ ResyncInput input = new ResyncInput();
+ input.withProperties(properties);
+ Observable> observable = service.resync(this.client.resourceName(), this.client.resourceGroupName(), this.client.subscriptionId(), fabricName, protectionContainerName, migrationItemName, this.client.apiVersion(), this.client.acceptLanguage(), input, this.client.userAgent());
+ return client.getAzureClient().getPostOrDeleteResultAsync(observable, new TypeToken() { }.getType());
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @throws CloudException thrown if the request is rejected by server
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
+ * @return the MigrationItemInner object if successful.
+ */
+ public MigrationItemInner beginResync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ return beginResyncWithServiceResponseAsync(fabricName, protectionContainerName, migrationItemName, properties).toBlocking().single().body();
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the {@link ServiceFuture} object
+ */
+ public ServiceFuture beginResyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties, final ServiceCallback serviceCallback) {
+ return ServiceFuture.fromResponse(beginResyncWithServiceResponseAsync(fabricName, protectionContainerName, migrationItemName, properties), serviceCallback);
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the MigrationItemInner object
+ */
+ public Observable beginResyncAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ return beginResyncWithServiceResponseAsync(fabricName, protectionContainerName, migrationItemName, properties).map(new Func1, MigrationItemInner>() {
+ @Override
+ public MigrationItemInner call(ServiceResponse response) {
+ return response.body();
+ }
+ });
+ }
+
+ /**
+ * Resynchronizes replication.
+ * The operation to resynchronize replication of an ASR migration item.
+ *
+ * @param fabricName Fabric name.
+ * @param protectionContainerName Protection container name.
+ * @param migrationItemName Migration item name.
+ * @param properties Resync input properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation
+ * @return the observable to the MigrationItemInner object
+ */
+ public Observable> beginResyncWithServiceResponseAsync(String fabricName, String protectionContainerName, String migrationItemName, ResyncInputProperties properties) {
+ if (this.client.resourceName() == null) {
+ throw new IllegalArgumentException("Parameter this.client.resourceName() is required and cannot be null.");
+ }
+ if (this.client.resourceGroupName() == null) {
+ throw new IllegalArgumentException("Parameter this.client.resourceGroupName() is required and cannot be null.");
+ }
+ if (this.client.subscriptionId() == null) {
+ throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
+ }
+ if (fabricName == null) {
+ throw new IllegalArgumentException("Parameter fabricName is required and cannot be null.");
+ }
+ if (protectionContainerName == null) {
+ throw new IllegalArgumentException("Parameter protectionContainerName is required and cannot be null.");
+ }
+ if (migrationItemName == null) {
+ throw new IllegalArgumentException("Parameter migrationItemName is required and cannot be null.");
+ }
+ if (this.client.apiVersion() == null) {
+ throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
+ }
+ if (properties == null) {
+ throw new IllegalArgumentException("Parameter properties is required and cannot be null.");
+ }
+ Validator.validate(properties);
+ ResyncInput input = new ResyncInput();
+ input.withProperties(properties);
+ return service.beginResync(this.client.resourceName(), this.client.resourceGroupName(), this.client.subscriptionId(), fabricName, protectionContainerName, migrationItemName, this.client.apiVersion(), this.client.acceptLanguage(), input, this.client.userAgent())
+ .flatMap(new Func1, Observable>>() {
+ @Override
+ public Observable> call(Response response) {
+ try {
+ ServiceResponse clientResponse = beginResyncDelegate(response);
+ return Observable.just(clientResponse);
+ } catch (Throwable t) {
+ return Observable.error(t);
+ }
+ }
+ });
+ }
+
+ private ServiceResponse beginResyncDelegate(Response response) throws CloudException, IOException, IllegalArgumentException {
+ return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter())
+ .register(200, new TypeToken() { }.getType())
+ .register(202, new TypeToken() { }.getType())
+ .registerError(CloudException.class)
+ .build(response);
+ }
+
/**
* Test migrate item.
* The operation to initiate test migration of the item.
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworkMappingsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworkMappingsImpl.java
index 49799c89c5b7..a2f20afa8980 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworkMappingsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworkMappingsImpl.java
@@ -82,10 +82,14 @@ public NetworkMapping call(NetworkMappingInner inner) {
public Observable getAsync(String fabricName, String networkName, String networkMappingName) {
ReplicationNetworkMappingsInner client = this.inner();
return client.getAsync(fabricName, networkName, networkMappingName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public NetworkMapping call(NetworkMappingInner inner) {
- return wrapModel(inner);
+ public Observable call(NetworkMappingInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((NetworkMapping)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworksImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworksImpl.java
index dc11fe2060e9..25f1e2c0b387 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworksImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationNetworksImpl.java
@@ -72,10 +72,14 @@ public Network call(NetworkInner inner) {
public Observable getAsync(String fabricName, String networkName) {
ReplicationNetworksInner client = this.inner();
return client.getAsync(fabricName, networkName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Network call(NetworkInner inner) {
- return wrapModel(inner);
+ public Observable call(NetworkInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Network)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationPoliciesImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationPoliciesImpl.java
index 1860cccd3f64..1c855308ba80 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationPoliciesImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationPoliciesImpl.java
@@ -64,10 +64,14 @@ public Policy call(PolicyInner inner) {
public Observable getAsync(String policyName) {
ReplicationPoliciesInner client = this.inner();
return client.getAsync(policyName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public Policy call(PolicyInner inner) {
- return wrapModel(inner);
+ public Observable call(PolicyInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((Policy)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectableItemsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectableItemsImpl.java
index 9fa1b725b101..733db8b135b7 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectableItemsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectableItemsImpl.java
@@ -54,10 +54,14 @@ public ProtectableItem call(ProtectableItemInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String protectableItemName) {
ReplicationProtectableItemsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, protectableItemName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public ProtectableItem call(ProtectableItemInner inner) {
- return wrapModel(inner);
+ public Observable call(ProtectableItemInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((ProtectableItem)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectedItemsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectedItemsImpl.java
index 3120b5920e80..9eb4f6268d11 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectedItemsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectedItemsImpl.java
@@ -197,10 +197,14 @@ public ReplicationProtectedItem call(ReplicationProtectedItemInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String replicatedProtectedItemName) {
ReplicationProtectedItemsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, replicatedProtectedItemName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public ReplicationProtectedItem call(ReplicationProtectedItemInner inner) {
- return wrapModel(inner);
+ public Observable call(ReplicationProtectedItemInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((ReplicationProtectedItem)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainerMappingsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainerMappingsImpl.java
index 011d88db4c38..16848b3dc782 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainerMappingsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainerMappingsImpl.java
@@ -88,10 +88,14 @@ public ProtectionContainerMapping call(ProtectionContainerMappingInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName, String mappingName) {
ReplicationProtectionContainerMappingsInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName, mappingName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public ProtectionContainerMapping call(ProtectionContainerMappingInner inner) {
- return wrapModel(inner);
+ public Observable call(ProtectionContainerMappingInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((ProtectionContainerMapping)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainersImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainersImpl.java
index 93fca6e6d22e..f94dac106a80 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainersImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationProtectionContainersImpl.java
@@ -112,10 +112,14 @@ public ProtectionContainer call(ProtectionContainerInner inner) {
public Observable getAsync(String fabricName, String protectionContainerName) {
ReplicationProtectionContainersInner client = this.inner();
return client.getAsync(fabricName, protectionContainerName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public ProtectionContainer call(ProtectionContainerInner inner) {
- return wrapModel(inner);
+ public Observable call(ProtectionContainerInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((ProtectionContainer)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryPlansImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryPlansImpl.java
index 44ee8d8e6c6c..2c7bbf7a1692 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryPlansImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryPlansImpl.java
@@ -140,10 +140,14 @@ public RecoveryPlan call(RecoveryPlanInner inner) {
public Observable getAsync(String recoveryPlanName) {
ReplicationRecoveryPlansInner client = this.inner();
return client.getAsync(recoveryPlanName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public RecoveryPlan call(RecoveryPlanInner inner) {
- return wrapModel(inner);
+ public Observable call(RecoveryPlanInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((RecoveryPlan)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryServicesProvidersImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryServicesProvidersImpl.java
index 46908098e773..1169c7ed4016 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryServicesProvidersImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationRecoveryServicesProvidersImpl.java
@@ -100,10 +100,14 @@ public RecoveryServicesProvider call(RecoveryServicesProviderInner inner) {
public Observable getAsync(String fabricName, String providerName) {
ReplicationRecoveryServicesProvidersInner client = this.inner();
return client.getAsync(fabricName, providerName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public RecoveryServicesProvider call(RecoveryServicesProviderInner inner) {
- return wrapModel(inner);
+ public Observable call(RecoveryServicesProviderInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((RecoveryServicesProvider)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationMappingsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationMappingsImpl.java
index d3e10330aaa4..692017225372 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationMappingsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationMappingsImpl.java
@@ -82,10 +82,14 @@ public StorageClassificationMapping call(StorageClassificationMappingInner inner
public Observable getAsync(String fabricName, String storageClassificationName, String storageClassificationMappingName) {
ReplicationStorageClassificationMappingsInner client = this.inner();
return client.getAsync(fabricName, storageClassificationName, storageClassificationMappingName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public StorageClassificationMapping call(StorageClassificationMappingInner inner) {
- return wrapModel(inner);
+ public Observable call(StorageClassificationMappingInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((StorageClassificationMapping)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationsImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationsImpl.java
index 9e63970faf16..06c8089e3762 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationsImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationStorageClassificationsImpl.java
@@ -72,10 +72,14 @@ public StorageClassification call(StorageClassificationInner inner) {
public Observable getAsync(String fabricName, String storageClassificationName) {
ReplicationStorageClassificationsInner client = this.inner();
return client.getAsync(fabricName, storageClassificationName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public StorageClassification call(StorageClassificationInner inner) {
- return wrapModel(inner);
+ public Observable call(StorageClassificationInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((StorageClassification)wrapModel(inner));
+ }
}
});
}
diff --git a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationvCentersImpl.java b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationvCentersImpl.java
index 852d2e9b9fee..6dc476592713 100644
--- a/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationvCentersImpl.java
+++ b/sdk/recoveryservices.siterecovery/mgmt-v2018_01_10/src/main/java/com/microsoft/azure/management/recoveryservices/siterecovery/v2018_01_10/implementation/ReplicationvCentersImpl.java
@@ -82,10 +82,14 @@ public VCenter call(VCenterInner inner) {
public Observable getAsync(String fabricName, String vCenterName) {
ReplicationvCentersInner client = this.inner();
return client.getAsync(fabricName, vCenterName)
- .map(new Func1() {
+ .flatMap(new Func1>() {
@Override
- public VCenter call(VCenterInner inner) {
- return wrapModel(inner);
+ public Observable call(VCenterInner inner) {
+ if (inner == null) {
+ return Observable.empty();
+ } else {
+ return Observable.just((VCenter)wrapModel(inner));
+ }
}
});
}