protected override void ProcessRecord() { base.ProcessRecord(); ChangeSteeringPolicyCompartmentRequest request; try { request = new ChangeSteeringPolicyCompartmentRequest { SteeringPolicyId = SteeringPolicyId, ChangeSteeringPolicyCompartmentDetails = ChangeSteeringPolicyCompartmentDetails, IfMatch = IfMatch, OpcRetryToken = OpcRetryToken, OpcRequestId = OpcRequestId, Scope = Scope }; response = client.ChangeSteeringPolicyCompartment(request).GetAwaiter().GetResult(); WriteOutput(response); FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
/// <summary> /// Moves a steering policy into a different compartment. When provided, If-Match is checked against ETag values of the resource. /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <ChangeSteeringPolicyCompartmentResponse> ChangeSteeringPolicyCompartment(ChangeSteeringPolicyCompartmentRequest request) { var uri = new Uri($"{GetEndPoint(DNSServices.SteeringPolicies, this.Region)}/{request.SteeringPolicyId}/actions/changeCompartment"); var httpRequestHeaderParam = new HttpRequestHeaderParam() { OpcRetryToken = request.OpcRetryToken, IfMatch = request.IfMatch }; var webResponse = await this.RestClientAsync.Post(uri, request.ChangeSteeringPolicyCompartmentDetails, httpRequestHeaderParam); using (var stream = webResponse.GetResponseStream()) using (var reader = new StreamReader(stream)) { var response = reader.ReadToEnd(); return(new ChangeSteeringPolicyCompartmentResponse() { OpcRequestId = webResponse.Headers.Get("opc-request-id") }); } }