/** * 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 DeleteRelationalDatabaseRequest : public LightsailRequest { public: AWS_LIGHTSAIL_API DeleteRelationalDatabaseRequest(); // 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 "DeleteRelationalDatabase"; } AWS_LIGHTSAIL_API Aws::String SerializePayload() const override; AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the database that you are deleting.

*/ inline const Aws::String& GetRelationalDatabaseName() const{ return m_relationalDatabaseName; } /** *

The name of the database that you are deleting.

*/ inline bool RelationalDatabaseNameHasBeenSet() const { return m_relationalDatabaseNameHasBeenSet; } /** *

The name of the database that you are deleting.

*/ inline void SetRelationalDatabaseName(const Aws::String& value) { m_relationalDatabaseNameHasBeenSet = true; m_relationalDatabaseName = value; } /** *

The name of the database that you are deleting.

*/ inline void SetRelationalDatabaseName(Aws::String&& value) { m_relationalDatabaseNameHasBeenSet = true; m_relationalDatabaseName = std::move(value); } /** *

The name of the database that you are deleting.

*/ inline void SetRelationalDatabaseName(const char* value) { m_relationalDatabaseNameHasBeenSet = true; m_relationalDatabaseName.assign(value); } /** *

The name of the database that you are deleting.

*/ inline DeleteRelationalDatabaseRequest& WithRelationalDatabaseName(const Aws::String& value) { SetRelationalDatabaseName(value); return *this;} /** *

The name of the database that you are deleting.

*/ inline DeleteRelationalDatabaseRequest& WithRelationalDatabaseName(Aws::String&& value) { SetRelationalDatabaseName(std::move(value)); return *this;} /** *

The name of the database that you are deleting.

*/ inline DeleteRelationalDatabaseRequest& WithRelationalDatabaseName(const char* value) { SetRelationalDatabaseName(value); return *this;} /** *

Determines whether a final database snapshot is created before your database * is deleted. If true is specified, no database snapshot is created. * If false is specified, a database snapshot is created before your * database is deleted.

You must specify the final relational database * snapshot name parameter if the skip final snapshot parameter * is false.

Default: false

*/ inline bool GetSkipFinalSnapshot() const{ return m_skipFinalSnapshot; } /** *

Determines whether a final database snapshot is created before your database * is deleted. If true is specified, no database snapshot is created. * If false is specified, a database snapshot is created before your * database is deleted.

You must specify the final relational database * snapshot name parameter if the skip final snapshot parameter * is false.

Default: false

*/ inline bool SkipFinalSnapshotHasBeenSet() const { return m_skipFinalSnapshotHasBeenSet; } /** *

Determines whether a final database snapshot is created before your database * is deleted. If true is specified, no database snapshot is created. * If false is specified, a database snapshot is created before your * database is deleted.

You must specify the final relational database * snapshot name parameter if the skip final snapshot parameter * is false.

Default: false

*/ inline void SetSkipFinalSnapshot(bool value) { m_skipFinalSnapshotHasBeenSet = true; m_skipFinalSnapshot = value; } /** *

Determines whether a final database snapshot is created before your database * is deleted. If true is specified, no database snapshot is created. * If false is specified, a database snapshot is created before your * database is deleted.

You must specify the final relational database * snapshot name parameter if the skip final snapshot parameter * is false.

Default: false

*/ inline DeleteRelationalDatabaseRequest& WithSkipFinalSnapshot(bool value) { SetSkipFinalSnapshot(value); return *this;} /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline const Aws::String& GetFinalRelationalDatabaseSnapshotName() const{ return m_finalRelationalDatabaseSnapshotName; } /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline bool FinalRelationalDatabaseSnapshotNameHasBeenSet() const { return m_finalRelationalDatabaseSnapshotNameHasBeenSet; } /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline void SetFinalRelationalDatabaseSnapshotName(const Aws::String& value) { m_finalRelationalDatabaseSnapshotNameHasBeenSet = true; m_finalRelationalDatabaseSnapshotName = value; } /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline void SetFinalRelationalDatabaseSnapshotName(Aws::String&& value) { m_finalRelationalDatabaseSnapshotNameHasBeenSet = true; m_finalRelationalDatabaseSnapshotName = std::move(value); } /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline void SetFinalRelationalDatabaseSnapshotName(const char* value) { m_finalRelationalDatabaseSnapshotNameHasBeenSet = true; m_finalRelationalDatabaseSnapshotName.assign(value); } /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline DeleteRelationalDatabaseRequest& WithFinalRelationalDatabaseSnapshotName(const Aws::String& value) { SetFinalRelationalDatabaseSnapshotName(value); return *this;} /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline DeleteRelationalDatabaseRequest& WithFinalRelationalDatabaseSnapshotName(Aws::String&& value) { SetFinalRelationalDatabaseSnapshotName(std::move(value)); return *this;} /** *

The name of the database snapshot created if skip final snapshot * is false, which is the default value for that parameter.

*

Specifying this parameter and also specifying the skip final * snapshot parameter to true results in an error.

*

Constraints:

  • Must contain from 2 to 255 alphanumeric * characters, or hyphens.

  • The first and last character must be a * letter or number.

*/ inline DeleteRelationalDatabaseRequest& WithFinalRelationalDatabaseSnapshotName(const char* value) { SetFinalRelationalDatabaseSnapshotName(value); return *this;} private: Aws::String m_relationalDatabaseName; bool m_relationalDatabaseNameHasBeenSet = false; bool m_skipFinalSnapshot; bool m_skipFinalSnapshotHasBeenSet = false; Aws::String m_finalRelationalDatabaseSnapshotName; bool m_finalRelationalDatabaseSnapshotNameHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws