/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents an individual cache node in a snapshot of a cluster.See
* Also:
AWS
* API Reference
A unique identifier for the source cluster.
*/ inline const Aws::String& GetCacheClusterId() const{ return m_cacheClusterId; } /** *A unique identifier for the source cluster.
*/ inline bool CacheClusterIdHasBeenSet() const { return m_cacheClusterIdHasBeenSet; } /** *A unique identifier for the source cluster.
*/ inline void SetCacheClusterId(const Aws::String& value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId = value; } /** *A unique identifier for the source cluster.
*/ inline void SetCacheClusterId(Aws::String&& value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId = std::move(value); } /** *A unique identifier for the source cluster.
*/ inline void SetCacheClusterId(const char* value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId.assign(value); } /** *A unique identifier for the source cluster.
*/ inline NodeSnapshot& WithCacheClusterId(const Aws::String& value) { SetCacheClusterId(value); return *this;} /** *A unique identifier for the source cluster.
*/ inline NodeSnapshot& WithCacheClusterId(Aws::String&& value) { SetCacheClusterId(std::move(value)); return *this;} /** *A unique identifier for the source cluster.
*/ inline NodeSnapshot& WithCacheClusterId(const char* value) { SetCacheClusterId(value); return *this;} /** *A unique identifier for the source node group (shard).
*/ inline const Aws::String& GetNodeGroupId() const{ return m_nodeGroupId; } /** *A unique identifier for the source node group (shard).
*/ inline bool NodeGroupIdHasBeenSet() const { return m_nodeGroupIdHasBeenSet; } /** *A unique identifier for the source node group (shard).
*/ inline void SetNodeGroupId(const Aws::String& value) { m_nodeGroupIdHasBeenSet = true; m_nodeGroupId = value; } /** *A unique identifier for the source node group (shard).
*/ inline void SetNodeGroupId(Aws::String&& value) { m_nodeGroupIdHasBeenSet = true; m_nodeGroupId = std::move(value); } /** *A unique identifier for the source node group (shard).
*/ inline void SetNodeGroupId(const char* value) { m_nodeGroupIdHasBeenSet = true; m_nodeGroupId.assign(value); } /** *A unique identifier for the source node group (shard).
*/ inline NodeSnapshot& WithNodeGroupId(const Aws::String& value) { SetNodeGroupId(value); return *this;} /** *A unique identifier for the source node group (shard).
*/ inline NodeSnapshot& WithNodeGroupId(Aws::String&& value) { SetNodeGroupId(std::move(value)); return *this;} /** *A unique identifier for the source node group (shard).
*/ inline NodeSnapshot& WithNodeGroupId(const char* value) { SetNodeGroupId(value); return *this;} /** *The cache node identifier for the node in the source cluster.
*/ inline const Aws::String& GetCacheNodeId() const{ return m_cacheNodeId; } /** *The cache node identifier for the node in the source cluster.
*/ inline bool CacheNodeIdHasBeenSet() const { return m_cacheNodeIdHasBeenSet; } /** *The cache node identifier for the node in the source cluster.
*/ inline void SetCacheNodeId(const Aws::String& value) { m_cacheNodeIdHasBeenSet = true; m_cacheNodeId = value; } /** *The cache node identifier for the node in the source cluster.
*/ inline void SetCacheNodeId(Aws::String&& value) { m_cacheNodeIdHasBeenSet = true; m_cacheNodeId = std::move(value); } /** *The cache node identifier for the node in the source cluster.
*/ inline void SetCacheNodeId(const char* value) { m_cacheNodeIdHasBeenSet = true; m_cacheNodeId.assign(value); } /** *The cache node identifier for the node in the source cluster.
*/ inline NodeSnapshot& WithCacheNodeId(const Aws::String& value) { SetCacheNodeId(value); return *this;} /** *The cache node identifier for the node in the source cluster.
*/ inline NodeSnapshot& WithCacheNodeId(Aws::String&& value) { SetCacheNodeId(std::move(value)); return *this;} /** *The cache node identifier for the node in the source cluster.
*/ inline NodeSnapshot& WithCacheNodeId(const char* value) { SetCacheNodeId(value); return *this;} /** *The configuration for the source node group (shard).
*/ inline const NodeGroupConfiguration& GetNodeGroupConfiguration() const{ return m_nodeGroupConfiguration; } /** *The configuration for the source node group (shard).
*/ inline bool NodeGroupConfigurationHasBeenSet() const { return m_nodeGroupConfigurationHasBeenSet; } /** *The configuration for the source node group (shard).
*/ inline void SetNodeGroupConfiguration(const NodeGroupConfiguration& value) { m_nodeGroupConfigurationHasBeenSet = true; m_nodeGroupConfiguration = value; } /** *The configuration for the source node group (shard).
*/ inline void SetNodeGroupConfiguration(NodeGroupConfiguration&& value) { m_nodeGroupConfigurationHasBeenSet = true; m_nodeGroupConfiguration = std::move(value); } /** *The configuration for the source node group (shard).
*/ inline NodeSnapshot& WithNodeGroupConfiguration(const NodeGroupConfiguration& value) { SetNodeGroupConfiguration(value); return *this;} /** *The configuration for the source node group (shard).
*/ inline NodeSnapshot& WithNodeGroupConfiguration(NodeGroupConfiguration&& value) { SetNodeGroupConfiguration(std::move(value)); return *this;} /** *The size of the cache on the source cache node.
*/ inline const Aws::String& GetCacheSize() const{ return m_cacheSize; } /** *The size of the cache on the source cache node.
*/ inline bool CacheSizeHasBeenSet() const { return m_cacheSizeHasBeenSet; } /** *The size of the cache on the source cache node.
*/ inline void SetCacheSize(const Aws::String& value) { m_cacheSizeHasBeenSet = true; m_cacheSize = value; } /** *The size of the cache on the source cache node.
*/ inline void SetCacheSize(Aws::String&& value) { m_cacheSizeHasBeenSet = true; m_cacheSize = std::move(value); } /** *The size of the cache on the source cache node.
*/ inline void SetCacheSize(const char* value) { m_cacheSizeHasBeenSet = true; m_cacheSize.assign(value); } /** *The size of the cache on the source cache node.
*/ inline NodeSnapshot& WithCacheSize(const Aws::String& value) { SetCacheSize(value); return *this;} /** *The size of the cache on the source cache node.
*/ inline NodeSnapshot& WithCacheSize(Aws::String&& value) { SetCacheSize(std::move(value)); return *this;} /** *The size of the cache on the source cache node.
*/ inline NodeSnapshot& WithCacheSize(const char* value) { SetCacheSize(value); return *this;} /** *The date and time when the cache node was created in the source cluster.
*/ inline const Aws::Utils::DateTime& GetCacheNodeCreateTime() const{ return m_cacheNodeCreateTime; } /** *The date and time when the cache node was created in the source cluster.
*/ inline bool CacheNodeCreateTimeHasBeenSet() const { return m_cacheNodeCreateTimeHasBeenSet; } /** *The date and time when the cache node was created in the source cluster.
*/ inline void SetCacheNodeCreateTime(const Aws::Utils::DateTime& value) { m_cacheNodeCreateTimeHasBeenSet = true; m_cacheNodeCreateTime = value; } /** *The date and time when the cache node was created in the source cluster.
*/ inline void SetCacheNodeCreateTime(Aws::Utils::DateTime&& value) { m_cacheNodeCreateTimeHasBeenSet = true; m_cacheNodeCreateTime = std::move(value); } /** *The date and time when the cache node was created in the source cluster.
*/ inline NodeSnapshot& WithCacheNodeCreateTime(const Aws::Utils::DateTime& value) { SetCacheNodeCreateTime(value); return *this;} /** *The date and time when the cache node was created in the source cluster.
*/ inline NodeSnapshot& WithCacheNodeCreateTime(Aws::Utils::DateTime&& value) { SetCacheNodeCreateTime(std::move(value)); return *this;} /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline const Aws::Utils::DateTime& GetSnapshotCreateTime() const{ return m_snapshotCreateTime; } /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline bool SnapshotCreateTimeHasBeenSet() const { return m_snapshotCreateTimeHasBeenSet; } /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline void SetSnapshotCreateTime(const Aws::Utils::DateTime& value) { m_snapshotCreateTimeHasBeenSet = true; m_snapshotCreateTime = value; } /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline void SetSnapshotCreateTime(Aws::Utils::DateTime&& value) { m_snapshotCreateTimeHasBeenSet = true; m_snapshotCreateTime = std::move(value); } /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline NodeSnapshot& WithSnapshotCreateTime(const Aws::Utils::DateTime& value) { SetSnapshotCreateTime(value); return *this;} /** *The date and time when the source node's metadata and cache data set was * obtained for the snapshot.
*/ inline NodeSnapshot& WithSnapshotCreateTime(Aws::Utils::DateTime&& value) { SetSnapshotCreateTime(std::move(value)); return *this;} private: Aws::String m_cacheClusterId; bool m_cacheClusterIdHasBeenSet = false; Aws::String m_nodeGroupId; bool m_nodeGroupIdHasBeenSet = false; Aws::String m_cacheNodeId; bool m_cacheNodeIdHasBeenSet = false; NodeGroupConfiguration m_nodeGroupConfiguration; bool m_nodeGroupConfigurationHasBeenSet = false; Aws::String m_cacheSize; bool m_cacheSizeHasBeenSet = false; Aws::Utils::DateTime m_cacheNodeCreateTime; bool m_cacheNodeCreateTimeHasBeenSet = false; Aws::Utils::DateTime m_snapshotCreateTime; bool m_snapshotCreateTimeHasBeenSet = false; }; } // namespace Model } // namespace ElastiCache } // namespace Aws