/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Lightsail { namespace Model { /** */ class CreateRelationalDatabaseRequest : public LightsailRequest { public: AWS_LIGHTSAIL_API CreateRelationalDatabaseRequest(); // 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 "CreateRelationalDatabase"; } AWS_LIGHTSAIL_API Aws::String SerializePayload() const override; AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name to use for your new Lightsail database resource.

*

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& GetRelationalDatabaseName() const{ return m_relationalDatabaseName; } /** *

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The name to use for your new Lightsail database resource.

*

Constraints:

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

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

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

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline CreateRelationalDatabaseRequest& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline CreateRelationalDatabaseRequest& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *

The Availability Zone in which to create your new database. Use the * us-east-2a case-sensitive format.

You can get a list of * Availability Zones by using the get regions operation. Be sure to * add the include relational database Availability Zones parameter to * your request.

*/ inline CreateRelationalDatabaseRequest& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline const Aws::String& GetRelationalDatabaseBlueprintId() const{ return m_relationalDatabaseBlueprintId; } /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline bool RelationalDatabaseBlueprintIdHasBeenSet() const { return m_relationalDatabaseBlueprintIdHasBeenSet; } /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline void SetRelationalDatabaseBlueprintId(const Aws::String& value) { m_relationalDatabaseBlueprintIdHasBeenSet = true; m_relationalDatabaseBlueprintId = value; } /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline void SetRelationalDatabaseBlueprintId(Aws::String&& value) { m_relationalDatabaseBlueprintIdHasBeenSet = true; m_relationalDatabaseBlueprintId = std::move(value); } /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline void SetRelationalDatabaseBlueprintId(const char* value) { m_relationalDatabaseBlueprintIdHasBeenSet = true; m_relationalDatabaseBlueprintId.assign(value); } /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBlueprintId(const Aws::String& value) { SetRelationalDatabaseBlueprintId(value); return *this;} /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBlueprintId(Aws::String&& value) { SetRelationalDatabaseBlueprintId(std::move(value)); return *this;} /** *

The blueprint ID for your new database. A blueprint describes the major * engine version of a database.

You can get a list of database blueprints * IDs by using the get relational database blueprints operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBlueprintId(const char* value) { SetRelationalDatabaseBlueprintId(value); return *this;} /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline const Aws::String& GetRelationalDatabaseBundleId() const{ return m_relationalDatabaseBundleId; } /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline bool RelationalDatabaseBundleIdHasBeenSet() const { return m_relationalDatabaseBundleIdHasBeenSet; } /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline void SetRelationalDatabaseBundleId(const Aws::String& value) { m_relationalDatabaseBundleIdHasBeenSet = true; m_relationalDatabaseBundleId = value; } /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline void SetRelationalDatabaseBundleId(Aws::String&& value) { m_relationalDatabaseBundleIdHasBeenSet = true; m_relationalDatabaseBundleId = std::move(value); } /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline void SetRelationalDatabaseBundleId(const char* value) { m_relationalDatabaseBundleIdHasBeenSet = true; m_relationalDatabaseBundleId.assign(value); } /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBundleId(const Aws::String& value) { SetRelationalDatabaseBundleId(value); return *this;} /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBundleId(Aws::String&& value) { SetRelationalDatabaseBundleId(std::move(value)); return *this;} /** *

The bundle ID for your new database. A bundle describes the performance * specifications for your database.

You can get a list of database bundle * IDs by using the get relational database bundles operation.

*/ inline CreateRelationalDatabaseRequest& WithRelationalDatabaseBundleId(const char* value) { SetRelationalDatabaseBundleId(value); return *this;} /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline const Aws::String& GetMasterDatabaseName() const{ return m_masterDatabaseName; } /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline bool MasterDatabaseNameHasBeenSet() const { return m_masterDatabaseNameHasBeenSet; } /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterDatabaseName(const Aws::String& value) { m_masterDatabaseNameHasBeenSet = true; m_masterDatabaseName = value; } /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterDatabaseName(Aws::String&& value) { m_masterDatabaseNameHasBeenSet = true; m_masterDatabaseName = std::move(value); } /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterDatabaseName(const char* value) { m_masterDatabaseNameHasBeenSet = true; m_masterDatabaseName.assign(value); } /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterDatabaseName(const Aws::String& value) { SetMasterDatabaseName(value); return *this;} /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterDatabaseName(Aws::String&& value) { SetMasterDatabaseName(std::move(value)); return *this;} /** *

The meaning of this parameter differs according to the database engine you * use.

MySQL

The name of the database to create when the * Lightsail database resource is created. If this parameter isn't specified, no * database is created in the database resource.

Constraints:

  • *

    Must contain 1 to 64 letters or numbers.

  • Must begin with a * letter. Subsequent characters can be letters, underscores, or digits (0- 9).

    *
  • Can't be a word reserved by the specified database engine.

    *

    For more information about reserved words in MySQL, see the Keywords and * Reserved Words articles for MySQL 5.6, MySQL 5.7, and * MySQL * 8.0.

PostgreSQL

The name of the database * to create when the Lightsail database resource is created. If this parameter * isn't specified, a database named postgres is created in the * database resource.

Constraints:

  • Must contain 1 to 63 * letters or numbers.

  • Must begin with a letter. Subsequent * characters can be letters, underscores, or digits (0- 9).

  • *

    Can't be a word reserved by the specified database engine.

    For more * information about reserved words in PostgreSQL, see the SQL Key Words articles * for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterDatabaseName(const char* value) { SetMasterDatabaseName(value); return *this;} /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline const Aws::String& GetMasterUsername() const{ return m_masterUsername; } /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline bool MasterUsernameHasBeenSet() const { return m_masterUsernameHasBeenSet; } /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterUsername(const Aws::String& value) { m_masterUsernameHasBeenSet = true; m_masterUsername = value; } /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterUsername(Aws::String&& value) { m_masterUsernameHasBeenSet = true; m_masterUsername = std::move(value); } /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline void SetMasterUsername(const char* value) { m_masterUsernameHasBeenSet = true; m_masterUsername.assign(value); } /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterUsername(const Aws::String& value) { SetMasterUsername(value); return *this;} /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterUsername(Aws::String&& value) { SetMasterUsername(std::move(value)); return *this;} /** *

The name for the master user.

MySQL

Constraints:

*
  • Required for MySQL.

  • Must be 1 to 16 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for MySQL 5.6, MySQL 5.7, or * MySQL * 8.0.

PostgreSQL

Constraints:

    *
  • Required for PostgreSQL.

  • Must be 1 to 63 letters or * numbers. Can contain underscores.

  • First character must be a * letter.

  • Can't be a reserved word for the chosen database * engine.

    For more information about reserved words in MySQL 5.6 or 5.7, * see the Keywords and Reserved Words articles for PostgreSQL * 9.6, PostgreSQL * 10, PostgreSQL * 11, and PostgreSQL * 12.

*/ inline CreateRelationalDatabaseRequest& WithMasterUsername(const char* value) { SetMasterUsername(value); return *this;} /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline const Aws::String& GetMasterUserPassword() const{ return m_masterUserPassword; } /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline bool MasterUserPasswordHasBeenSet() const { return m_masterUserPasswordHasBeenSet; } /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline void SetMasterUserPassword(const Aws::String& value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword = value; } /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline void SetMasterUserPassword(Aws::String&& value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword = std::move(value); } /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline void SetMasterUserPassword(const char* value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword.assign(value); } /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline CreateRelationalDatabaseRequest& WithMasterUserPassword(const Aws::String& value) { SetMasterUserPassword(value); return *this;} /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline CreateRelationalDatabaseRequest& WithMasterUserPassword(Aws::String&& value) { SetMasterUserPassword(std::move(value)); return *this;} /** *

The password for the master user. The password can include any printable * ASCII character except "/", """, or "@". It cannot contain spaces.

* MySQL

Constraints: Must contain from 8 to 41 characters.

* PostgreSQL

Constraints: Must contain from 8 to 128 * characters.

*/ inline CreateRelationalDatabaseRequest& WithMasterUserPassword(const char* value) { SetMasterUserPassword(value); return *this;} /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline const Aws::String& GetPreferredBackupWindow() const{ return m_preferredBackupWindow; } /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline bool PreferredBackupWindowHasBeenSet() const { return m_preferredBackupWindowHasBeenSet; } /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline void SetPreferredBackupWindow(const Aws::String& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = value; } /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline void SetPreferredBackupWindow(Aws::String&& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = std::move(value); } /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline void SetPreferredBackupWindow(const char* value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow.assign(value); } /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline CreateRelationalDatabaseRequest& WithPreferredBackupWindow(const Aws::String& value) { SetPreferredBackupWindow(value); return *this;} /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline CreateRelationalDatabaseRequest& WithPreferredBackupWindow(Aws::String&& value) { SetPreferredBackupWindow(std::move(value)); return *this;} /** *

The daily time range during which automated backups are created for your new * database if automated backups are enabled.

The default is a 30-minute * window selected at random from an 8-hour block of time for each AWS Region. For * more information about the preferred backup window time blocks for each region, * see the Working * With Backups guide in the Amazon Relational Database Service * documentation.

Constraints:

  • Must be in the * hh24:mi-hh24:mi format.

    Example: 16:00-16:30 *

  • Specified in Coordinated Universal Time (UTC).

  • *

    Must not conflict with the preferred maintenance window.

  • *

    Must be at least 30 minutes.

*/ inline CreateRelationalDatabaseRequest& WithPreferredBackupWindow(const char* value) { SetPreferredBackupWindow(value); return *this;} /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline const Aws::String& GetPreferredMaintenanceWindow() const{ return m_preferredMaintenanceWindow; } /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; } /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline void SetPreferredMaintenanceWindow(const Aws::String& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = value; } /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline void SetPreferredMaintenanceWindow(Aws::String&& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = std::move(value); } /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline void SetPreferredMaintenanceWindow(const char* value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow.assign(value); } /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline CreateRelationalDatabaseRequest& WithPreferredMaintenanceWindow(const Aws::String& value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline CreateRelationalDatabaseRequest& WithPreferredMaintenanceWindow(Aws::String&& value) { SetPreferredMaintenanceWindow(std::move(value)); return *this;} /** *

The weekly time range during which system maintenance can occur on your new * database.

The default is a 30-minute window selected at random from an * 8-hour block of time for each AWS Region, occurring on a random day of the * week.

Constraints:

  • Must be in the * ddd:hh24:mi-ddd:hh24:mi format.

  • Valid days: Mon, * Tue, Wed, Thu, Fri, Sat, Sun.

  • Must be at least 30 minutes.

    *
  • Specified in Coordinated Universal Time (UTC).

  • *

    Example: Tue:17:00-Tue:17:30

*/ inline CreateRelationalDatabaseRequest& WithPreferredMaintenanceWindow(const char* value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

Specifies the accessibility options for your new database. A value of * true specifies a database that is available to resources outside of * your Lightsail account. A value of false specifies a database that * is available only to your Lightsail resources in the same region as your * database.

*/ inline bool GetPubliclyAccessible() const{ return m_publiclyAccessible; } /** *

Specifies the accessibility options for your new database. A value of * true specifies a database that is available to resources outside of * your Lightsail account. A value of false specifies a database that * is available only to your Lightsail resources in the same region as your * database.

*/ inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; } /** *

Specifies the accessibility options for your new database. A value of * true specifies a database that is available to resources outside of * your Lightsail account. A value of false specifies a database that * is available only to your Lightsail resources in the same region as your * database.

*/ inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; } /** *

Specifies the accessibility options for your new database. A value of * true specifies a database that is available to resources outside of * your Lightsail account. A value of false specifies a database that * is available only to your Lightsail resources in the same region as your * database.

*/ inline CreateRelationalDatabaseRequest& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;} /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline CreateRelationalDatabaseRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline CreateRelationalDatabaseRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline CreateRelationalDatabaseRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tag keys and optional values to add to the resource during create.

*

Use the TagResource action to tag a resource after it's * created.

*/ inline CreateRelationalDatabaseRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_relationalDatabaseName; bool m_relationalDatabaseNameHasBeenSet = false; Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; Aws::String m_relationalDatabaseBlueprintId; bool m_relationalDatabaseBlueprintIdHasBeenSet = false; Aws::String m_relationalDatabaseBundleId; bool m_relationalDatabaseBundleIdHasBeenSet = false; Aws::String m_masterDatabaseName; bool m_masterDatabaseNameHasBeenSet = false; Aws::String m_masterUsername; bool m_masterUsernameHasBeenSet = false; Aws::String m_masterUserPassword; bool m_masterUserPasswordHasBeenSet = false; Aws::String m_preferredBackupWindow; bool m_preferredBackupWindowHasBeenSet = false; Aws::String m_preferredMaintenanceWindow; bool m_preferredMaintenanceWindowHasBeenSet = false; bool m_publiclyAccessible; bool m_publiclyAccessibleHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws