/* * 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 elasticache-2015-02-02.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.ElastiCache.Model { /// /// Describes all of the attributes of a reserved cache node offering. /// public partial class ReservedCacheNodesOffering { private string _cacheNodeType; private int? _duration; private double? _fixedPrice; private string _offeringType; private string _productDescription; private List _recurringCharges = new List(); private string _reservedCacheNodesOfferingId; private double? _usagePrice; /// /// Gets and sets the property CacheNodeType. /// /// The cache node type for the reserved cache node. /// /// /// /// The following node types are supported by ElastiCache. Generally speaking, the current /// generation types provide more memory and computational power at lower cost when compared /// to their equivalent previous generation counterparts. /// ///
  • /// /// General purpose: /// ///
    • /// /// Current generation: /// /// /// /// M6g node types (available only for Redis engine version 5.0.6 onward and for /// Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, /// cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, /// cache.m6g.12xlarge, cache.m6g.16xlarge /// /// /// /// For region availability, see Supported /// Node Types /// /// /// /// M5 node types: cache.m5.large, cache.m5.xlarge, /// cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, /// cache.m5.24xlarge /// /// /// /// M4 node types: cache.m4.large, cache.m4.xlarge, /// cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge /// /// /// /// /// T4g node types (available only for Redis engine version 5.0.6 onward and Memcached /// engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, /// cache.t4g.medium /// /// /// /// T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium /// /// /// /// /// T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium /// /// ///
    • /// /// Previous generation: (not recommended. Existing clusters are still supported but creation /// of new clusters is not supported for these types.) /// /// /// /// T1 node types: cache.t1.micro /// /// /// /// M1 node types: cache.m1.small, cache.m1.medium, /// cache.m1.large, cache.m1.xlarge /// /// /// /// M3 node types: cache.m3.medium, cache.m3.large, /// cache.m3.xlarge, cache.m3.2xlarge /// ///
  • /// /// Compute optimized: /// ///
    • /// /// Previous generation: (not recommended. Existing clusters are still supported but creation /// of new clusters is not supported for these types.) /// /// /// /// C1 node types: cache.c1.xlarge /// ///
  • /// /// Memory optimized: /// ///
    • /// /// Current generation: /// /// /// /// R6g node types (available only for Redis engine version 5.0.6 onward and for /// Memcached engine version 1.5.16 onward). /// /// /// /// cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, /// cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, /// cache.r6g.16xlarge /// /// /// /// For region availability, see Supported /// Node Types /// /// /// /// R5 node types: cache.r5.large, cache.r5.xlarge, /// cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, /// cache.r5.24xlarge /// /// /// /// R4 node types: cache.r4.large, cache.r4.xlarge, /// cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, /// cache.r4.16xlarge /// ///
    • /// /// Previous generation: (not recommended. Existing clusters are still supported but creation /// of new clusters is not supported for these types.) /// /// /// /// M2 node types: cache.m2.xlarge, cache.m2.2xlarge, /// cache.m2.4xlarge /// /// /// /// R3 node types: cache.r3.large, cache.r3.xlarge, /// cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge /// /// ///
/// /// Additional node type info /// ///
  • /// /// All current generation instance types are created in Amazon VPC by default. /// ///
  • /// /// Redis append-only files (AOF) are not supported for T1 or T2 instances. /// ///
  • /// /// Redis Multi-AZ with automatic failover is not supported on T1 instances. /// ///
  • /// /// Redis configuration variables appendonly and appendfsync /// are not supported on Redis version 2.8.22 and later. /// ///
///
public string CacheNodeType { get { return this._cacheNodeType; } set { this._cacheNodeType = value; } } // Check to see if CacheNodeType property is set internal bool IsSetCacheNodeType() { return this._cacheNodeType != null; } /// /// Gets and sets the property Duration. /// /// The duration of the offering. in seconds. /// /// public int Duration { get { return this._duration.GetValueOrDefault(); } set { this._duration = value; } } // Check to see if Duration property is set internal bool IsSetDuration() { return this._duration.HasValue; } /// /// Gets and sets the property FixedPrice. /// /// The fixed price charged for this offering. /// /// public double FixedPrice { get { return this._fixedPrice.GetValueOrDefault(); } set { this._fixedPrice = value; } } // Check to see if FixedPrice property is set internal bool IsSetFixedPrice() { return this._fixedPrice.HasValue; } /// /// Gets and sets the property OfferingType. /// /// The offering type. /// /// public string OfferingType { get { return this._offeringType; } set { this._offeringType = value; } } // Check to see if OfferingType property is set internal bool IsSetOfferingType() { return this._offeringType != null; } /// /// Gets and sets the property ProductDescription. /// /// The cache engine used by the offering. /// /// public string ProductDescription { get { return this._productDescription; } set { this._productDescription = value; } } // Check to see if ProductDescription property is set internal bool IsSetProductDescription() { return this._productDescription != null; } /// /// Gets and sets the property RecurringCharges. /// /// The recurring price charged to run this reserved cache node. /// /// public List RecurringCharges { get { return this._recurringCharges; } set { this._recurringCharges = value; } } // Check to see if RecurringCharges property is set internal bool IsSetRecurringCharges() { return this._recurringCharges != null && this._recurringCharges.Count > 0; } /// /// Gets and sets the property ReservedCacheNodesOfferingId. /// /// A unique identifier for the reserved cache node offering. /// /// public string ReservedCacheNodesOfferingId { get { return this._reservedCacheNodesOfferingId; } set { this._reservedCacheNodesOfferingId = value; } } // Check to see if ReservedCacheNodesOfferingId property is set internal bool IsSetReservedCacheNodesOfferingId() { return this._reservedCacheNodesOfferingId != null; } /// /// Gets and sets the property UsagePrice. /// /// The hourly price charged for this offering. /// /// public double UsagePrice { get { return this._usagePrice.GetValueOrDefault(); } set { this._usagePrice = value; } } // Check to see if UsagePrice property is set internal bool IsSetUsagePrice() { return this._usagePrice.HasValue; } } }