/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the lightsail-2016-11-28.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Lightsail.Model { /// /// Container for the parameters to the CreateRelationalDatabase operation. /// Creates a new database in Amazon Lightsail. /// /// /// /// The create relational database operation supports tag-based access control /// via request tags. For more information, see the Amazon /// Lightsail Developer Guide. /// /// public partial class CreateRelationalDatabaseRequest : AmazonLightsailRequest { private string _availabilityZone; private string _masterDatabaseName; private string _masterUsername; private string _masterUserPassword; private string _preferredBackupWindow; private string _preferredMaintenanceWindow; private bool? _publiclyAccessible; private string _relationalDatabaseBlueprintId; private string _relationalDatabaseBundleId; private string _relationalDatabaseName; private List _tags = new List(); /// /// Gets and sets the property 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. /// /// public string AvailabilityZone { get { return this._availabilityZone; } set { this._availabilityZone = value; } } // Check to see if AvailabilityZone property is set internal bool IsSetAvailabilityZone() { return this._availabilityZone != null; } /// /// Gets and sets the property 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. /// ///
///
[AWSProperty(Required=true)] public string MasterDatabaseName { get { return this._masterDatabaseName; } set { this._masterDatabaseName = value; } } // Check to see if MasterDatabaseName property is set internal bool IsSetMasterDatabaseName() { return this._masterDatabaseName != null; } /// /// Gets and sets the property 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. /// ///
///
[AWSProperty(Required=true)] public string MasterUsername { get { return this._masterUsername; } set { this._masterUsername = value; } } // Check to see if MasterUsername property is set internal bool IsSetMasterUsername() { return this._masterUsername != null; } /// /// Gets and sets the property 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. /// /// [AWSProperty(Sensitive=true)] public string MasterUserPassword { get { return this._masterUserPassword; } set { this._masterUserPassword = value; } } // Check to see if MasterUserPassword property is set internal bool IsSetMasterUserPassword() { return this._masterUserPassword != null; } /// /// Gets and sets the property 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. /// ///
///
public string PreferredBackupWindow { get { return this._preferredBackupWindow; } set { this._preferredBackupWindow = value; } } // Check to see if PreferredBackupWindow property is set internal bool IsSetPreferredBackupWindow() { return this._preferredBackupWindow != null; } /// /// Gets and sets the property 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 /// ///
///
public string PreferredMaintenanceWindow { get { return this._preferredMaintenanceWindow; } set { this._preferredMaintenanceWindow = value; } } // Check to see if PreferredMaintenanceWindow property is set internal bool IsSetPreferredMaintenanceWindow() { return this._preferredMaintenanceWindow != null; } /// /// Gets and sets the property 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. /// /// public bool PubliclyAccessible { get { return this._publiclyAccessible.GetValueOrDefault(); } set { this._publiclyAccessible = value; } } // Check to see if PubliclyAccessible property is set internal bool IsSetPubliclyAccessible() { return this._publiclyAccessible.HasValue; } /// /// Gets and sets the property 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. /// /// [AWSProperty(Required=true)] public string RelationalDatabaseBlueprintId { get { return this._relationalDatabaseBlueprintId; } set { this._relationalDatabaseBlueprintId = value; } } // Check to see if RelationalDatabaseBlueprintId property is set internal bool IsSetRelationalDatabaseBlueprintId() { return this._relationalDatabaseBlueprintId != null; } /// /// Gets and sets the property 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. /// /// [AWSProperty(Required=true)] public string RelationalDatabaseBundleId { get { return this._relationalDatabaseBundleId; } set { this._relationalDatabaseBundleId = value; } } // Check to see if RelationalDatabaseBundleId property is set internal bool IsSetRelationalDatabaseBundleId() { return this._relationalDatabaseBundleId != null; } /// /// Gets and sets the property 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. /// ///
///
[AWSProperty(Required=true)] public string RelationalDatabaseName { get { return this._relationalDatabaseName; } set { this._relationalDatabaseName = value; } } // Check to see if RelationalDatabaseName property is set internal bool IsSetRelationalDatabaseName() { return this._relationalDatabaseName != null; } /// /// Gets and sets the property 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. /// /// public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } } }