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

The resource configuration for updating backend storage.

See * Also:

AWS * API Reference

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

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 UpdateBackendStorageResourceConfig& WithPermissions(const BackendStoragePermissions& value) { SetPermissions(value); return *this;} /** *

The authorization configuration for the storage S3 bucket.

*/ inline UpdateBackendStorageResourceConfig& 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 UpdateBackendStorageResourceConfig& WithServiceName(const ServiceName& value) { SetServiceName(value); return *this;} /** *

The name of the storage service.

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