AWS SDK for C++  1.9.158
AWS SDK for C++
Encryption.h
Go to the documentation of this file.
1 
6 #pragma once
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace Utils
15 {
16 namespace Xml
17 {
18  class XmlNode;
19 } // namespace Xml
20 } // namespace Utils
21 namespace S3Crt
22 {
23 namespace Model
24 {
25 
32  {
33  public:
37 
38  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
39 
40 
45  inline const ServerSideEncryption& GetEncryptionType() const{ return m_encryptionType; }
46 
51  inline bool EncryptionTypeHasBeenSet() const { return m_encryptionTypeHasBeenSet; }
52 
57  inline void SetEncryptionType(const ServerSideEncryption& value) { m_encryptionTypeHasBeenSet = true; m_encryptionType = value; }
58 
63  inline void SetEncryptionType(ServerSideEncryption&& value) { m_encryptionTypeHasBeenSet = true; m_encryptionType = std::move(value); }
64 
69  inline Encryption& WithEncryptionType(const ServerSideEncryption& value) { SetEncryptionType(value); return *this;}
70 
75  inline Encryption& WithEncryptionType(ServerSideEncryption&& value) { SetEncryptionType(std::move(value)); return *this;}
76 
77 
86  inline const Aws::String& GetKMSKeyId() const{ return m_kMSKeyId; }
87 
96  inline bool KMSKeyIdHasBeenSet() const { return m_kMSKeyIdHasBeenSet; }
97 
106  inline void SetKMSKeyId(const Aws::String& value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId = value; }
107 
116  inline void SetKMSKeyId(Aws::String&& value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId = std::move(value); }
117 
126  inline void SetKMSKeyId(const char* value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId.assign(value); }
127 
136  inline Encryption& WithKMSKeyId(const Aws::String& value) { SetKMSKeyId(value); return *this;}
137 
146  inline Encryption& WithKMSKeyId(Aws::String&& value) { SetKMSKeyId(std::move(value)); return *this;}
147 
156  inline Encryption& WithKMSKeyId(const char* value) { SetKMSKeyId(value); return *this;}
157 
158 
163  inline const Aws::String& GetKMSContext() const{ return m_kMSContext; }
164 
169  inline bool KMSContextHasBeenSet() const { return m_kMSContextHasBeenSet; }
170 
175  inline void SetKMSContext(const Aws::String& value) { m_kMSContextHasBeenSet = true; m_kMSContext = value; }
176 
181  inline void SetKMSContext(Aws::String&& value) { m_kMSContextHasBeenSet = true; m_kMSContext = std::move(value); }
182 
187  inline void SetKMSContext(const char* value) { m_kMSContextHasBeenSet = true; m_kMSContext.assign(value); }
188 
193  inline Encryption& WithKMSContext(const Aws::String& value) { SetKMSContext(value); return *this;}
194 
199  inline Encryption& WithKMSContext(Aws::String&& value) { SetKMSContext(std::move(value)); return *this;}
200 
205  inline Encryption& WithKMSContext(const char* value) { SetKMSContext(value); return *this;}
206 
207  private:
208 
209  ServerSideEncryption m_encryptionType;
210  bool m_encryptionTypeHasBeenSet;
211 
212  Aws::String m_kMSKeyId;
213  bool m_kMSKeyIdHasBeenSet;
214 
215  Aws::String m_kMSContext;
216  bool m_kMSContextHasBeenSet;
217  };
218 
219 } // namespace Model
220 } // namespace S3Crt
221 } // namespace Aws
Aws::S3Crt::Model::Encryption::WithKMSKeyId
Encryption & WithKMSKeyId(const char *value)
Definition: Encryption.h:156
Aws::S3Crt::Model::Encryption::SetKMSContext
void SetKMSContext(const Aws::String &value)
Definition: Encryption.h:175
Aws::S3Crt::Model::Encryption::SetKMSKeyId
void SetKMSKeyId(const Aws::String &value)
Definition: Encryption.h:106
Aws::S3Crt::Model::Encryption::WithKMSContext
Encryption & WithKMSContext(Aws::String &&value)
Definition: Encryption.h:199
Aws::S3Crt::Model::Encryption::KMSContextHasBeenSet
bool KMSContextHasBeenSet() const
Definition: Encryption.h:169
ServerSideEncryption.h
Aws::S3Crt::Model::Encryption::WithKMSContext
Encryption & WithKMSContext(const Aws::String &value)
Definition: Encryption.h:193
Aws::S3Crt::Model::Encryption
Definition: Encryption.h:32
Aws::S3Crt::Model::Encryption::AddToNode
void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
AWS_S3CRT_API
#define AWS_S3CRT_API
Definition: S3Crt_EXPORTS.h:28
Aws::S3Crt::Model::Encryption::SetKMSContext
void SetKMSContext(const char *value)
Definition: Encryption.h:187
Aws::S3Crt::Model::Encryption::Encryption
Encryption()
Aws::S3Crt::Model::Encryption::WithEncryptionType
Encryption & WithEncryptionType(ServerSideEncryption &&value)
Definition: Encryption.h:75
Aws::S3Crt::Model::Encryption::SetKMSContext
void SetKMSContext(Aws::String &&value)
Definition: Encryption.h:181
AWSString.h
Aws::S3Crt::Model::Encryption::WithKMSContext
Encryption & WithKMSContext(const char *value)
Definition: Encryption.h:205
Aws::S3Crt::Model::Encryption::SetKMSKeyId
void SetKMSKeyId(const char *value)
Definition: Encryption.h:126
Aws::S3Crt::Model::Encryption::SetEncryptionType
void SetEncryptionType(const ServerSideEncryption &value)
Definition: Encryption.h:57
Aws::S3Crt::Model::Encryption::GetEncryptionType
const ServerSideEncryption & GetEncryptionType() const
Definition: Encryption.h:45
Aws::S3Crt::Model::Encryption::GetKMSContext
const Aws::String & GetKMSContext() const
Definition: Encryption.h:163
Aws::S3Crt::Model::ServerSideEncryption
ServerSideEncryption
Definition: ServerSideEncryption.h:17
Aws::S3Crt::Model::Encryption::WithKMSKeyId
Encryption & WithKMSKeyId(Aws::String &&value)
Definition: Encryption.h:146
Aws
Definition: AccessManagementClient.h:15
Aws::S3Crt::Model::Encryption::Encryption
Encryption(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::S3Crt::Model::Encryption::EncryptionTypeHasBeenSet
bool EncryptionTypeHasBeenSet() const
Definition: Encryption.h:51
Aws::S3Crt::Model::Encryption::WithEncryptionType
Encryption & WithEncryptionType(const ServerSideEncryption &value)
Definition: Encryption.h:69
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::S3Crt::Model::Encryption::operator=
Encryption & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::S3Crt::Model::Encryption::GetKMSKeyId
const Aws::String & GetKMSKeyId() const
Definition: Encryption.h:86
Aws::S3Crt::Model::Encryption::KMSKeyIdHasBeenSet
bool KMSKeyIdHasBeenSet() const
Definition: Encryption.h:96
Aws::S3Crt::Model::Encryption::WithKMSKeyId
Encryption & WithKMSKeyId(const Aws::String &value)
Definition: Encryption.h:136
Aws::S3Crt::Model::Encryption::SetEncryptionType
void SetEncryptionType(ServerSideEncryption &&value)
Definition: Encryption.h:63
Aws::S3Crt::Model::Encryption::SetKMSKeyId
void SetKMSKeyId(Aws::String &&value)
Definition: Encryption.h:116
S3Crt_EXPORTS.h