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

Provides information about the import job that created a segment. An import * job is a job that creates a user segment by importing endpoint * definitions.

See Also:

AWS * API Reference

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

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline const Aws::Map& GetChannelCounts() const{ return m_channelCounts; } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline bool ChannelCountsHasBeenSet() const { return m_channelCountsHasBeenSet; } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline void SetChannelCounts(const Aws::Map& value) { m_channelCountsHasBeenSet = true; m_channelCounts = value; } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline void SetChannelCounts(Aws::Map&& value) { m_channelCountsHasBeenSet = true; m_channelCounts = std::move(value); } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline SegmentImportResource& WithChannelCounts(const Aws::Map& value) { SetChannelCounts(value); return *this;} /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline SegmentImportResource& WithChannelCounts(Aws::Map&& value) { SetChannelCounts(std::move(value)); return *this;} /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline SegmentImportResource& AddChannelCounts(const Aws::String& key, int value) { m_channelCountsHasBeenSet = true; m_channelCounts.emplace(key, value); return *this; } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline SegmentImportResource& AddChannelCounts(Aws::String&& key, int value) { m_channelCountsHasBeenSet = true; m_channelCounts.emplace(std::move(key), value); return *this; } /** *

The number of channel types in the endpoint definitions that were imported to * create the segment.

*/ inline SegmentImportResource& AddChannelCounts(const char* key, int value) { m_channelCountsHasBeenSet = true; m_channelCounts.emplace(key, value); return *this; } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline const Aws::String& GetExternalId() const{ return m_externalId; } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline bool ExternalIdHasBeenSet() const { return m_externalIdHasBeenSet; } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline void SetExternalId(const Aws::String& value) { m_externalIdHasBeenSet = true; m_externalId = value; } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline void SetExternalId(Aws::String&& value) { m_externalIdHasBeenSet = true; m_externalId = std::move(value); } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline void SetExternalId(const char* value) { m_externalIdHasBeenSet = true; m_externalId.assign(value); } /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline SegmentImportResource& WithExternalId(const Aws::String& value) { SetExternalId(value); return *this;} /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline SegmentImportResource& WithExternalId(Aws::String&& value) { SetExternalId(std::move(value)); return *this;} /** *

(Deprecated) Your AWS account ID, which you assigned to an external ID key in * an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM * role when importing endpoint definitions, but we removed this requirement. We * don't recommend use of external IDs for IAM roles that are assumed by Amazon * Pinpoint.

*/ inline SegmentImportResource& WithExternalId(const char* value) { SetExternalId(value); return *this;} /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline const Format& GetFormat() const{ return m_format; } /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; } /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline void SetFormat(const Format& value) { m_formatHasBeenSet = true; m_format = value; } /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline void SetFormat(Format&& value) { m_formatHasBeenSet = true; m_format = std::move(value); } /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline SegmentImportResource& WithFormat(const Format& value) { SetFormat(value); return *this;} /** *

The format of the files that were imported to create the segment. Valid * values are: CSV, for comma-separated values format; and, JSON, for * newline-delimited JSON format.

*/ inline SegmentImportResource& WithFormat(Format&& value) { SetFormat(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

*/ 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 authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

*/ 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 authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

*/ 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 authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

*/ inline SegmentImportResource& 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 authorized Amazon Pinpoint to access the Amazon S3 location to * import endpoint definitions from.

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

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline const Aws::String& GetS3Url() const{ return m_s3Url; } /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline bool S3UrlHasBeenSet() const { return m_s3UrlHasBeenSet; } /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline void SetS3Url(const Aws::String& value) { m_s3UrlHasBeenSet = true; m_s3Url = value; } /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline void SetS3Url(Aws::String&& value) { m_s3UrlHasBeenSet = true; m_s3Url = std::move(value); } /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline void SetS3Url(const char* value) { m_s3UrlHasBeenSet = true; m_s3Url.assign(value); } /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline SegmentImportResource& WithS3Url(const Aws::String& value) { SetS3Url(value); return *this;} /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline SegmentImportResource& WithS3Url(Aws::String&& value) { SetS3Url(std::move(value)); return *this;} /** *

The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the * endpoint definitions were imported from to create the segment.

*/ inline SegmentImportResource& WithS3Url(const char* value) { SetS3Url(value); return *this;} /** *

The number of endpoint definitions that were imported successfully to create * the segment.

*/ inline int GetSize() const{ return m_size; } /** *

The number of endpoint definitions that were imported successfully to create * the segment.

*/ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; } /** *

The number of endpoint definitions that were imported successfully to create * the segment.

*/ inline void SetSize(int value) { m_sizeHasBeenSet = true; m_size = value; } /** *

The number of endpoint definitions that were imported successfully to create * the segment.

*/ inline SegmentImportResource& WithSize(int value) { SetSize(value); return *this;} private: Aws::Map m_channelCounts; bool m_channelCountsHasBeenSet = false; Aws::String m_externalId; bool m_externalIdHasBeenSet = false; Format m_format; bool m_formatHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::String m_s3Url; bool m_s3UrlHasBeenSet = false; int m_size; bool m_sizeHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws