/** * 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 Lightsail { namespace Model { /** */ class DeleteBucketRequest : public LightsailRequest { public: AWS_LIGHTSAIL_API DeleteBucketRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DeleteBucket"; } AWS_LIGHTSAIL_API Aws::String SerializePayload() const override; AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

The name of the bucket to delete.

Use the GetBuckets * action to get a list of bucket names that you can specify.

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

A Boolean value that indicates whether to force delete the bucket.

You * must force delete the bucket if it has one of the following conditions:

    *
  • The bucket is the origin of a distribution.

  • The bucket * has instances that were granted access to it using the SetResourceAccessForBucket * action.

  • The bucket has objects.

  • The bucket * has access keys.

Force deleting a bucket might * impact other resources that rely on the bucket, such as instances, * distributions, or software that use the issued access keys.

*/ inline bool GetForceDelete() const{ return m_forceDelete; } /** *

A Boolean value that indicates whether to force delete the bucket.

You * must force delete the bucket if it has one of the following conditions:

    *
  • The bucket is the origin of a distribution.

  • The bucket * has instances that were granted access to it using the SetResourceAccessForBucket * action.

  • The bucket has objects.

  • The bucket * has access keys.

Force deleting a bucket might * impact other resources that rely on the bucket, such as instances, * distributions, or software that use the issued access keys.

*/ inline bool ForceDeleteHasBeenSet() const { return m_forceDeleteHasBeenSet; } /** *

A Boolean value that indicates whether to force delete the bucket.

You * must force delete the bucket if it has one of the following conditions:

    *
  • The bucket is the origin of a distribution.

  • The bucket * has instances that were granted access to it using the SetResourceAccessForBucket * action.

  • The bucket has objects.

  • The bucket * has access keys.

Force deleting a bucket might * impact other resources that rely on the bucket, such as instances, * distributions, or software that use the issued access keys.

*/ inline void SetForceDelete(bool value) { m_forceDeleteHasBeenSet = true; m_forceDelete = value; } /** *

A Boolean value that indicates whether to force delete the bucket.

You * must force delete the bucket if it has one of the following conditions:

    *
  • The bucket is the origin of a distribution.

  • The bucket * has instances that were granted access to it using the SetResourceAccessForBucket * action.

  • The bucket has objects.

  • The bucket * has access keys.

Force deleting a bucket might * impact other resources that rely on the bucket, such as instances, * distributions, or software that use the issued access keys.

*/ inline DeleteBucketRequest& WithForceDelete(bool value) { SetForceDelete(value); return *this;} private: Aws::String m_bucketName; bool m_bucketNameHasBeenSet = false; bool m_forceDelete; bool m_forceDeleteHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws