AWS SDK for C++  1.9.107
AWS SDK for C++
CreateSnapshotCopyGrantRequest.h
Go to the documentation of this file.
1 
6 #pragma once
11 #include <aws/redshift/model/Tag.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Redshift
17 {
18 namespace Model
19 {
20 
28  {
29  public:
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 "CreateSnapshotCopyGrant"; }
37 
38  Aws::String SerializePayload() const override;
39 
40  protected:
41  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42 
43  public:
44 
54  inline const Aws::String& GetSnapshotCopyGrantName() const{ return m_snapshotCopyGrantName; }
55 
65  inline bool SnapshotCopyGrantNameHasBeenSet() const { return m_snapshotCopyGrantNameHasBeenSet; }
66 
76  inline void SetSnapshotCopyGrantName(const Aws::String& value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName = value; }
77 
87  inline void SetSnapshotCopyGrantName(Aws::String&& value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName = std::move(value); }
88 
98  inline void SetSnapshotCopyGrantName(const char* value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName.assign(value); }
99 
109  inline CreateSnapshotCopyGrantRequest& WithSnapshotCopyGrantName(const Aws::String& value) { SetSnapshotCopyGrantName(value); return *this;}
110 
120  inline CreateSnapshotCopyGrantRequest& WithSnapshotCopyGrantName(Aws::String&& value) { SetSnapshotCopyGrantName(std::move(value)); return *this;}
121 
131  inline CreateSnapshotCopyGrantRequest& WithSnapshotCopyGrantName(const char* value) { SetSnapshotCopyGrantName(value); return *this;}
132 
133 
138  inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; }
139 
144  inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
145 
150  inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; }
151 
156  inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); }
157 
162  inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); }
163 
168  inline CreateSnapshotCopyGrantRequest& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;}
169 
174  inline CreateSnapshotCopyGrantRequest& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;}
175 
180  inline CreateSnapshotCopyGrantRequest& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;}
181 
182 
186  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
187 
191  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
192 
196  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
197 
201  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
202 
206  inline CreateSnapshotCopyGrantRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
207 
211  inline CreateSnapshotCopyGrantRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
212 
216  inline CreateSnapshotCopyGrantRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
217 
221  inline CreateSnapshotCopyGrantRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
222 
223  private:
224 
225  Aws::String m_snapshotCopyGrantName;
226  bool m_snapshotCopyGrantNameHasBeenSet;
227 
228  Aws::String m_kmsKeyId;
229  bool m_kmsKeyIdHasBeenSet;
230 
231  Aws::Vector<Tag> m_tags;
232  bool m_tagsHasBeenSet;
233  };
234 
235 } // namespace Model
236 } // namespace Redshift
237 } // namespace Aws
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetKmsKeyId
void SetKmsKeyId(const char *value)
Definition: CreateSnapshotCopyGrantRequest.h:162
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: CreateSnapshotCopyGrantRequest.h:186
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(const char *value)
Definition: CreateSnapshotCopyGrantRequest.h:98
Aws::Redshift::Model::Tag
Definition: Tag.h:33
Aws::Http::URI
Definition: URI.h:32
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithKmsKeyId
CreateSnapshotCopyGrantRequest & WithKmsKeyId(const Aws::String &value)
Definition: CreateSnapshotCopyGrantRequest.h:168
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::DumpBodyToUrl
void DumpBodyToUrl(Aws::Http::URI &uri) const override
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::GetKmsKeyId
const Aws::String & GetKmsKeyId() const
Definition: CreateSnapshotCopyGrantRequest.h:138
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithTags
CreateSnapshotCopyGrantRequest & WithTags(Aws::Vector< Tag > &&value)
Definition: CreateSnapshotCopyGrantRequest.h:211
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetKmsKeyId
void SetKmsKeyId(Aws::String &&value)
Definition: CreateSnapshotCopyGrantRequest.h:156
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest
Definition: CreateSnapshotCopyGrantRequest.h:28
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithKmsKeyId
CreateSnapshotCopyGrantRequest & WithKmsKeyId(const char *value)
Definition: CreateSnapshotCopyGrantRequest.h:180
Tag.h
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: CreateSnapshotCopyGrantRequest.h:191
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(Aws::String &&value)
Definition: CreateSnapshotCopyGrantRequest.h:87
RedshiftRequest.h
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::GetSnapshotCopyGrantName
const Aws::String & GetSnapshotCopyGrantName() const
Definition: CreateSnapshotCopyGrantRequest.h:54
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SnapshotCopyGrantNameHasBeenSet
bool SnapshotCopyGrantNameHasBeenSet() const
Definition: CreateSnapshotCopyGrantRequest.h:65
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::CreateSnapshotCopyGrantRequest
CreateSnapshotCopyGrantRequest()
AWSVector.h
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithSnapshotCopyGrantName
CreateSnapshotCopyGrantRequest & WithSnapshotCopyGrantName(const char *value)
Definition: CreateSnapshotCopyGrantRequest.h:131
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithKmsKeyId
CreateSnapshotCopyGrantRequest & WithKmsKeyId(Aws::String &&value)
Definition: CreateSnapshotCopyGrantRequest.h:174
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: CreateSnapshotCopyGrantRequest.h:196
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::AddTags
CreateSnapshotCopyGrantRequest & AddTags(const Tag &value)
Definition: CreateSnapshotCopyGrantRequest.h:216
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::KmsKeyIdHasBeenSet
bool KmsKeyIdHasBeenSet() const
Definition: CreateSnapshotCopyGrantRequest.h:144
AWS_REDSHIFT_API
#define AWS_REDSHIFT_API
Definition: Redshift_EXPORTS.h:28
Aws::Redshift::RedshiftRequest
Definition: RedshiftRequest.h:17
AWSString.h
Aws
Definition: AccessManagementClient.h:15
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(const Aws::String &value)
Definition: CreateSnapshotCopyGrantRequest.h:76
Redshift_EXPORTS.h
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithSnapshotCopyGrantName
CreateSnapshotCopyGrantRequest & WithSnapshotCopyGrantName(const Aws::String &value)
Definition: CreateSnapshotCopyGrantRequest.h:109
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: CreateSnapshotCopyGrantRequest.h:201
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: CreateSnapshotCopyGrantRequest.h:36
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::AddTags
CreateSnapshotCopyGrantRequest & AddTags(Tag &&value)
Definition: CreateSnapshotCopyGrantRequest.h:221
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::SetKmsKeyId
void SetKmsKeyId(const Aws::String &value)
Definition: CreateSnapshotCopyGrantRequest.h:150
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithTags
CreateSnapshotCopyGrantRequest & WithTags(const Aws::Vector< Tag > &value)
Definition: CreateSnapshotCopyGrantRequest.h:206
Aws::Redshift::Model::CreateSnapshotCopyGrantRequest::WithSnapshotCopyGrantName
CreateSnapshotCopyGrantRequest & WithSnapshotCopyGrantName(Aws::String &&value)
Definition: CreateSnapshotCopyGrantRequest.h:120