/// <summary> /// Enterprise to enterprise network mapping. /// </summary> private void UpdateEnterpriseToEnterpriseNetworkMapping() { var input = new UpdateNetworkMappingInput { Properties = new UpdateNetworkMappingInputProperties { RecoveryFabricName = Utilities.GetValueFromArmId( this.RecoveryNetwork.ID, ARMResourceTypeConstants.ReplicationFabrics), RecoveryNetworkId = this.RecoveryNetwork.ID, FabricSpecificDetails = new VmmToVmmUpdateNetworkMappingInput() } }; var response = this.RecoveryServicesClient.UpdateAzureSiteRecoveryNetworkMapping( Utilities.GetValueFromArmId( this.InputObject.PrimaryNetworkId, ARMResourceTypeConstants.ReplicationFabrics), Utilities.GetValueFromArmId( this.InputObject.PrimaryNetworkId, ARMResourceTypeConstants.ReplicationNetworks), this.InputObject.Name, input); var jobResponse = this.RecoveryServicesClient.GetAzureSiteRecoveryJobDetails( PSRecoveryServicesClient.GetJobIdFromReponseLocation(response.Location)); this.WriteObject(new ASRJob(jobResponse)); }
/// <summary> /// Enterprise to Azure network mapping. /// </summary> private void UpdateEnterpriseToAzureNetworkMapping() { // Add following checks if needed: // Verify whether the subscription is associated with the account or not. // Check if the Azure VM Network is associated with the Subscription or not. var input = new UpdateNetworkMappingInput { Properties = new UpdateNetworkMappingInputProperties { RecoveryFabricName = "Microsoft Azure", RecoveryNetworkId = this.RecoveryAzureNetworkId, FabricSpecificDetails = new VmmToAzureUpdateNetworkMappingInput() } }; var response = this.RecoveryServicesClient.UpdateAzureSiteRecoveryNetworkMapping( Utilities.GetValueFromArmId( this.InputObject.PrimaryNetworkId, ARMResourceTypeConstants.ReplicationFabrics), Utilities.GetValueFromArmId( this.InputObject.PrimaryNetworkId, ARMResourceTypeConstants.ReplicationNetworks), this.InputObject.Name, input); var jobResponse = this.RecoveryServicesClient.GetAzureSiteRecoveryJobDetails( PSRecoveryServicesClient.GetJobIdFromReponseLocation(response.Location)); this.WriteObject(new ASRJob(jobResponse)); }
/// <summary> /// Update Azure to Azure network mapping. /// </summary> private void UpdateAzureToAzureNetworkMapping() { // Add following checks if needed: // Verify whether the subscription is associated with the account or not. // Check if the Azure VM Network is associated with the Subscription or not. var input = new UpdateNetworkMappingInput { Properties = new UpdateNetworkMappingInputProperties { RecoveryFabricName = this.GetFabricNameByFriendlyName(this.InputObject.RecoveryFabricFriendlyName), RecoveryNetworkId = this.RecoveryAzureNetworkId, FabricSpecificDetails = new AzureToAzureUpdateNetworkMappingInput { PrimaryNetworkId = this.InputObject.PrimaryNetworkId } } }; var response = this.RecoveryServicesClient.UpdateAzureSiteRecoveryNetworkMapping( this.InputObject.PrimaryFabricFriendlyName, ARMResourceTypeConstants.AzureNetwork, this.InputObject.Name, input); var jobResponse = this.RecoveryServicesClient.GetAzureSiteRecoveryJobDetails( PSRecoveryServicesClient.GetJobIdFromReponseLocation(response.Location)); this.WriteObject(new ASRJob(jobResponse)); }
/// <summary> /// Updates an existing Azure Site Recovery Network mapping. /// </summary> /// <param name="primaryFabricName">Primary fabric name.</param> /// <param name="primaryNetworkName">Primary network name.</param> /// <param name="mappingName">Mapping name.</param> /// <param name="input">Input data to be passed as request body.</param> /// <returns>Long running operation response.</returns> public PSSiteRecoveryLongRunningOperation UpdateAzureSiteRecoveryNetworkMapping( string primaryFabricName, string primaryNetworkName, string mappingName, UpdateNetworkMappingInput input) { var op = this.GetSiteRecoveryClient() .ReplicationNetworkMappings.BeginUpdateWithHttpMessagesAsync( primaryFabricName, primaryNetworkName, mappingName, input, this.GetRequestHeaders(true)) .GetAwaiter() .GetResult(); var result = Mapper.Map <PSSiteRecoveryLongRunningOperation>(op); return(result); }
/// <summary> /// Updates network mapping. /// </summary> /// <remarks> /// The operation to update an ASR network mapping. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='fabricName'> /// Primary fabric name. /// </param> /// <param name='networkName'> /// Primary network name. /// </param> /// <param name='networkMappingName'> /// Network mapping name. /// </param> /// <param name='input'> /// Update network mapping input. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <NetworkMapping> BeginUpdateAsync(this IReplicationNetworkMappingsOperations operations, string fabricName, string networkName, string networkMappingName, UpdateNetworkMappingInput input, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.BeginUpdateWithHttpMessagesAsync(fabricName, networkName, networkMappingName, input, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Updates network mapping. /// </summary> /// <remarks> /// The operation to update an ASR network mapping. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='fabricName'> /// Primary fabric name. /// </param> /// <param name='networkName'> /// Primary network name. /// </param> /// <param name='networkMappingName'> /// Network mapping name. /// </param> /// <param name='input'> /// Update network mapping input. /// </param> public static NetworkMapping BeginUpdate(this IReplicationNetworkMappingsOperations operations, string fabricName, string networkName, string networkMappingName, UpdateNetworkMappingInput input) { return(operations.BeginUpdateAsync(fabricName, networkName, networkMappingName, input).GetAwaiter().GetResult()); }