/*
* 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
{
///
/// Container for the parameters to the RebootCacheCluster operation.
/// Reboots some, or all, of the cache nodes within a provisioned cluster. This operation
/// applies any modified cache parameter groups to the cluster. The reboot operation takes
/// place as soon as possible, and results in a momentary outage to the cluster. During
/// the reboot, the cluster status is set to REBOOTING.
///
///
///
/// The reboot causes the contents of the cache (for each cache node being rebooted) to
/// be lost.
///
///
///
/// When the reboot is complete, a cluster event is created.
///
///
///
/// Rebooting a cluster is currently supported on Memcached and Redis (cluster mode disabled)
/// clusters. Rebooting is not supported on Redis (cluster mode enabled) clusters.
///
///
///
/// If you make changes to parameters that require a Redis (cluster mode enabled) cluster
/// reboot for the changes to be applied, see Rebooting
/// a Cluster for an alternate process.
///
///
public partial class RebootCacheClusterRequest : AmazonElastiCacheRequest
{
private string _cacheClusterId;
private List _cacheNodeIdsToReboot = new List();
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public RebootCacheClusterRequest() { }
///
/// Instantiates RebootCacheClusterRequest with the parameterized properties
///
/// The cluster identifier. This parameter is stored as a lowercase string.
/// A list of cache node IDs to reboot. A node ID is a numeric identifier (0001, 0002, etc.). To reboot an entire cluster, specify all of the cache node IDs.
public RebootCacheClusterRequest(string cacheClusterId, List cacheNodeIdsToReboot)
{
_cacheClusterId = cacheClusterId;
_cacheNodeIdsToReboot = cacheNodeIdsToReboot;
}
///
/// Gets and sets the property CacheClusterId.
///
/// The cluster identifier. This parameter is stored as a lowercase string.
///
///
[AWSProperty(Required=true)]
public string CacheClusterId
{
get { return this._cacheClusterId; }
set { this._cacheClusterId = value; }
}
// Check to see if CacheClusterId property is set
internal bool IsSetCacheClusterId()
{
return this._cacheClusterId != null;
}
///
/// Gets and sets the property CacheNodeIdsToReboot.
///
/// A list of cache node IDs to reboot. A node ID is a numeric identifier (0001, 0002,
/// etc.). To reboot an entire cluster, specify all of the cache node IDs.
///
///
[AWSProperty(Required=true)]
public List CacheNodeIdsToReboot
{
get { return this._cacheNodeIdsToReboot; }
set { this._cacheNodeIdsToReboot = value; }
}
// Check to see if CacheNodeIdsToReboot property is set
internal bool IsSetCacheNodeIdsToReboot()
{
return this._cacheNodeIdsToReboot != null && this._cacheNodeIdsToReboot.Count > 0;
}
}
}