AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateSnapshotRequest.h
1
6#pragma once
7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/elasticache/ElastiCacheRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/model/Tag.h>
12#include <utility>
13
14namespace Aws
15{
16namespace ElastiCache
17{
18namespace Model
19{
20
28 {
29 public:
30 AWS_ELASTICACHE_API CreateSnapshotRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateSnapshot"; }
37
38 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
50 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
51 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
52 template<typename ReplicationGroupIdT = Aws::String>
53 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
54 template<typename ReplicationGroupIdT = Aws::String>
55 CreateSnapshotRequest& WithReplicationGroupId(ReplicationGroupIdT&& value) { SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value)); return *this;}
57
59
63 inline const Aws::String& GetCacheClusterId() const { return m_cacheClusterId; }
64 inline bool CacheClusterIdHasBeenSet() const { return m_cacheClusterIdHasBeenSet; }
65 template<typename CacheClusterIdT = Aws::String>
66 void SetCacheClusterId(CacheClusterIdT&& value) { m_cacheClusterIdHasBeenSet = true; m_cacheClusterId = std::forward<CacheClusterIdT>(value); }
67 template<typename CacheClusterIdT = Aws::String>
68 CreateSnapshotRequest& WithCacheClusterId(CacheClusterIdT&& value) { SetCacheClusterId(std::forward<CacheClusterIdT>(value)); return *this;}
70
72
75 inline const Aws::String& GetSnapshotName() const { return m_snapshotName; }
76 inline bool SnapshotNameHasBeenSet() const { return m_snapshotNameHasBeenSet; }
77 template<typename SnapshotNameT = Aws::String>
78 void SetSnapshotName(SnapshotNameT&& value) { m_snapshotNameHasBeenSet = true; m_snapshotName = std::forward<SnapshotNameT>(value); }
79 template<typename SnapshotNameT = Aws::String>
80 CreateSnapshotRequest& WithSnapshotName(SnapshotNameT&& value) { SetSnapshotName(std::forward<SnapshotNameT>(value)); return *this;}
82
84
87 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
88 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
89 template<typename KmsKeyIdT = Aws::String>
90 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
91 template<typename KmsKeyIdT = Aws::String>
92 CreateSnapshotRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
94
96
100 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
101 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
102 template<typename TagsT = Aws::Vector<Tag>>
103 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
104 template<typename TagsT = Aws::Vector<Tag>>
105 CreateSnapshotRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
106 template<typename TagsT = Tag>
107 CreateSnapshotRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
109 private:
110
111 Aws::String m_replicationGroupId;
112 bool m_replicationGroupIdHasBeenSet = false;
113
114 Aws::String m_cacheClusterId;
115 bool m_cacheClusterIdHasBeenSet = false;
116
117 Aws::String m_snapshotName;
118 bool m_snapshotNameHasBeenSet = false;
119
120 Aws::String m_kmsKeyId;
121 bool m_kmsKeyIdHasBeenSet = false;
122
123 Aws::Vector<Tag> m_tags;
124 bool m_tagsHasBeenSet = false;
125 };
126
127} // namespace Model
128} // namespace ElastiCache
129} // namespace Aws
CreateSnapshotRequest & WithTags(TagsT &&value)
AWS_ELASTICACHE_API CreateSnapshotRequest()=default
CreateSnapshotRequest & WithSnapshotName(SnapshotNameT &&value)
CreateSnapshotRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
virtual const char * GetServiceRequestName() const override
CreateSnapshotRequest & WithCacheClusterId(CacheClusterIdT &&value)
CreateSnapshotRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateSnapshotRequest & AddTags(TagsT &&value)
void SetReplicationGroupId(ReplicationGroupIdT &&value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector