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

The details for a backend storage resource.

See Also:

AWS * API Reference

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

The name of the S3 bucket.

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

Returns True if the storage resource has been imported.

*/ inline bool GetImported() const{ return m_imported; } /** *

Returns True if the storage resource has been imported.

*/ inline bool ImportedHasBeenSet() const { return m_importedHasBeenSet; } /** *

Returns True if the storage resource has been imported.

*/ inline void SetImported(bool value) { m_importedHasBeenSet = true; m_imported = value; } /** *

Returns True if the storage resource has been imported.

*/ inline GetBackendStorageResourceConfig& WithImported(bool value) { SetImported(value); return *this;} /** *

The authorization configuration for the storage S3 bucket.

*/ inline const BackendStoragePermissions& GetPermissions() const{ return m_permissions; } /** *

The authorization configuration for the storage S3 bucket.

*/ inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; } /** *

The authorization configuration for the storage S3 bucket.

*/ inline void SetPermissions(const BackendStoragePermissions& value) { m_permissionsHasBeenSet = true; m_permissions = value; } /** *

The authorization configuration for the storage S3 bucket.

*/ inline void SetPermissions(BackendStoragePermissions&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); } /** *

The authorization configuration for the storage S3 bucket.

*/ inline GetBackendStorageResourceConfig& WithPermissions(const BackendStoragePermissions& value) { SetPermissions(value); return *this;} /** *

The authorization configuration for the storage S3 bucket.

*/ inline GetBackendStorageResourceConfig& WithPermissions(BackendStoragePermissions&& value) { SetPermissions(std::move(value)); return *this;} /** *

The name of the storage service.

*/ inline const ServiceName& GetServiceName() const{ return m_serviceName; } /** *

The name of the storage service.

*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *

The name of the storage service.

*/ inline void SetServiceName(const ServiceName& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *

The name of the storage service.

*/ inline void SetServiceName(ServiceName&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *

The name of the storage service.

*/ inline GetBackendStorageResourceConfig& WithServiceName(const ServiceName& value) { SetServiceName(value); return *this;} /** *

The name of the storage service.

*/ inline GetBackendStorageResourceConfig& WithServiceName(ServiceName&& value) { SetServiceName(std::move(value)); return *this;} private: Aws::String m_bucketName; bool m_bucketNameHasBeenSet = false; bool m_imported; bool m_importedHasBeenSet = false; BackendStoragePermissions m_permissions; bool m_permissionsHasBeenSet = false; ServiceName m_serviceName; bool m_serviceNameHasBeenSet = false; }; } // namespace Model } // namespace AmplifyBackend } // namespace Aws