AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
Encryption.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/s3-crt/S3Crt_EXPORTS.h>
9#include <aws/s3-crt/model/ServerSideEncryption.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace S3Crt {
20namespace Model {
21
28 public:
29 AWS_S3CRT_API Encryption() = default;
30 AWS_S3CRT_API Encryption(const Aws::Utils::Xml::XmlNode& xmlNode);
31 AWS_S3CRT_API Encryption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
32
33 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
34
36
40 inline ServerSideEncryption GetEncryptionType() const { return m_encryptionType; }
41 inline bool EncryptionTypeHasBeenSet() const { return m_encryptionTypeHasBeenSet; }
43 m_encryptionTypeHasBeenSet = true;
44 m_encryptionType = value;
45 }
47 SetEncryptionType(value);
48 return *this;
49 }
51
53
62 inline const Aws::String& GetKMSKeyId() const { return m_kMSKeyId; }
63 inline bool KMSKeyIdHasBeenSet() const { return m_kMSKeyIdHasBeenSet; }
64 template <typename KMSKeyIdT = Aws::String>
65 void SetKMSKeyId(KMSKeyIdT&& value) {
66 m_kMSKeyIdHasBeenSet = true;
67 m_kMSKeyId = std::forward<KMSKeyIdT>(value);
68 }
69 template <typename KMSKeyIdT = Aws::String>
70 Encryption& WithKMSKeyId(KMSKeyIdT&& value) {
71 SetKMSKeyId(std::forward<KMSKeyIdT>(value));
72 return *this;
73 }
75
77
81 inline const Aws::String& GetKMSContext() const { return m_kMSContext; }
82 inline bool KMSContextHasBeenSet() const { return m_kMSContextHasBeenSet; }
83 template <typename KMSContextT = Aws::String>
84 void SetKMSContext(KMSContextT&& value) {
85 m_kMSContextHasBeenSet = true;
86 m_kMSContext = std::forward<KMSContextT>(value);
87 }
88 template <typename KMSContextT = Aws::String>
89 Encryption& WithKMSContext(KMSContextT&& value) {
90 SetKMSContext(std::forward<KMSContextT>(value));
91 return *this;
92 }
94 private:
96
97 Aws::String m_kMSKeyId;
98
99 Aws::String m_kMSContext;
100 bool m_encryptionTypeHasBeenSet = false;
101 bool m_kMSKeyIdHasBeenSet = false;
102 bool m_kMSContextHasBeenSet = false;
103};
104
105} // namespace Model
106} // namespace S3Crt
107} // namespace Aws
bool KMSContextHasBeenSet() const
Definition Encryption.h:82
bool EncryptionTypeHasBeenSet() const
Definition Encryption.h:41
Encryption & WithKMSKeyId(KMSKeyIdT &&value)
Definition Encryption.h:70
void SetEncryptionType(ServerSideEncryption value)
Definition Encryption.h:42
const Aws::String & GetKMSKeyId() const
Definition Encryption.h:62
Encryption & WithEncryptionType(ServerSideEncryption value)
Definition Encryption.h:46
Encryption & WithKMSContext(KMSContextT &&value)
Definition Encryption.h:89
AWS_S3CRT_API Encryption()=default
ServerSideEncryption GetEncryptionType() const
Definition Encryption.h:40
const Aws::String & GetKMSContext() const
Definition Encryption.h:81
AWS_S3CRT_API Encryption & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetKMSKeyId(KMSKeyIdT &&value)
Definition Encryption.h:65
void SetKMSContext(KMSContextT &&value)
Definition Encryption.h:84
AWS_S3CRT_API Encryption(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String