/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Pinpoint { namespace Model { /** *

Specifies the settings for a job that exports endpoint definitions to an * Amazon Simple Storage Service (Amazon S3) bucket.

See Also:

AWS * API Reference

*/ class ExportJobRequest { public: AWS_PINPOINT_API ExportJobRequest(); AWS_PINPOINT_API ExportJobRequest(Aws::Utils::Json::JsonView jsonValue); AWS_PINPOINT_API ExportJobRequest& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_PINPOINT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location * where you want to export endpoint definitions to.

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

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline const Aws::String& GetS3UrlPrefix() const{ return m_s3UrlPrefix; } /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline bool S3UrlPrefixHasBeenSet() const { return m_s3UrlPrefixHasBeenSet; } /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline void SetS3UrlPrefix(const Aws::String& value) { m_s3UrlPrefixHasBeenSet = true; m_s3UrlPrefix = value; } /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline void SetS3UrlPrefix(Aws::String&& value) { m_s3UrlPrefixHasBeenSet = true; m_s3UrlPrefix = std::move(value); } /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline void SetS3UrlPrefix(const char* value) { m_s3UrlPrefixHasBeenSet = true; m_s3UrlPrefix.assign(value); } /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline ExportJobRequest& WithS3UrlPrefix(const Aws::String& value) { SetS3UrlPrefix(value); return *this;} /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline ExportJobRequest& WithS3UrlPrefix(Aws::String&& value) { SetS3UrlPrefix(std::move(value)); return *this;} /** *

The URL of the location in an Amazon Simple Storage Service (Amazon S3) * bucket where you want to export endpoint definitions to. This location is * typically a folder that contains multiple files. The URL should be in the * following format: * s3://bucket-name/folder-name/.

*/ inline ExportJobRequest& WithS3UrlPrefix(const char* value) { SetS3UrlPrefix(value); return *this;} /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline const Aws::String& GetSegmentId() const{ return m_segmentId; } /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline bool SegmentIdHasBeenSet() const { return m_segmentIdHasBeenSet; } /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline void SetSegmentId(const Aws::String& value) { m_segmentIdHasBeenSet = true; m_segmentId = value; } /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline void SetSegmentId(Aws::String&& value) { m_segmentIdHasBeenSet = true; m_segmentId = std::move(value); } /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline void SetSegmentId(const char* value) { m_segmentIdHasBeenSet = true; m_segmentId.assign(value); } /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline ExportJobRequest& WithSegmentId(const Aws::String& value) { SetSegmentId(value); return *this;} /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline ExportJobRequest& WithSegmentId(Aws::String&& value) { SetSegmentId(std::move(value)); return *this;} /** *

The identifier for the segment to export endpoint definitions from. If you * don't specify this value, Amazon Pinpoint exports definitions for all the * endpoints that are associated with the application.

*/ inline ExportJobRequest& WithSegmentId(const char* value) { SetSegmentId(value); return *this;} /** *

The version of the segment to export endpoint definitions from, if * specified.

*/ inline int GetSegmentVersion() const{ return m_segmentVersion; } /** *

The version of the segment to export endpoint definitions from, if * specified.

*/ inline bool SegmentVersionHasBeenSet() const { return m_segmentVersionHasBeenSet; } /** *

The version of the segment to export endpoint definitions from, if * specified.

*/ inline void SetSegmentVersion(int value) { m_segmentVersionHasBeenSet = true; m_segmentVersion = value; } /** *

The version of the segment to export endpoint definitions from, if * specified.

*/ inline ExportJobRequest& WithSegmentVersion(int value) { SetSegmentVersion(value); return *this;} private: Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::String m_s3UrlPrefix; bool m_s3UrlPrefixHasBeenSet = false; Aws::String m_segmentId; bool m_segmentIdHasBeenSet = false; int m_segmentVersion; bool m_segmentVersionHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws