/// <summary> /// Creates a secondary VNIC and attaches it to the specified instance. /// For more information about secondary VNICs, see Virtual Network Interface Cards (VNICs). /// </summary> /// <param name="request"></param> /// <returns></returns> public AttachVnicResponse AttachVnic(AttachVnicRequest request) { var uri = new Uri(GetEndPoint(CoreServices.VNICAttachment, this.Region)); using (var webResponse = this.RestClient.Post(uri, request.AttachVnicDetails, new HttpRequestHeaderParam { OpcRetryToken = request.OpcRetryToken })) using (var stream = webResponse.GetResponseStream()) using (var reader = new StreamReader(stream)) { var response = reader.ReadToEnd(); return(new AttachVnicResponse() { VnicAttachment = this.JsonSerializer.Deserialize <VnicAttachment>(response), ETag = webResponse.Headers.Get("etag"), OpcRequestId = webResponse.Headers.Get("opc-request-id") }); } }
protected override void ProcessRecord() { base.ProcessRecord(); AttachVnicRequest request; try { request = new AttachVnicRequest { AttachVnicDetails = AttachVnicDetails, OpcRetryToken = OpcRetryToken }; response = client.AttachVnic(request).GetAwaiter().GetResult(); WriteOutput(response, response.VnicAttachment); FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }