/** * 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 CloudTrail { namespace Model { /** *

The settings for the source S3 bucket.

See Also:

AWS * API Reference

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

The URI for the source S3 bucket.

*/ inline const Aws::String& GetS3LocationUri() const{ return m_s3LocationUri; } /** *

The URI for the source S3 bucket.

*/ inline bool S3LocationUriHasBeenSet() const { return m_s3LocationUriHasBeenSet; } /** *

The URI for the source S3 bucket.

*/ inline void SetS3LocationUri(const Aws::String& value) { m_s3LocationUriHasBeenSet = true; m_s3LocationUri = value; } /** *

The URI for the source S3 bucket.

*/ inline void SetS3LocationUri(Aws::String&& value) { m_s3LocationUriHasBeenSet = true; m_s3LocationUri = std::move(value); } /** *

The URI for the source S3 bucket.

*/ inline void SetS3LocationUri(const char* value) { m_s3LocationUriHasBeenSet = true; m_s3LocationUri.assign(value); } /** *

The URI for the source S3 bucket.

*/ inline S3ImportSource& WithS3LocationUri(const Aws::String& value) { SetS3LocationUri(value); return *this;} /** *

The URI for the source S3 bucket.

*/ inline S3ImportSource& WithS3LocationUri(Aws::String&& value) { SetS3LocationUri(std::move(value)); return *this;} /** *

The URI for the source S3 bucket.

*/ inline S3ImportSource& WithS3LocationUri(const char* value) { SetS3LocationUri(value); return *this;} /** *

The Region associated with the source S3 bucket.

*/ inline const Aws::String& GetS3BucketRegion() const{ return m_s3BucketRegion; } /** *

The Region associated with the source S3 bucket.

*/ inline bool S3BucketRegionHasBeenSet() const { return m_s3BucketRegionHasBeenSet; } /** *

The Region associated with the source S3 bucket.

*/ inline void SetS3BucketRegion(const Aws::String& value) { m_s3BucketRegionHasBeenSet = true; m_s3BucketRegion = value; } /** *

The Region associated with the source S3 bucket.

*/ inline void SetS3BucketRegion(Aws::String&& value) { m_s3BucketRegionHasBeenSet = true; m_s3BucketRegion = std::move(value); } /** *

The Region associated with the source S3 bucket.

*/ inline void SetS3BucketRegion(const char* value) { m_s3BucketRegionHasBeenSet = true; m_s3BucketRegion.assign(value); } /** *

The Region associated with the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketRegion(const Aws::String& value) { SetS3BucketRegion(value); return *this;} /** *

The Region associated with the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketRegion(Aws::String&& value) { SetS3BucketRegion(std::move(value)); return *this;} /** *

The Region associated with the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketRegion(const char* value) { SetS3BucketRegion(value); return *this;} /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline const Aws::String& GetS3BucketAccessRoleArn() const{ return m_s3BucketAccessRoleArn; } /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline bool S3BucketAccessRoleArnHasBeenSet() const { return m_s3BucketAccessRoleArnHasBeenSet; } /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline void SetS3BucketAccessRoleArn(const Aws::String& value) { m_s3BucketAccessRoleArnHasBeenSet = true; m_s3BucketAccessRoleArn = value; } /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline void SetS3BucketAccessRoleArn(Aws::String&& value) { m_s3BucketAccessRoleArnHasBeenSet = true; m_s3BucketAccessRoleArn = std::move(value); } /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline void SetS3BucketAccessRoleArn(const char* value) { m_s3BucketAccessRoleArnHasBeenSet = true; m_s3BucketAccessRoleArn.assign(value); } /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketAccessRoleArn(const Aws::String& value) { SetS3BucketAccessRoleArn(value); return *this;} /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketAccessRoleArn(Aws::String&& value) { SetS3BucketAccessRoleArn(std::move(value)); return *this;} /** *

The IAM ARN role used to access the source S3 bucket.

*/ inline S3ImportSource& WithS3BucketAccessRoleArn(const char* value) { SetS3BucketAccessRoleArn(value); return *this;} private: Aws::String m_s3LocationUri; bool m_s3LocationUriHasBeenSet = false; Aws::String m_s3BucketRegion; bool m_s3BucketRegionHasBeenSet = false; Aws::String m_s3BucketAccessRoleArn; bool m_s3BucketAccessRoleArnHasBeenSet = false; }; } // namespace Model } // namespace CloudTrail } // namespace Aws