/// <summary>
 /// Refreshes health summary of the vault.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <VaultHealthDetails> RefreshAsync(this IReplicationVaultHealthOperations operations, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.RefreshWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Initializes client properties.
 /// </summary>
 private void Initialize()
 {
     Operations = new Operations(this);
     ReplicationAlertSettings        = new ReplicationAlertSettingsOperations(this);
     ReplicationEvents               = new ReplicationEventsOperations(this);
     ReplicationFabrics              = new ReplicationFabricsOperations(this);
     ReplicationLogicalNetworks      = new ReplicationLogicalNetworksOperations(this);
     ReplicationNetworks             = new ReplicationNetworksOperations(this);
     ReplicationNetworkMappings      = new ReplicationNetworkMappingsOperations(this);
     ReplicationProtectionContainers = new ReplicationProtectionContainersOperations(this);
     ReplicationProtectableItems     = new ReplicationProtectableItemsOperations(this);
     ReplicationProtectedItems       = new ReplicationProtectedItemsOperations(this);
     RecoveryPoints     = new RecoveryPointsOperations(this);
     TargetComputeSizes = new TargetComputeSizesOperations(this);
     ReplicationProtectionContainerMappings   = new ReplicationProtectionContainerMappingsOperations(this);
     ReplicationRecoveryServicesProviders     = new ReplicationRecoveryServicesProvidersOperations(this);
     ReplicationStorageClassifications        = new ReplicationStorageClassificationsOperations(this);
     ReplicationStorageClassificationMappings = new ReplicationStorageClassificationMappingsOperations(this);
     ReplicationvCenters      = new ReplicationvCentersOperations(this);
     ReplicationJobs          = new ReplicationJobsOperations(this);
     ReplicationPolicies      = new ReplicationPoliciesOperations(this);
     ReplicationRecoveryPlans = new ReplicationRecoveryPlansOperations(this);
     ReplicationVaultHealth   = new ReplicationVaultHealthOperations(this);
     BaseUri        = new System.Uri("https://management.azure.com");
     ApiVersion     = "2018-01-10";
     AcceptLanguage = "en-US";
     LongRunningOperationRetryTimeout = 30;
     GenerateClientRequestId          = true;
     SerializationSettings            = new JsonSerializerSettings
     {
         Formatting            = Newtonsoft.Json.Formatting.Indented,
         DateFormatHandling    = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
         DateTimeZoneHandling  = Newtonsoft.Json.DateTimeZoneHandling.Utc,
         NullValueHandling     = Newtonsoft.Json.NullValueHandling.Ignore,
         ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize,
         ContractResolver      = new ReadOnlyJsonContractResolver(),
         Converters            = new List <JsonConverter>
         {
             new Iso8601TimeSpanConverter()
         }
     };
     DeserializationSettings = new JsonSerializerSettings
     {
         DateFormatHandling    = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
         DateTimeZoneHandling  = Newtonsoft.Json.DateTimeZoneHandling.Utc,
         NullValueHandling     = Newtonsoft.Json.NullValueHandling.Ignore,
         ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize,
         ContractResolver      = new ReadOnlyJsonContractResolver(),
         Converters            = new List <JsonConverter>
         {
             new Iso8601TimeSpanConverter()
         }
     };
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ApplyRecoveryPointProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ApplyRecoveryPointProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <TaskTypeDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <TaskTypeDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <GroupTaskDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <GroupTaskDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ConfigurationSettings>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ConfigurationSettings>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <FabricSpecificCreateNetworkMappingInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <FabricSpecificCreateNetworkMappingInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <PolicyProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <PolicyProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ReplicationProviderSpecificContainerCreationInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ReplicationProviderSpecificContainerCreationInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ReplicationProviderSpecificContainerMappingInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ReplicationProviderSpecificContainerMappingInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <RecoveryPlanActionDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <RecoveryPlanActionDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <DisableProtectionProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <DisableProtectionProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <EnableProtectionProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <EnableProtectionProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <EventProviderSpecificDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <EventProviderSpecificDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <EventSpecificDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <EventSpecificDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <FabricSpecificDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <FabricSpecificDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <FabricSpecificCreationInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <FabricSpecificCreationInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <FabricSpecificUpdateNetworkMappingInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <FabricSpecificUpdateNetworkMappingInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <JobDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <JobDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <NetworkMappingFabricSpecificSettings>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <NetworkMappingFabricSpecificSettings>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ProviderSpecificFailoverInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ProviderSpecificFailoverInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <PolicyProviderSpecificDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <PolicyProviderSpecificDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ProtectionContainerMappingProviderSpecificDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ProtectionContainerMappingProviderSpecificDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ProviderSpecificRecoveryPointDetails>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ProviderSpecificRecoveryPointDetails>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <RecoveryPlanProviderSpecificFailoverInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <RecoveryPlanProviderSpecificFailoverInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ReplicationProviderSpecificSettings>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ReplicationProviderSpecificSettings>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ReplicationProviderSpecificUpdateContainerMappingInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ReplicationProviderSpecificUpdateContainerMappingInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ReverseReplicationProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ReverseReplicationProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <SwitchProtectionProviderSpecificInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <SwitchProtectionProviderSpecificInput>("instanceType"));
     SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <UpdateReplicationProtectedItemProviderInput>("instanceType"));
     DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <UpdateReplicationProtectedItemProviderInput>("instanceType"));
     CustomInitialize();
     DeserializationSettings.Converters.Add(new CloudErrorJsonConverter());
 }
 /// <summary>
 /// Refreshes health summary of the vault.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 public static VaultHealthDetails BeginRefresh(this IReplicationVaultHealthOperations operations)
 {
     return(operations.BeginRefreshAsync().GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets the health summary for the vault.
 /// </summary>
 /// <remarks>
 /// Gets the health details of the vault.
 /// </remarks>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 public static VaultHealthDetails Get(this IReplicationVaultHealthOperations operations)
 {
     return(operations.GetAsync().GetAwaiter().GetResult());
 }