public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.AWSMarketplaceCommerceAnalytics.Model.GenerateDataSetRequest(); if (cmdletContext.CustomerDefinedValue != null) { request.CustomerDefinedValues = cmdletContext.CustomerDefinedValue; } if (cmdletContext.DataSetPublicationDate != null) { request.DataSetPublicationDate = cmdletContext.DataSetPublicationDate.Value; } if (cmdletContext.DataSetType != null) { request.DataSetType = cmdletContext.DataSetType; } if (cmdletContext.DestinationS3BucketName != null) { request.DestinationS3BucketName = cmdletContext.DestinationS3BucketName; } if (cmdletContext.DestinationS3Prefix != null) { request.DestinationS3Prefix = cmdletContext.DestinationS3Prefix; } if (cmdletContext.RoleNameArn != null) { request.RoleNameArn = cmdletContext.RoleNameArn; } if (cmdletContext.SnsTopicArn != null) { request.SnsTopicArn = cmdletContext.SnsTopicArn; } 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); }
private Amazon.AWSMarketplaceCommerceAnalytics.Model.GenerateDataSetResponse CallAWSServiceOperation(IAmazonAWSMarketplaceCommerceAnalytics client, Amazon.AWSMarketplaceCommerceAnalytics.Model.GenerateDataSetRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "AWS Marketplace Commerce Analytics", "GenerateDataSet"); try { #if DESKTOP return(client.GenerateDataSet(request)); #elif CORECLR return(client.GenerateDataSetAsync(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; } }
/// <summary> /// Given a data set type and data set publication date, asynchronously publishes the /// requested data set to the specified S3 bucket and notifies the specified SNS topic /// once the data is available. Returns a unique request identifier that can be used to /// correlate requests with notifications from the SNS topic. Data sets will be published /// in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD.csv. /// If a file with the same name already exists (e.g. if the same data set is requested /// twice), the original file will be overwritten by the new file. Requires a Role with /// an attached permissions policy providing Allow permissions for the following actions: /// s3:PutObject, s3:getBucketLocation, sns:SetRegion, sns:ListTopics, sns:Publish, iam:GetRolePolicy. /// </summary> /// <param name="request">Container for the necessary parameters to execute the GenerateDataSet service method.</param> /// /// <returns>The response from the GenerateDataSet service method, as returned by AWSMarketplaceCommerceAnalytics.</returns> /// <exception cref="Amazon.AWSMarketplaceCommerceAnalytics.Model.MarketplaceCommerceAnalyticsException"> /// This exception is thrown when an internal service error occurs. /// </exception> public GenerateDataSetResponse GenerateDataSet(GenerateDataSetRequest request) { var marshaller = new GenerateDataSetRequestMarshaller(); var unmarshaller = GenerateDataSetResponseUnmarshaller.Instance; return Invoke<GenerateDataSetRequest,GenerateDataSetResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the GenerateDataSet operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the GenerateDataSet operation on AmazonAWSMarketplaceCommerceAnalyticsClient.</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 EndGenerateDataSet /// operation.</returns> public IAsyncResult BeginGenerateDataSet(GenerateDataSetRequest request, AsyncCallback callback, object state) { var marshaller = new GenerateDataSetRequestMarshaller(); var unmarshaller = GenerateDataSetResponseUnmarshaller.Instance; return BeginInvoke<GenerateDataSetRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Initiates the asynchronous execution of the GenerateDataSet operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the GenerateDataSet 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<GenerateDataSetResponse> GenerateDataSetAsync(GenerateDataSetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new GenerateDataSetRequestMarshaller(); var unmarshaller = GenerateDataSetResponseUnmarshaller.Instance; return InvokeAsync<GenerateDataSetRequest,GenerateDataSetResponse>(request, marshaller, unmarshaller, cancellationToken); }