/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace ElastiCache { namespace Model { /** *

Represents the input of a DescribeSnapshotsMessage * operation.

See Also:

AWS * API Reference

*/ class DescribeSnapshotsRequest : public ElastiCacheRequest { public: AWS_ELASTICACHE_API DescribeSnapshotsRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DescribeSnapshots"; } AWS_ELASTICACHE_API Aws::String SerializePayload() const override; protected: AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline const Aws::String& GetReplicationGroupId() const{ return m_replicationGroupId; } /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; } /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline void SetReplicationGroupId(const Aws::String& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = value; } /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline void SetReplicationGroupId(Aws::String&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::move(value); } /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline void SetReplicationGroupId(const char* value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId.assign(value); } /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline DescribeSnapshotsRequest& WithReplicationGroupId(const Aws::String& value) { SetReplicationGroupId(value); return *this;} /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline DescribeSnapshotsRequest& WithReplicationGroupId(Aws::String&& value) { SetReplicationGroupId(std::move(value)); return *this;} /** *

A user-supplied replication group identifier. If this parameter is specified, * only snapshots associated with that specific replication group are * described.

*/ inline DescribeSnapshotsRequest& WithReplicationGroupId(const char* value) { SetReplicationGroupId(value); return *this;} /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline const Aws::String& GetCacheClusterId() const{ return m_cacheClusterId; } /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline bool CacheClusterIdHasBeenSet() const { return m_cacheClusterIdHasBeenSet; } /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline void SetCacheClusterId(const Aws::String& value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId = value; } /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline void SetCacheClusterId(Aws::String&& value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId = std::move(value); } /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline void SetCacheClusterId(const char* value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId.assign(value); } /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline DescribeSnapshotsRequest& WithCacheClusterId(const Aws::String& value) { SetCacheClusterId(value); return *this;} /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline DescribeSnapshotsRequest& WithCacheClusterId(Aws::String&& value) { SetCacheClusterId(std::move(value)); return *this;} /** *

A user-supplied cluster identifier. If this parameter is specified, only * snapshots associated with that specific cluster are described.

*/ inline DescribeSnapshotsRequest& WithCacheClusterId(const char* value) { SetCacheClusterId(value); return *this;} /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline const Aws::String& GetSnapshotName() const{ return m_snapshotName; } /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline bool SnapshotNameHasBeenSet() const { return m_snapshotNameHasBeenSet; } /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline void SetSnapshotName(const Aws::String& value) { m_snapshotNameHasBeenSet = true; m_snapshotName = value; } /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline void SetSnapshotName(Aws::String&& value) { m_snapshotNameHasBeenSet = true; m_snapshotName = std::move(value); } /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline void SetSnapshotName(const char* value) { m_snapshotNameHasBeenSet = true; m_snapshotName.assign(value); } /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline DescribeSnapshotsRequest& WithSnapshotName(const Aws::String& value) { SetSnapshotName(value); return *this;} /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline DescribeSnapshotsRequest& WithSnapshotName(Aws::String&& value) { SetSnapshotName(std::move(value)); return *this;} /** *

A user-supplied name of the snapshot. If this parameter is specified, only * this snapshot are described.

*/ inline DescribeSnapshotsRequest& WithSnapshotName(const char* value) { SetSnapshotName(value); return *this;} /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline const Aws::String& GetSnapshotSource() const{ return m_snapshotSource; } /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline bool SnapshotSourceHasBeenSet() const { return m_snapshotSourceHasBeenSet; } /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline void SetSnapshotSource(const Aws::String& value) { m_snapshotSourceHasBeenSet = true; m_snapshotSource = value; } /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline void SetSnapshotSource(Aws::String&& value) { m_snapshotSourceHasBeenSet = true; m_snapshotSource = std::move(value); } /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline void SetSnapshotSource(const char* value) { m_snapshotSourceHasBeenSet = true; m_snapshotSource.assign(value); } /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline DescribeSnapshotsRequest& WithSnapshotSource(const Aws::String& value) { SetSnapshotSource(value); return *this;} /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline DescribeSnapshotsRequest& WithSnapshotSource(Aws::String&& value) { SetSnapshotSource(std::move(value)); return *this;} /** *

If set to system, the output shows snapshots that were * automatically created by ElastiCache. If set to user the output * shows snapshots that were manually created. If omitted, the output shows both * automatically and manually created snapshots.

*/ inline DescribeSnapshotsRequest& WithSnapshotSource(const char* value) { SetSnapshotSource(value); return *this;} /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline const Aws::String& GetMarker() const{ return m_marker; } /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; } /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; } /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); } /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); } /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline DescribeSnapshotsRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline DescribeSnapshotsRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} /** *

An optional marker returned from a prior request. Use this marker for * pagination of results from this operation. If this parameter is specified, the * response includes only records beyond the marker, up to the value specified by * MaxRecords.

*/ inline DescribeSnapshotsRequest& WithMarker(const char* value) { SetMarker(value); return *this;} /** *

The maximum number of records to include in the response. If more records * exist than the specified MaxRecords value, a marker is included in * the response so that the remaining results can be retrieved.

Default: * 50

Constraints: minimum 20; maximum 50.

*/ inline int GetMaxRecords() const{ return m_maxRecords; } /** *

The maximum number of records to include in the response. If more records * exist than the specified MaxRecords value, a marker is included in * the response so that the remaining results can be retrieved.

Default: * 50

Constraints: minimum 20; maximum 50.

*/ inline bool MaxRecordsHasBeenSet() const { return m_maxRecordsHasBeenSet; } /** *

The maximum number of records to include in the response. If more records * exist than the specified MaxRecords value, a marker is included in * the response so that the remaining results can be retrieved.

Default: * 50

Constraints: minimum 20; maximum 50.

*/ inline void SetMaxRecords(int value) { m_maxRecordsHasBeenSet = true; m_maxRecords = value; } /** *

The maximum number of records to include in the response. If more records * exist than the specified MaxRecords value, a marker is included in * the response so that the remaining results can be retrieved.

Default: * 50

Constraints: minimum 20; maximum 50.

*/ inline DescribeSnapshotsRequest& WithMaxRecords(int value) { SetMaxRecords(value); return *this;} /** *

A Boolean value which if true, the node group (shard) configuration is * included in the snapshot description.

*/ inline bool GetShowNodeGroupConfig() const{ return m_showNodeGroupConfig; } /** *

A Boolean value which if true, the node group (shard) configuration is * included in the snapshot description.

*/ inline bool ShowNodeGroupConfigHasBeenSet() const { return m_showNodeGroupConfigHasBeenSet; } /** *

A Boolean value which if true, the node group (shard) configuration is * included in the snapshot description.

*/ inline void SetShowNodeGroupConfig(bool value) { m_showNodeGroupConfigHasBeenSet = true; m_showNodeGroupConfig = value; } /** *

A Boolean value which if true, the node group (shard) configuration is * included in the snapshot description.

*/ inline DescribeSnapshotsRequest& WithShowNodeGroupConfig(bool value) { SetShowNodeGroupConfig(value); return *this;} private: Aws::String m_replicationGroupId; bool m_replicationGroupIdHasBeenSet = false; Aws::String m_cacheClusterId; bool m_cacheClusterIdHasBeenSet = false; Aws::String m_snapshotName; bool m_snapshotNameHasBeenSet = false; Aws::String m_snapshotSource; bool m_snapshotSourceHasBeenSet = false; Aws::String m_marker; bool m_markerHasBeenSet = false; int m_maxRecords; bool m_maxRecordsHasBeenSet = false; bool m_showNodeGroupConfig; bool m_showNodeGroupConfigHasBeenSet = false; }; } // namespace Model } // namespace ElastiCache } // namespace Aws