/// <summary> /// Replaces the set of tags for a sender with the tags provided. If either freeform /// or defined tags are omitted, the tags for that set remain the same. Each set must /// include the full set of tags for the sender, partial updates are not permitted. /// For more information about tagging, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). /// /// </summary> /// <param name="request">The request object containing the details to send. Required.</param> /// <param name="retryConfiguration">The retry configuration that will be used by to send this request. Optional.</param> /// <param name="cancellationToken">The cancellation token to cancel this operation. Optional.</param> /// <returns>A response object containing details about the completed operation</returns> /// <example>Click <a href="https://docs.cloud.oracle.com/en-us/iaas/tools/dot-net-examples/latest/email/UpdateSender.cs.html">here</a> to see an example of how to use UpdateSender API.</example> public async Task <UpdateSenderResponse> UpdateSender(UpdateSenderRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default) { logger.Trace("Called updateSender"); Uri uri = new Uri(this.restClient.GetEndpoint(), System.IO.Path.Combine(basePathWithoutHost, "/senders/{senderId}".Trim('/'))); HttpMethod method = new HttpMethod("PUT"); HttpRequestMessage requestMessage = Converter.ToHttpRequestMessage(uri, method, request); requestMessage.Headers.Add("Accept", "application/json"); GenericRetrier retryingClient = Retrier.GetPreferredRetrier(retryConfiguration, this.retryConfiguration); HttpResponseMessage responseMessage; try { if (retryingClient != null) { responseMessage = await retryingClient.MakeRetryingCall(this.restClient.HttpSend, requestMessage, cancellationToken).ConfigureAwait(false); } else { responseMessage = await this.restClient.HttpSend(requestMessage).ConfigureAwait(false); } this.restClient.CheckHttpResponseMessage(requestMessage, responseMessage); return(Converter.FromHttpResponseMessage <UpdateSenderResponse>(responseMessage)); } catch (Exception e) { logger.Error($"UpdateSender failed with error: {e.Message}"); throw; } }
public async Task <ActionResult> ChangeSender(string id, [FromBody] UpdateSenderRequest request) { await this.mediator.Send( new UpdateEmailMessageSender(new EmailMessageId(id), request.Sender)); return(this.Ok()); }
protected override void ProcessRecord() { base.ProcessRecord(); UpdateSenderRequest request; try { request = new UpdateSenderRequest { SenderId = SenderId, UpdateSenderDetails = UpdateSenderDetails, IfMatch = IfMatch, OpcRequestId = OpcRequestId }; response = client.UpdateSender(request).GetAwaiter().GetResult(); WriteOutput(response, response.Sender); FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }