AWS SDK for C++  1.9.104
AWS SDK for C++
SnapshotCopyGrant.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 Utils
17 {
18 namespace Xml
19 {
20  class XmlNode;
21 } // namespace Xml
22 } // namespace Utils
23 namespace Redshift
24 {
25 namespace Model
26 {
27 
40  {
41  public:
45 
46  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47  void OutputToStream(Aws::OStream& oStream, const char* location) const;
48 
49 
53  inline const Aws::String& GetSnapshotCopyGrantName() const{ return m_snapshotCopyGrantName; }
54 
58  inline bool SnapshotCopyGrantNameHasBeenSet() const { return m_snapshotCopyGrantNameHasBeenSet; }
59 
63  inline void SetSnapshotCopyGrantName(const Aws::String& value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName = value; }
64 
68  inline void SetSnapshotCopyGrantName(Aws::String&& value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName = std::move(value); }
69 
73  inline void SetSnapshotCopyGrantName(const char* value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName.assign(value); }
74 
78  inline SnapshotCopyGrant& WithSnapshotCopyGrantName(const Aws::String& value) { SetSnapshotCopyGrantName(value); return *this;}
79 
83  inline SnapshotCopyGrant& WithSnapshotCopyGrantName(Aws::String&& value) { SetSnapshotCopyGrantName(std::move(value)); return *this;}
84 
88  inline SnapshotCopyGrant& WithSnapshotCopyGrantName(const char* value) { SetSnapshotCopyGrantName(value); return *this;}
89 
90 
95  inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; }
96 
101  inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
102 
107  inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; }
108 
113  inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); }
114 
119  inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); }
120 
125  inline SnapshotCopyGrant& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;}
126 
131  inline SnapshotCopyGrant& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;}
132 
137  inline SnapshotCopyGrant& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;}
138 
139 
143  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
144 
148  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
149 
153  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
154 
158  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
159 
163  inline SnapshotCopyGrant& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
164 
168  inline SnapshotCopyGrant& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
169 
173  inline SnapshotCopyGrant& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
174 
178  inline SnapshotCopyGrant& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
179 
180  private:
181 
182  Aws::String m_snapshotCopyGrantName;
183  bool m_snapshotCopyGrantNameHasBeenSet;
184 
185  Aws::String m_kmsKeyId;
186  bool m_kmsKeyIdHasBeenSet;
187 
188  Aws::Vector<Tag> m_tags;
189  bool m_tagsHasBeenSet;
190  };
191 
192 } // namespace Model
193 } // namespace Redshift
194 } // namespace Aws
Aws::Redshift::Model::SnapshotCopyGrant::WithSnapshotCopyGrantName
SnapshotCopyGrant & WithSnapshotCopyGrantName(const Aws::String &value)
Definition: SnapshotCopyGrant.h:78
Aws::Redshift::Model::Tag
Definition: Tag.h:33
Aws::Redshift::Model::SnapshotCopyGrant::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Aws::Redshift::Model::SnapshotCopyGrant::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
Aws::Redshift::Model::SnapshotCopyGrant::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(const Aws::String &value)
Definition: SnapshotCopyGrant.h:63
Aws::Redshift::Model::SnapshotCopyGrant::AddTags
SnapshotCopyGrant & AddTags(const Tag &value)
Definition: SnapshotCopyGrant.h:173
Aws::Redshift::Model::SnapshotCopyGrant::SetKmsKeyId
void SetKmsKeyId(const char *value)
Definition: SnapshotCopyGrant.h:119
Aws::Redshift::Model::SnapshotCopyGrant::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: SnapshotCopyGrant.h:148
Tag.h
Aws::Redshift::Model::SnapshotCopyGrant::SetKmsKeyId
void SetKmsKeyId(const Aws::String &value)
Definition: SnapshotCopyGrant.h:107
Aws::Redshift::Model::SnapshotCopyGrant
Definition: SnapshotCopyGrant.h:40
Aws::Redshift::Model::SnapshotCopyGrant::WithKmsKeyId
SnapshotCopyGrant & WithKmsKeyId(const Aws::String &value)
Definition: SnapshotCopyGrant.h:125
Aws::Redshift::Model::SnapshotCopyGrant::GetKmsKeyId
const Aws::String & GetKmsKeyId() const
Definition: SnapshotCopyGrant.h:95
Aws::Redshift::Model::SnapshotCopyGrant::SetKmsKeyId
void SetKmsKeyId(Aws::String &&value)
Definition: SnapshotCopyGrant.h:113
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
AWSStreamFwd.h
AWSVector.h
Aws::Redshift::Model::SnapshotCopyGrant::GetSnapshotCopyGrantName
const Aws::String & GetSnapshotCopyGrantName() const
Definition: SnapshotCopyGrant.h:53
Aws::Redshift::Model::SnapshotCopyGrant::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(const char *value)
Definition: SnapshotCopyGrant.h:73
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::Redshift::Model::SnapshotCopyGrant::SetSnapshotCopyGrantName
void SetSnapshotCopyGrantName(Aws::String &&value)
Definition: SnapshotCopyGrant.h:68
Aws::Redshift::Model::SnapshotCopyGrant::WithKmsKeyId
SnapshotCopyGrant & WithKmsKeyId(Aws::String &&value)
Definition: SnapshotCopyGrant.h:131
Aws::Redshift::Model::SnapshotCopyGrant::SnapshotCopyGrantNameHasBeenSet
bool SnapshotCopyGrantNameHasBeenSet() const
Definition: SnapshotCopyGrant.h:58
Aws::Redshift::Model::SnapshotCopyGrant::WithKmsKeyId
SnapshotCopyGrant & WithKmsKeyId(const char *value)
Definition: SnapshotCopyGrant.h:137
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::Redshift::Model::SnapshotCopyGrant::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: SnapshotCopyGrant.h:143
AWS_REDSHIFT_API
#define AWS_REDSHIFT_API
Definition: Redshift_EXPORTS.h:28
Aws::Redshift::Model::SnapshotCopyGrant::WithSnapshotCopyGrantName
SnapshotCopyGrant & WithSnapshotCopyGrantName(const char *value)
Definition: SnapshotCopyGrant.h:88
AWSString.h
Aws::Redshift::Model::SnapshotCopyGrant::SnapshotCopyGrant
SnapshotCopyGrant()
Aws::Redshift::Model::SnapshotCopyGrant::WithSnapshotCopyGrantName
SnapshotCopyGrant & WithSnapshotCopyGrantName(Aws::String &&value)
Definition: SnapshotCopyGrant.h:83
Aws::Redshift::Model::SnapshotCopyGrant::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: SnapshotCopyGrant.h:158
Aws::Redshift::Model::SnapshotCopyGrant::operator=
SnapshotCopyGrant & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::Redshift::Model::SnapshotCopyGrant::SnapshotCopyGrant
SnapshotCopyGrant(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::Redshift::Model::SnapshotCopyGrant::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: SnapshotCopyGrant.h:153
Aws
Definition: AccessManagementClient.h:15
Redshift_EXPORTS.h
Aws::Redshift::Model::SnapshotCopyGrant::KmsKeyIdHasBeenSet
bool KmsKeyIdHasBeenSet() const
Definition: SnapshotCopyGrant.h:101
Aws::Redshift::Model::SnapshotCopyGrant::AddTags
SnapshotCopyGrant & AddTags(Tag &&value)
Definition: SnapshotCopyGrant.h:178
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
index
int index
Definition: cJSON.h:181
Aws::Redshift::Model::SnapshotCopyGrant::WithTags
SnapshotCopyGrant & WithTags(const Aws::Vector< Tag > &value)
Definition: SnapshotCopyGrant.h:163
Aws::Redshift::Model::SnapshotCopyGrant::WithTags
SnapshotCopyGrant & WithTags(Aws::Vector< Tag > &&value)
Definition: SnapshotCopyGrant.h:168