/* * 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 { /// /// Represents the output of a PurchaseReservedCacheNodesOffering operation. /// public partial class ReservedCacheNode { private int? _cacheNodeCount; private string _cacheNodeType; private int? _duration; private double? _fixedPrice; private string _offeringType; private string _productDescription; private List _recurringCharges = new List(); private string _reservationARN; private string _reservedCacheNodeId; private string _reservedCacheNodesOfferingId; private DateTime? _startTime; private string _state; private double? _usagePrice; /// /// Gets and sets the property CacheNodeCount. /// /// The number of cache nodes that have been reserved. /// /// public int CacheNodeCount { get { return this._cacheNodeCount.GetValueOrDefault(); } set { this._cacheNodeCount = value; } } // Check to see if CacheNodeCount property is set internal bool IsSetCacheNodeCount() { return this._cacheNodeCount.HasValue; } /// /// Gets and sets the property CacheNodeType. /// /// The cache node type for the reserved cache nodes. /// /// /// /// 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 reservation 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 reserved cache node. /// /// 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 of this reserved cache node. /// /// 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 description of the reserved cache node. /// /// 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 ReservationARN. /// /// The Amazon Resource Name (ARN) of the reserved cache node. /// /// /// /// Example: arn:aws:elasticache:us-east-1:123456789012:reserved-instance:ri-2017-03-27-08-33-25-582 /// /// /// public string ReservationARN { get { return this._reservationARN; } set { this._reservationARN = value; } } // Check to see if ReservationARN property is set internal bool IsSetReservationARN() { return this._reservationARN != null; } /// /// Gets and sets the property ReservedCacheNodeId. /// /// The unique identifier for the reservation. /// /// public string ReservedCacheNodeId { get { return this._reservedCacheNodeId; } set { this._reservedCacheNodeId = value; } } // Check to see if ReservedCacheNodeId property is set internal bool IsSetReservedCacheNodeId() { return this._reservedCacheNodeId != null; } /// /// Gets and sets the property ReservedCacheNodesOfferingId. /// /// The offering identifier. /// /// 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 StartTime. /// /// The time the reservation started. /// /// public DateTime StartTime { get { return this._startTime.GetValueOrDefault(); } set { this._startTime = value; } } // Check to see if StartTime property is set internal bool IsSetStartTime() { return this._startTime.HasValue; } /// /// Gets and sets the property State. /// /// The state of the reserved cache node. /// /// 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 UsagePrice. /// /// The hourly price charged for this reserved cache node. /// /// 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; } } }