private Amazon.Budgets.Model.CreateSubscriberResponse CallAWSServiceOperation(IAmazonBudgets client, Amazon.Budgets.Model.CreateSubscriberRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "AWS Budgets", "CreateSubscriber"); try { #if DESKTOP return(client.CreateSubscriber(request)); #elif CORECLR return(client.CreateSubscriberAsync(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; } }
public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.Budgets.Model.CreateSubscriberRequest(); if (cmdletContext.AccountId != null) { request.AccountId = cmdletContext.AccountId; } if (cmdletContext.BudgetName != null) { request.BudgetName = cmdletContext.BudgetName; } // populate Notification var requestNotificationIsNull = true; request.Notification = new Amazon.Budgets.Model.Notification(); Amazon.Budgets.ComparisonOperator requestNotification_notification_ComparisonOperator = null; if (cmdletContext.Notification_ComparisonOperator != null) { requestNotification_notification_ComparisonOperator = cmdletContext.Notification_ComparisonOperator; } if (requestNotification_notification_ComparisonOperator != null) { request.Notification.ComparisonOperator = requestNotification_notification_ComparisonOperator; requestNotificationIsNull = false; } Amazon.Budgets.NotificationState requestNotification_notification_NotificationState = null; if (cmdletContext.Notification_NotificationState != null) { requestNotification_notification_NotificationState = cmdletContext.Notification_NotificationState; } if (requestNotification_notification_NotificationState != null) { request.Notification.NotificationState = requestNotification_notification_NotificationState; requestNotificationIsNull = false; } Amazon.Budgets.NotificationType requestNotification_notification_NotificationType = null; if (cmdletContext.Notification_NotificationType != null) { requestNotification_notification_NotificationType = cmdletContext.Notification_NotificationType; } if (requestNotification_notification_NotificationType != null) { request.Notification.NotificationType = requestNotification_notification_NotificationType; requestNotificationIsNull = false; } System.Double?requestNotification_notification_Threshold = null; if (cmdletContext.Notification_Threshold != null) { requestNotification_notification_Threshold = cmdletContext.Notification_Threshold.Value; } if (requestNotification_notification_Threshold != null) { request.Notification.Threshold = requestNotification_notification_Threshold.Value; requestNotificationIsNull = false; } Amazon.Budgets.ThresholdType requestNotification_notification_ThresholdType = null; if (cmdletContext.Notification_ThresholdType != null) { requestNotification_notification_ThresholdType = cmdletContext.Notification_ThresholdType; } if (requestNotification_notification_ThresholdType != null) { request.Notification.ThresholdType = requestNotification_notification_ThresholdType; requestNotificationIsNull = false; } // determine if request.Notification should be set to null if (requestNotificationIsNull) { request.Notification = null; } // populate Subscriber var requestSubscriberIsNull = true; request.Subscriber = new Amazon.Budgets.Model.Subscriber(); System.String requestSubscriber_subscriber_Address = null; if (cmdletContext.Subscriber_Address != null) { requestSubscriber_subscriber_Address = cmdletContext.Subscriber_Address; } if (requestSubscriber_subscriber_Address != null) { request.Subscriber.Address = requestSubscriber_subscriber_Address; requestSubscriberIsNull = false; } Amazon.Budgets.SubscriptionType requestSubscriber_subscriber_SubscriptionType = null; if (cmdletContext.Subscriber_SubscriptionType != null) { requestSubscriber_subscriber_SubscriptionType = cmdletContext.Subscriber_SubscriptionType; } if (requestSubscriber_subscriber_SubscriptionType != null) { request.Subscriber.SubscriptionType = requestSubscriber_subscriber_SubscriptionType; requestSubscriberIsNull = false; } // determine if request.Subscriber should be set to null if (requestSubscriberIsNull) { request.Subscriber = null; } 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> /// Create a new Subscriber for a notification /// </summary> /// <param name="request">Container for the necessary parameters to execute the CreateSubscriber service method.</param> /// /// <returns>The response from the CreateSubscriber service method, as returned by Budgets.</returns> /// <exception cref="Amazon.Budgets.Model.CreationLimitExceededException"> /// The exception is thrown when customer tries to create a record (e.g. budget), but /// the number this record already exceeds the limitation. /// </exception> /// <exception cref="Amazon.Budgets.Model.DuplicateRecordException"> /// The exception is thrown when customer tries to create a record (e.g. budget) that /// already exists. /// </exception> /// <exception cref="Amazon.Budgets.Model.InternalErrorException"> /// This exception is thrown on an unknown internal failure. /// </exception> /// <exception cref="Amazon.Budgets.Model.InvalidParameterException"> /// This exception is thrown if any request is given an invalid parameter. E.g., if a /// required Date field is null. /// </exception> public CreateSubscriberResponse CreateSubscriber(CreateSubscriberRequest request) { var marshaller = new CreateSubscriberRequestMarshaller(); var unmarshaller = CreateSubscriberResponseUnmarshaller.Instance; return Invoke<CreateSubscriberRequest,CreateSubscriberResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the CreateSubscriber operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateSubscriber operation on AmazonBudgetsClient.</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 EndCreateSubscriber /// operation.</returns> public IAsyncResult BeginCreateSubscriber(CreateSubscriberRequest request, AsyncCallback callback, object state) { var marshaller = new CreateSubscriberRequestMarshaller(); var unmarshaller = CreateSubscriberResponseUnmarshaller.Instance; return BeginInvoke<CreateSubscriberRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Initiates the asynchronous execution of the CreateSubscriber operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateSubscriber 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<CreateSubscriberResponse> CreateSubscriberAsync(CreateSubscriberRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new CreateSubscriberRequestMarshaller(); var unmarshaller = CreateSubscriberResponseUnmarshaller.Instance; return InvokeAsync<CreateSubscriberRequest,CreateSubscriberResponse>(request, marshaller, unmarshaller, cancellationToken); }