AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
SSEDescription.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/dynamodb/DynamoDB_EXPORTS.h>
10#include <aws/dynamodb/model/SSEStatus.h>
11#include <aws/dynamodb/model/SSEType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace DynamoDB {
23namespace Model {
24
32 public:
33 AWS_DYNAMODB_API SSEDescription() = default;
34 AWS_DYNAMODB_API SSEDescription(Aws::Utils::Json::JsonView jsonValue);
36 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
45 inline SSEStatus GetStatus() const { return m_status; }
46 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
47 inline void SetStatus(SSEStatus value) {
48 m_statusHasBeenSet = true;
49 m_status = value;
50 }
52 SetStatus(value);
53 return *this;
54 }
56
58
64 inline SSEType GetSSEType() const { return m_sSEType; }
65 inline bool SSETypeHasBeenSet() const { return m_sSETypeHasBeenSet; }
66 inline void SetSSEType(SSEType value) {
67 m_sSETypeHasBeenSet = true;
68 m_sSEType = value;
69 }
71 SetSSEType(value);
72 return *this;
73 }
75
77
80 inline const Aws::String& GetKMSMasterKeyArn() const { return m_kMSMasterKeyArn; }
81 inline bool KMSMasterKeyArnHasBeenSet() const { return m_kMSMasterKeyArnHasBeenSet; }
82 template <typename KMSMasterKeyArnT = Aws::String>
83 void SetKMSMasterKeyArn(KMSMasterKeyArnT&& value) {
84 m_kMSMasterKeyArnHasBeenSet = true;
85 m_kMSMasterKeyArn = std::forward<KMSMasterKeyArnT>(value);
86 }
87 template <typename KMSMasterKeyArnT = Aws::String>
88 SSEDescription& WithKMSMasterKeyArn(KMSMasterKeyArnT&& value) {
89 SetKMSMasterKeyArn(std::forward<KMSMasterKeyArnT>(value));
90 return *this;
91 }
93
95
102 inline const Aws::Utils::DateTime& GetInaccessibleEncryptionDateTime() const { return m_inaccessibleEncryptionDateTime; }
103 inline bool InaccessibleEncryptionDateTimeHasBeenSet() const { return m_inaccessibleEncryptionDateTimeHasBeenSet; }
104 template <typename InaccessibleEncryptionDateTimeT = Aws::Utils::DateTime>
105 void SetInaccessibleEncryptionDateTime(InaccessibleEncryptionDateTimeT&& value) {
106 m_inaccessibleEncryptionDateTimeHasBeenSet = true;
107 m_inaccessibleEncryptionDateTime = std::forward<InaccessibleEncryptionDateTimeT>(value);
108 }
109 template <typename InaccessibleEncryptionDateTimeT = Aws::Utils::DateTime>
110 SSEDescription& WithInaccessibleEncryptionDateTime(InaccessibleEncryptionDateTimeT&& value) {
111 SetInaccessibleEncryptionDateTime(std::forward<InaccessibleEncryptionDateTimeT>(value));
112 return *this;
113 }
115 private:
117
118 SSEType m_sSEType{SSEType::NOT_SET};
119
120 Aws::String m_kMSMasterKeyArn;
121
122 Aws::Utils::DateTime m_inaccessibleEncryptionDateTime{};
123 bool m_statusHasBeenSet = false;
124 bool m_sSETypeHasBeenSet = false;
125 bool m_kMSMasterKeyArnHasBeenSet = false;
126 bool m_inaccessibleEncryptionDateTimeHasBeenSet = false;
127};
128
129} // namespace Model
130} // namespace DynamoDB
131} // namespace Aws
SSEDescription & WithStatus(SSEStatus value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DYNAMODB_API SSEDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
SSEDescription & WithInaccessibleEncryptionDateTime(InaccessibleEncryptionDateTimeT &&value)
void SetInaccessibleEncryptionDateTime(InaccessibleEncryptionDateTimeT &&value)
AWS_DYNAMODB_API SSEDescription(Aws::Utils::Json::JsonView jsonValue)
void SetKMSMasterKeyArn(KMSMasterKeyArnT &&value)
AWS_DYNAMODB_API SSEDescription()=default
SSEDescription & WithKMSMasterKeyArn(KMSMasterKeyArnT &&value)
SSEDescription & WithSSEType(SSEType value)
const Aws::String & GetKMSMasterKeyArn() const
const Aws::Utils::DateTime & GetInaccessibleEncryptionDateTime() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue