public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.SimpleEmail.Model.SetIdentityNotificationTopicRequest(); if (cmdletContext.Identity != null) { request.Identity = cmdletContext.Identity; } if (cmdletContext.NotificationType != null) { request.NotificationType = cmdletContext.NotificationType; } if (cmdletContext.SnsTopic != null) { request.SnsTopic = cmdletContext.SnsTopic; } CmdletOutput output; // issue call var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint); try { var response = CallAWSServiceOperation(client, request); object pipelineOutput = null; pipelineOutput = cmdletContext.Select(response, this); output = new CmdletOutput { PipelineOutput = pipelineOutput, ServiceResponse = response }; } catch (Exception e) { output = new CmdletOutput { ErrorResponse = e }; } return(output); }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// <seealso cref="Amazon.SimpleEmail.IAmazonSimpleEmailService.SetIdentityNotificationTopic"/> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<SetIdentityNotificationTopicResponse> SetIdentityNotificationTopicAsync(SetIdentityNotificationTopicRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.GetInstance(); return Invoke<IRequest, SetIdentityNotificationTopicRequest, SetIdentityNotificationTopicResponse>(request, marshaller, unmarshaller, signer, cancellationToken); }
/// <summary> /// <para>Given an identity (email address or domain), sets the Amazon SNS topic to which Amazon SES will publish bounce and complaint /// notifications for emails sent with that identity as the <c>Source</c> . /// Publishing to topics may only be disabled when feedback forwarding is enabled.</para> <para>This action is throttled at one request /// per second.</para> <para>For more information about feedback notification, see the <a href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/bounce-complaint-notifications.html">Amazon SES Developer Guide</a> .</para> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic service /// method on AmazonSimpleEmailService.</param> /// /// <returns>The response from the SetIdentityNotificationTopic service method, as returned by AmazonSimpleEmailService.</returns> public SetIdentityNotificationTopicResponse SetIdentityNotificationTopic(SetIdentityNotificationTopicRequest request) { var task = SetIdentityNotificationTopicAsync(request); try { return task.Result; } catch(AggregateException e) { ExceptionDispatchInfo.Capture(e.InnerException).Throw(); return null; } }
/// <summary> /// <para>Given an identity (email address or domain), sets the Amazon SNS topic to which Amazon SES will publish bounce and complaint /// notifications for emails sent with that identity as the <c>Source</c> . /// Publishing to topics may only be disabled when feedback forwarding is enabled.</para> <para>This action is throttled at one request /// per second.</para> <para>For more information about feedback notification, see the <a href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/bounce-complaint-notifications.html">Amazon SES Developer Guide</a> .</para> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic service /// method on AmazonSimpleEmailService.</param> /// /// <returns>The response from the SetIdentityNotificationTopic service method, as returned by AmazonSimpleEmailService.</returns> public SetIdentityNotificationTopicResponse SetIdentityNotificationTopic(SetIdentityNotificationTopicRequest request) { var task = SetIdentityNotificationTopicAsync(request); try { return task.Result; } catch(AggregateException e) { throw e.InnerException; } }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<SetIdentityNotificationTopicResponse> SetIdentityNotificationTopicAsync(SetIdentityNotificationTopicRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.Instance; return InvokeAsync<SetIdentityNotificationTopicRequest,SetIdentityNotificationTopicResponse>(request, marshaller, unmarshaller, cancellationToken); }
/// <summary> /// Given an identity (an email address or a domain), sets the Amazon Simple Notification /// Service (Amazon SNS) topic to which Amazon SES will publish bounce, complaint, and/or /// delivery notifications for emails sent with that identity as the <code>Source</code>. /// /// <note> /// <para> /// Unless feedback forwarding is enabled, you must specify Amazon SNS topics for bounce /// and complaint notifications. For more information, see <code>SetIdentityFeedbackForwardingEnabled</code>. /// </para> /// </note> /// <para> /// This action is throttled at one request per second. /// </para> /// /// <para> /// For more information about feedback notification, see the <a href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html">Amazon /// SES Developer Guide</a>. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic service method.</param> /// /// <returns>The response from the SetIdentityNotificationTopic service method, as returned by SimpleEmailService.</returns> public SetIdentityNotificationTopicResponse SetIdentityNotificationTopic(SetIdentityNotificationTopicRequest request) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.Instance; return Invoke<SetIdentityNotificationTopicRequest,SetIdentityNotificationTopicResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic operation on AmazonSimpleEmailServiceClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndSetIdentityNotificationTopic /// operation.</returns> public IAsyncResult BeginSetIdentityNotificationTopic(SetIdentityNotificationTopicRequest request, AsyncCallback callback, object state) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.Instance; return BeginInvoke<SetIdentityNotificationTopicRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// <seealso cref="Amazon.SimpleEmail.AmazonSimpleEmailService.SetIdentityNotificationTopic"/> /// </summary> /// /// <param name="setIdentityNotificationTopicRequest">Container for the necessary parameters to execute the SetIdentityNotificationTopic /// operation on AmazonSimpleEmailService.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking /// EndSetIdentityNotificationTopic operation.</returns> public IAsyncResult BeginSetIdentityNotificationTopic(SetIdentityNotificationTopicRequest setIdentityNotificationTopicRequest, AsyncCallback callback, object state) { return invokeSetIdentityNotificationTopic(setIdentityNotificationTopicRequest, callback, state, false); }
IAsyncResult invokeSetIdentityNotificationTopic(SetIdentityNotificationTopicRequest setIdentityNotificationTopicRequest, AsyncCallback callback, object state, bool synchronized) { IRequest irequest = new SetIdentityNotificationTopicRequestMarshaller().Marshall(setIdentityNotificationTopicRequest); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.GetInstance(); AsyncResult result = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller); Invoke(result); return result; }
/// <summary> /// <para>Given an identity (email address or domain), sets the Amazon SNS topic to which Amazon SES will publish bounce and complaint /// notifications for emails sent with that identity as the <c>Source</c> . /// Publishing to topics may only be disabled when feedback forwarding is enabled. For more information about feedback notification, see /// the Amazon SES Developer Guide.</para> /// </summary> /// /// <param name="setIdentityNotificationTopicRequest">Container for the necessary parameters to execute the SetIdentityNotificationTopic service /// method on AmazonSimpleEmailService.</param> /// /// <returns>The response from the SetIdentityNotificationTopic service method, as returned by AmazonSimpleEmailService.</returns> /// public SetIdentityNotificationTopicResponse SetIdentityNotificationTopic(SetIdentityNotificationTopicRequest setIdentityNotificationTopicRequest) { IAsyncResult asyncResult = invokeSetIdentityNotificationTopic(setIdentityNotificationTopicRequest, null, null, true); return EndSetIdentityNotificationTopic(asyncResult); }
IAsyncResult invokeSetIdentityNotificationTopic(SetIdentityNotificationTopicRequest request, AsyncCallback callback, object state, bool synchronized) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.Instance; return Invoke(request, callback, state, synchronized, marshaller, unmarshaller, signer); }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// <seealso cref="Amazon.SimpleEmail.IAmazonSimpleEmailService.SetIdentityNotificationTopic"/> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public async Task<SetIdentityNotificationTopicResponse> SetIdentityNotificationTopicAsync(SetIdentityNotificationTopicRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.GetInstance(); var response = await Invoke<IRequest, SetIdentityNotificationTopicRequest, SetIdentityNotificationTopicResponse>(request, marshaller, unmarshaller, signer, cancellationToken) .ConfigureAwait(continueOnCapturedContext: false); return response; }
/// <summary> /// Initiates the asynchronous execution of the SetIdentityNotificationTopic operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the SetIdentityNotificationTopic operation on AmazonSimpleEmailServiceClient.</param> /// <param name="callback">An Action delegate that is invoked when the operation completes.</param> /// <param name="options">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> public void SetIdentityNotificationTopicAsync(SetIdentityNotificationTopicRequest request, AmazonServiceCallback<SetIdentityNotificationTopicRequest, SetIdentityNotificationTopicResponse> callback, AsyncOptions options = null) { options = options == null?new AsyncOptions():options; var marshaller = new SetIdentityNotificationTopicRequestMarshaller(); var unmarshaller = SetIdentityNotificationTopicResponseUnmarshaller.Instance; Action<AmazonWebServiceRequest, AmazonWebServiceResponse, Exception, AsyncOptions> callbackHelper = null; if(callback !=null ) callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { AmazonServiceResult<SetIdentityNotificationTopicRequest,SetIdentityNotificationTopicResponse> responseObject = new AmazonServiceResult<SetIdentityNotificationTopicRequest,SetIdentityNotificationTopicResponse>((SetIdentityNotificationTopicRequest)req, (SetIdentityNotificationTopicResponse)res, ex , ao.State); callback(responseObject); }; BeginInvoke<SetIdentityNotificationTopicRequest>(request, marshaller, unmarshaller, options, callbackHelper); }
public static void SESSetIdentityNotificationTopic() { #region SESSetIdentityNotificationTopic var sesClient = new AmazonSimpleEmailServiceClient(); var bounceRequest = new SetIdentityNotificationTopicRequest { Identity = "*****@*****.**", NotificationType = NotificationType.Bounce, SnsTopic = "arn:aws:sns:us-east-1:80398EXAMPLE:CodingTestResults" }; sesClient.SetIdentityNotificationTopic(bounceRequest); var complaintRequest = new SetIdentityNotificationTopicRequest { Identity = "*****@*****.**", NotificationType = NotificationType.Complaint, SnsTopic = "arn:aws:sns:us-east-1:80398EXAMPLE:CodingTestResults" }; sesClient.SetIdentityNotificationTopic(complaintRequest); #endregion }
private Amazon.SimpleEmail.Model.SetIdentityNotificationTopicResponse CallAWSServiceOperation(IAmazonSimpleEmailService client, Amazon.SimpleEmail.Model.SetIdentityNotificationTopicRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Simple Email Service (SES)", "SetIdentityNotificationTopic"); try { #if DESKTOP return(client.SetIdentityNotificationTopic(request)); #elif CORECLR return(client.SetIdentityNotificationTopicAsync(request).GetAwaiter().GetResult()); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } }