/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Personalize { namespace Model { /** */ class CreateDatasetExportJobRequest : public PersonalizeRequest { public: AWS_PERSONALIZE_API CreateDatasetExportJobRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateDatasetExportJob"; } AWS_PERSONALIZE_API Aws::String SerializePayload() const override; AWS_PERSONALIZE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name for the dataset export job.

*/ inline const Aws::String& GetJobName() const{ return m_jobName; } /** *

The name for the dataset export job.

*/ inline bool JobNameHasBeenSet() const { return m_jobNameHasBeenSet; } /** *

The name for the dataset export job.

*/ inline void SetJobName(const Aws::String& value) { m_jobNameHasBeenSet = true; m_jobName = value; } /** *

The name for the dataset export job.

*/ inline void SetJobName(Aws::String&& value) { m_jobNameHasBeenSet = true; m_jobName = std::move(value); } /** *

The name for the dataset export job.

*/ inline void SetJobName(const char* value) { m_jobNameHasBeenSet = true; m_jobName.assign(value); } /** *

The name for the dataset export job.

*/ inline CreateDatasetExportJobRequest& WithJobName(const Aws::String& value) { SetJobName(value); return *this;} /** *

The name for the dataset export job.

*/ inline CreateDatasetExportJobRequest& WithJobName(Aws::String&& value) { SetJobName(std::move(value)); return *this;} /** *

The name for the dataset export job.

*/ inline CreateDatasetExportJobRequest& WithJobName(const char* value) { SetJobName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline const Aws::String& GetDatasetArn() const{ return m_datasetArn; } /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline bool DatasetArnHasBeenSet() const { return m_datasetArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline void SetDatasetArn(const Aws::String& value) { m_datasetArnHasBeenSet = true; m_datasetArn = value; } /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline void SetDatasetArn(Aws::String&& value) { m_datasetArnHasBeenSet = true; m_datasetArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline void SetDatasetArn(const char* value) { m_datasetArnHasBeenSet = true; m_datasetArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline CreateDatasetExportJobRequest& WithDatasetArn(const Aws::String& value) { SetDatasetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline CreateDatasetExportJobRequest& WithDatasetArn(Aws::String&& value) { SetDatasetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the dataset that contains the data to * export.

*/ inline CreateDatasetExportJobRequest& WithDatasetArn(const char* value) { SetDatasetArn(value); return *this;} /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline const IngestionMode& GetIngestionMode() const{ return m_ingestionMode; } /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline bool IngestionModeHasBeenSet() const { return m_ingestionModeHasBeenSet; } /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline void SetIngestionMode(const IngestionMode& value) { m_ingestionModeHasBeenSet = true; m_ingestionMode = value; } /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline void SetIngestionMode(IngestionMode&& value) { m_ingestionModeHasBeenSet = true; m_ingestionMode = std::move(value); } /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline CreateDatasetExportJobRequest& WithIngestionMode(const IngestionMode& value) { SetIngestionMode(value); return *this;} /** *

The data to export, based on how you imported the data. You can choose to * export only BULK data that you imported using a dataset import job, * only PUT data that you imported incrementally (using the console, * PutEvents, PutUsers and PutItems operations), or ALL for both * types. The default value is PUT.

*/ inline CreateDatasetExportJobRequest& WithIngestionMode(IngestionMode&& value) { SetIngestionMode(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline CreateDatasetExportJobRequest& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline CreateDatasetExportJobRequest& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM service role that has permissions * to add data to your output Amazon S3 bucket.

*/ inline CreateDatasetExportJobRequest& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline const DatasetExportJobOutput& GetJobOutput() const{ return m_jobOutput; } /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline bool JobOutputHasBeenSet() const { return m_jobOutputHasBeenSet; } /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline void SetJobOutput(const DatasetExportJobOutput& value) { m_jobOutputHasBeenSet = true; m_jobOutput = value; } /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline void SetJobOutput(DatasetExportJobOutput&& value) { m_jobOutputHasBeenSet = true; m_jobOutput = std::move(value); } /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline CreateDatasetExportJobRequest& WithJobOutput(const DatasetExportJobOutput& value) { SetJobOutput(value); return *this;} /** *

The path to the Amazon S3 bucket where the job's output is stored.

*/ inline CreateDatasetExportJobRequest& WithJobOutput(DatasetExportJobOutput&& value) { SetJobOutput(std::move(value)); return *this;} /** *

A list of tags * to apply to the dataset export job.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of tags * to apply to the dataset export job.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

A list of tags * to apply to the dataset export job.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

A list of tags * to apply to the dataset export job.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

A list of tags * to apply to the dataset export job.

*/ inline CreateDatasetExportJobRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of tags * to apply to the dataset export job.

*/ inline CreateDatasetExportJobRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of tags * to apply to the dataset export job.

*/ inline CreateDatasetExportJobRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

A list of tags * to apply to the dataset export job.

*/ inline CreateDatasetExportJobRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_jobName; bool m_jobNameHasBeenSet = false; Aws::String m_datasetArn; bool m_datasetArnHasBeenSet = false; IngestionMode m_ingestionMode; bool m_ingestionModeHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; DatasetExportJobOutput m_jobOutput; bool m_jobOutputHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace Personalize } // namespace Aws