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

An Amazon S3 bucket and optional folder (object key prefix) where SimSpace * Weaver creates a file.

See Also:

AWS * API Reference

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

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline const Aws::String& GetBucketName() const{ return m_bucketName; } /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline bool BucketNameHasBeenSet() const { return m_bucketNameHasBeenSet; } /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline void SetBucketName(const Aws::String& value) { m_bucketNameHasBeenSet = true; m_bucketName = value; } /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline void SetBucketName(Aws::String&& value) { m_bucketNameHasBeenSet = true; m_bucketName = std::move(value); } /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline void SetBucketName(const char* value) { m_bucketNameHasBeenSet = true; m_bucketName.assign(value); } /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithBucketName(const Aws::String& value) { SetBucketName(value); return *this;} /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithBucketName(Aws::String&& value) { SetBucketName(std::move(value)); return *this;} /** *

The name of an Amazon S3 bucket. For more information about buckets, see Creating, * configuring, and working with Amazon S3 buckets in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithBucketName(const char* value) { SetBucketName(value); return *this;} /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline const Aws::String& GetObjectKeyPrefix() const{ return m_objectKeyPrefix; } /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline bool ObjectKeyPrefixHasBeenSet() const { return m_objectKeyPrefixHasBeenSet; } /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline void SetObjectKeyPrefix(const Aws::String& value) { m_objectKeyPrefixHasBeenSet = true; m_objectKeyPrefix = value; } /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline void SetObjectKeyPrefix(Aws::String&& value) { m_objectKeyPrefixHasBeenSet = true; m_objectKeyPrefix = std::move(value); } /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline void SetObjectKeyPrefix(const char* value) { m_objectKeyPrefixHasBeenSet = true; m_objectKeyPrefix.assign(value); } /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithObjectKeyPrefix(const Aws::String& value) { SetObjectKeyPrefix(value); return *this;} /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithObjectKeyPrefix(Aws::String&& value) { SetObjectKeyPrefix(std::move(value)); return *this;} /** *

A string prefix for an Amazon S3 object key. It's usually a folder name. For * more information about folders in Amazon S3, see Organizing * objects in the Amazon S3 console using folders in the Amazon Simple * Storage Service User Guide.

*/ inline S3Destination& WithObjectKeyPrefix(const char* value) { SetObjectKeyPrefix(value); return *this;} private: Aws::String m_bucketName; bool m_bucketNameHasBeenSet = false; Aws::String m_objectKeyPrefix; bool m_objectKeyPrefixHasBeenSet = false; }; } // namespace Model } // namespace SimSpaceWeaver } // namespace Aws