/* * 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 dms-2016-01-01.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.DatabaseMigrationService.Model { /// /// Container for the parameters to the CreateReplicationInstance operation. /// Creates the replication instance using the specified parameters. /// /// /// /// DMS requires that your account have certain roles with appropriate permissions before /// you can create a replication instance. For information on the required roles, see /// Creating /// the IAM Roles to Use With the CLI and DMS API. For information on the required /// permissions, see IAM /// Permissions Needed to Use DMS. /// /// public partial class CreateReplicationInstanceRequest : AmazonDatabaseMigrationServiceRequest { private int? _allocatedStorage; private bool? _autoMinorVersionUpgrade; private string _availabilityZone; private string _dnsNameServers; private string _engineVersion; private string _kmsKeyId; private bool? _multiAZ; private string _networkType; private string _preferredMaintenanceWindow; private bool? _publiclyAccessible; private string _replicationInstanceClass; private string _replicationInstanceIdentifier; private string _replicationSubnetGroupIdentifier; private string _resourceIdentifier; private List _tags = new List(); private List _vpcSecurityGroupIds = new List(); /// /// Gets and sets the property AllocatedStorage. /// /// The amount of storage (in gigabytes) to be initially allocated for the replication /// instance. /// /// public int AllocatedStorage { get { return this._allocatedStorage.GetValueOrDefault(); } set { this._allocatedStorage = value; } } // Check to see if AllocatedStorage property is set internal bool IsSetAllocatedStorage() { return this._allocatedStorage.HasValue; } /// /// Gets and sets the property AutoMinorVersionUpgrade. /// /// A value that indicates whether minor engine upgrades are applied automatically to /// the replication instance during the maintenance window. This parameter defaults to /// true. /// /// /// /// Default: true /// /// /// /// When AutoMinorVersionUpgrade is enabled, DMS uses the current default /// engine version when you create a replication instance. For example, if you set EngineVersion /// to a lower version number than the current default version, DMS uses the default version. /// /// /// /// If AutoMinorVersionUpgrade isn’t enabled when you create a replication /// instance, DMS uses the engine version specified by the EngineVersion /// parameter. /// /// public bool AutoMinorVersionUpgrade { get { return this._autoMinorVersionUpgrade.GetValueOrDefault(); } set { this._autoMinorVersionUpgrade = value; } } // Check to see if AutoMinorVersionUpgrade property is set internal bool IsSetAutoMinorVersionUpgrade() { return this._autoMinorVersionUpgrade.HasValue; } /// /// Gets and sets the property AvailabilityZone. /// /// The Availability Zone where the replication instance will be created. The default /// value is a random, system-chosen Availability Zone in the endpoint's Amazon Web Services /// Region, for example: us-east-1d. /// /// 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 DnsNameServers. /// /// A list of custom DNS name servers supported for the replication instance to access /// your on-premise source or target database. This list overrides the default name servers /// supported by the replication instance. You can specify a comma-separated list of internet /// addresses for up to four on-premise DNS name servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4" /// /// /// public string DnsNameServers { get { return this._dnsNameServers; } set { this._dnsNameServers = value; } } // Check to see if DnsNameServers property is set internal bool IsSetDnsNameServers() { return this._dnsNameServers != null; } /// /// Gets and sets the property EngineVersion. /// /// The engine version number of the replication instance. /// /// /// /// If an engine version number is not specified when a replication instance is created, /// the default is the latest engine version available. /// /// 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 KmsKeyId. /// /// An KMS key identifier that is used to encrypt the data on the replication instance. /// /// /// /// If you don't specify a value for the KmsKeyId parameter, then DMS uses /// your default encryption key. /// /// /// /// KMS creates the default encryption key for your Amazon Web Services account. Your /// Amazon Web Services account has a different default encryption key for each Amazon /// Web Services Region. /// /// public string KmsKeyId { get { return this._kmsKeyId; } set { this._kmsKeyId = value; } } // Check to see if KmsKeyId property is set internal bool IsSetKmsKeyId() { return this._kmsKeyId != null; } /// /// Gets and sets the property MultiAZ. /// /// Specifies whether the replication instance is a Multi-AZ deployment. You can't set /// the AvailabilityZone parameter if the Multi-AZ parameter is set to true. /// /// /// public bool MultiAZ { get { return this._multiAZ.GetValueOrDefault(); } set { this._multiAZ = value; } } // Check to see if MultiAZ property is set internal bool IsSetMultiAZ() { return this._multiAZ.HasValue; } /// /// Gets and sets the property NetworkType. /// /// The type of IP address protocol used by a replication instance, such as IPv4 only /// or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported. /// /// public string NetworkType { get { return this._networkType; } set { this._networkType = value; } } // Check to see if NetworkType property is set internal bool IsSetNetworkType() { return this._networkType != null; } /// /// Gets and sets the property PreferredMaintenanceWindow. /// /// The weekly time range during which system maintenance can occur, in Universal Coordinated /// Time (UTC). /// /// /// /// Format: ddd:hh24:mi-ddd:hh24:mi /// /// /// /// Default: A 30-minute window selected at random from an 8-hour block of time per Amazon /// Web Services Region, occurring on a random day of the week. /// /// /// /// Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun /// /// /// /// Constraints: Minimum 30-minute window. /// /// 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 the replication instance. A value of true /// represents an instance with a public IP address. A value of false represents /// an instance with a private IP address. The default value is true. /// /// 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 ReplicationInstanceClass. /// /// The compute and memory capacity of the replication instance as defined for the specified /// replication instance class. For example to specify the instance class dms.c4.large, /// set this parameter to "dms.c4.large". /// /// /// /// For more information on the settings and capacities for the available replication /// instance classes, see Choosing the right DMS replication instance; and, Selecting /// the best size for a replication instance. /// /// [AWSProperty(Required=true)] public string ReplicationInstanceClass { get { return this._replicationInstanceClass; } set { this._replicationInstanceClass = value; } } // Check to see if ReplicationInstanceClass property is set internal bool IsSetReplicationInstanceClass() { return this._replicationInstanceClass != null; } /// /// Gets and sets the property ReplicationInstanceIdentifier. /// /// The replication instance identifier. This parameter is stored as a lowercase string. /// /// /// /// Constraints: /// ///
  • /// /// Must contain 1-63 alphanumeric characters or hyphens. /// ///
  • /// /// First character must be a letter. /// ///
  • /// /// Can't end with a hyphen or contain two consecutive hyphens. /// ///
/// /// Example: myrepinstance /// ///
[AWSProperty(Required=true)] public string ReplicationInstanceIdentifier { get { return this._replicationInstanceIdentifier; } set { this._replicationInstanceIdentifier = value; } } // Check to see if ReplicationInstanceIdentifier property is set internal bool IsSetReplicationInstanceIdentifier() { return this._replicationInstanceIdentifier != null; } /// /// Gets and sets the property ReplicationSubnetGroupIdentifier. /// /// A subnet group to associate with the replication instance. /// /// public string ReplicationSubnetGroupIdentifier { get { return this._replicationSubnetGroupIdentifier; } set { this._replicationSubnetGroupIdentifier = value; } } // Check to see if ReplicationSubnetGroupIdentifier property is set internal bool IsSetReplicationSubnetGroupIdentifier() { return this._replicationSubnetGroupIdentifier != null; } /// /// Gets and sets the property ResourceIdentifier. /// /// A friendly name for the resource identifier at the end of the EndpointArn /// response parameter that is returned in the created Endpoint object. The /// value for this parameter can have up to 31 characters. It can contain only ASCII letters, /// digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two consecutive /// hyphens, and can only begin with a letter, such as Example-App-ARN1. /// For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1. /// If you don't specify a ResourceIdentifier value, DMS generates a default /// identifier value for the end of EndpointArn. /// /// public string ResourceIdentifier { get { return this._resourceIdentifier; } set { this._resourceIdentifier = value; } } // Check to see if ResourceIdentifier property is set internal bool IsSetResourceIdentifier() { return this._resourceIdentifier != null; } /// /// Gets and sets the property Tags. /// /// One or more tags to be assigned to the replication instance. /// /// 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; } /// /// Gets and sets the property VpcSecurityGroupIds. /// /// Specifies the VPC security group to be used with the replication instance. The VPC /// security group must work with the VPC containing the replication instance. /// /// public List VpcSecurityGroupIds { get { return this._vpcSecurityGroupIds; } set { this._vpcSecurityGroupIds = value; } } // Check to see if VpcSecurityGroupIds property is set internal bool IsSetVpcSecurityGroupIds() { return this._vpcSecurityGroupIds != null && this._vpcSecurityGroupIds.Count > 0; } } }