/*
* 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
{
///
/// Describes a database.
///
public partial class RelationalDatabase
{
private string _arn;
private bool? _backupRetentionEnabled;
private string _caCertificateIdentifier;
private DateTime? _createdAt;
private string _engine;
private string _engineVersion;
private RelationalDatabaseHardware _hardware;
private DateTime? _latestRestorableTime;
private ResourceLocation _location;
private string _masterDatabaseName;
private RelationalDatabaseEndpoint _masterEndpoint;
private string _masterUsername;
private string _name;
private string _parameterApplyStatus;
private List _pendingMaintenanceActions = new List();
private PendingModifiedRelationalDatabaseValues _pendingModifiedValues;
private string _preferredBackupWindow;
private string _preferredMaintenanceWindow;
private bool? _publiclyAccessible;
private string _relationalDatabaseBlueprintId;
private string _relationalDatabaseBundleId;
private ResourceType _resourceType;
private string _secondaryAvailabilityZone;
private string _state;
private string _supportCode;
private List _tags = new List();
///
/// Gets and sets the property Arn.
///
/// The Amazon Resource Name (ARN) of the database.
///
///
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// Gets and sets the property BackupRetentionEnabled.
///
/// A Boolean value indicating whether automated backup retention is enabled for the database.
///
///
public bool BackupRetentionEnabled
{
get { return this._backupRetentionEnabled.GetValueOrDefault(); }
set { this._backupRetentionEnabled = value; }
}
// Check to see if BackupRetentionEnabled property is set
internal bool IsSetBackupRetentionEnabled()
{
return this._backupRetentionEnabled.HasValue;
}
///
/// Gets and sets the property CaCertificateIdentifier.
///
/// The certificate associated with the database.
///
///
public string CaCertificateIdentifier
{
get { return this._caCertificateIdentifier; }
set { this._caCertificateIdentifier = value; }
}
// Check to see if CaCertificateIdentifier property is set
internal bool IsSetCaCertificateIdentifier()
{
return this._caCertificateIdentifier != null;
}
///
/// Gets and sets the property CreatedAt.
///
/// The timestamp when the database was created. Formatted in Unix time.
///
///
public DateTime CreatedAt
{
get { return this._createdAt.GetValueOrDefault(); }
set { this._createdAt = value; }
}
// Check to see if CreatedAt property is set
internal bool IsSetCreatedAt()
{
return this._createdAt.HasValue;
}
///
/// Gets and sets the property Engine.
///
/// The database software (for example, MySQL
).
///
///
public string Engine
{
get { return this._engine; }
set { this._engine = value; }
}
// Check to see if Engine property is set
internal bool IsSetEngine()
{
return this._engine != null;
}
///
/// Gets and sets the property EngineVersion.
///
/// The database engine version (for example, 5.7.23
).
///
///
public string EngineVersion
{
get { return this._engineVersion; }
set { this._engineVersion = value; }
}
// Check to see if EngineVersion property is set
internal bool IsSetEngineVersion()
{
return this._engineVersion != null;
}
///
/// Gets and sets the property Hardware.
///
/// Describes the hardware of the database.
///
///
public RelationalDatabaseHardware Hardware
{
get { return this._hardware; }
set { this._hardware = value; }
}
// Check to see if Hardware property is set
internal bool IsSetHardware()
{
return this._hardware != null;
}
///
/// Gets and sets the property LatestRestorableTime.
///
/// The latest point in time to which the database can be restored. Formatted in Unix
/// time.
///
///
public DateTime LatestRestorableTime
{
get { return this._latestRestorableTime.GetValueOrDefault(); }
set { this._latestRestorableTime = value; }
}
// Check to see if LatestRestorableTime property is set
internal bool IsSetLatestRestorableTime()
{
return this._latestRestorableTime.HasValue;
}
///
/// Gets and sets the property Location.
///
/// The Region name and Availability Zone where the database is located.
///
///
public ResourceLocation Location
{
get { return this._location; }
set { this._location = value; }
}
// Check to see if Location property is set
internal bool IsSetLocation()
{
return this._location != null;
}
///
/// Gets and sets the property MasterDatabaseName.
///
/// The name of the master database created when the Lightsail database resource is created.
///
///
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 MasterEndpoint.
///
/// The master endpoint for the database.
///
///
public RelationalDatabaseEndpoint MasterEndpoint
{
get { return this._masterEndpoint; }
set { this._masterEndpoint = value; }
}
// Check to see if MasterEndpoint property is set
internal bool IsSetMasterEndpoint()
{
return this._masterEndpoint != null;
}
///
/// Gets and sets the property MasterUsername.
///
/// The master user name of the database.
///
///
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 Name.
///
/// The unique name of the database resource in Lightsail.
///
///
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property ParameterApplyStatus.
///
/// The status of parameter updates for the database.
///
///
public string ParameterApplyStatus
{
get { return this._parameterApplyStatus; }
set { this._parameterApplyStatus = value; }
}
// Check to see if ParameterApplyStatus property is set
internal bool IsSetParameterApplyStatus()
{
return this._parameterApplyStatus != null;
}
///
/// Gets and sets the property PendingMaintenanceActions.
///
/// Describes the pending maintenance actions for the database.
///
///
public List PendingMaintenanceActions
{
get { return this._pendingMaintenanceActions; }
set { this._pendingMaintenanceActions = value; }
}
// Check to see if PendingMaintenanceActions property is set
internal bool IsSetPendingMaintenanceActions()
{
return this._pendingMaintenanceActions != null && this._pendingMaintenanceActions.Count > 0;
}
///
/// Gets and sets the property PendingModifiedValues.
///
/// Describes pending database value modifications.
///
///
public PendingModifiedRelationalDatabaseValues PendingModifiedValues
{
get { return this._pendingModifiedValues; }
set { this._pendingModifiedValues = value; }
}
// Check to see if PendingModifiedValues property is set
internal bool IsSetPendingModifiedValues()
{
return this._pendingModifiedValues != null;
}
///
/// Gets and sets the property PreferredBackupWindow.
///
/// The daily time range during which automated backups are created for the database (for
/// example, 16:00-16:30
).
///
///
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 the database.
///
///
///
/// In the format ddd:hh24:mi-ddd:hh24:mi
. For 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.
///
/// A Boolean value indicating whether the database is publicly accessible.
///
///
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 the database. A blueprint describes the major engine version
/// of a database.
///
///
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 the database. A bundle describes the performance specifications
/// for your database.
///
///
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 ResourceType.
///
/// The Lightsail resource type for the database (for example, RelationalDatabase
).
///
///
public ResourceType ResourceType
{
get { return this._resourceType; }
set { this._resourceType = value; }
}
// Check to see if ResourceType property is set
internal bool IsSetResourceType()
{
return this._resourceType != null;
}
///
/// Gets and sets the property SecondaryAvailabilityZone.
///
/// Describes the secondary Availability Zone of a high availability database.
///
///
///
/// The secondary database is used for failover support of a high availability database.
///
///
public string SecondaryAvailabilityZone
{
get { return this._secondaryAvailabilityZone; }
set { this._secondaryAvailabilityZone = value; }
}
// Check to see if SecondaryAvailabilityZone property is set
internal bool IsSetSecondaryAvailabilityZone()
{
return this._secondaryAvailabilityZone != null;
}
///
/// Gets and sets the property State.
///
/// Describes the current state of the database.
///
///
public string State
{
get { return this._state; }
set { this._state = value; }
}
// Check to see if State property is set
internal bool IsSetState()
{
return this._state != null;
}
///
/// Gets and sets the property SupportCode.
///
/// The support code for the database. Include this code in your email to support when
/// you have questions about a database in Lightsail. This code enables our support team
/// to look up your Lightsail information more easily.
///
///
public string SupportCode
{
get { return this._supportCode; }
set { this._supportCode = value; }
}
// Check to see if SupportCode property is set
internal bool IsSetSupportCode()
{
return this._supportCode != null;
}
///
/// Gets and sets the property Tags.
///
/// The tag keys and optional values for the resource. For more information about tags
/// in Lightsail, see the Amazon
/// Lightsail Developer Guide.
///
///
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;
}
}
}