AWS SDK for C++

AWS SDK for C++ Version 1.11.867

Loading...
Searching...
No Matches
LogsEncryptionConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/observabilityadmin/ObservabilityAdmin_EXPORTS.h>
9#include <aws/observabilityadmin/model/EncryptionConflictResolutionStrategy.h>
10#include <aws/observabilityadmin/model/EncryptionScope.h>
11#include <aws/observabilityadmin/model/EncryptionStrategy.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ObservabilityAdmin {
23namespace Model {
24
35 public:
36 AWS_OBSERVABILITYADMIN_API LogsEncryptionConfiguration() = default;
37 AWS_OBSERVABILITYADMIN_API LogsEncryptionConfiguration(Aws::Utils::Json::JsonView jsonValue);
39 AWS_OBSERVABILITYADMIN_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
47 inline EncryptionStrategy GetEncryptionStrategy() const { return m_encryptionStrategy; }
48 inline bool EncryptionStrategyHasBeenSet() const { return m_encryptionStrategyHasBeenSet; }
50 m_encryptionStrategyHasBeenSet = true;
51 m_encryptionStrategy = value;
52 }
55 return *this;
56 }
58
60
64 inline const Aws::String& GetKmsKeyArn() const { return m_kmsKeyArn; }
65 inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; }
66 template <typename KmsKeyArnT = Aws::String>
67 void SetKmsKeyArn(KmsKeyArnT&& value) {
68 m_kmsKeyArnHasBeenSet = true;
69 m_kmsKeyArn = std::forward<KmsKeyArnT>(value);
70 }
71 template <typename KmsKeyArnT = Aws::String>
73 SetKmsKeyArn(std::forward<KmsKeyArnT>(value));
74 return *this;
75 }
77
79
86 return m_encryptionConflictResolutionStrategy;
87 }
88 inline bool EncryptionConflictResolutionStrategyHasBeenSet() const { return m_encryptionConflictResolutionStrategyHasBeenSet; }
90 m_encryptionConflictResolutionStrategyHasBeenSet = true;
91 m_encryptionConflictResolutionStrategy = value;
92 }
95 return *this;
96 }
98
100
114 inline EncryptionScope GetEncryptionScope() const { return m_encryptionScope; }
115 inline bool EncryptionScopeHasBeenSet() const { return m_encryptionScopeHasBeenSet; }
117 m_encryptionScopeHasBeenSet = true;
118 m_encryptionScope = value;
119 }
121 SetEncryptionScope(value);
122 return *this;
123 }
125 private:
127
128 Aws::String m_kmsKeyArn;
129
131
132 EncryptionScope m_encryptionScope{EncryptionScope::NOT_SET};
133 bool m_encryptionStrategyHasBeenSet = false;
134 bool m_kmsKeyArnHasBeenSet = false;
135 bool m_encryptionConflictResolutionStrategyHasBeenSet = false;
136 bool m_encryptionScopeHasBeenSet = false;
137};
138
139} // namespace Model
140} // namespace ObservabilityAdmin
141} // namespace Aws
LogsEncryptionConfiguration & WithEncryptionScope(EncryptionScope value)
AWS_OBSERVABILITYADMIN_API LogsEncryptionConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_OBSERVABILITYADMIN_API LogsEncryptionConfiguration()=default
EncryptionConflictResolutionStrategy GetEncryptionConflictResolutionStrategy() const
AWS_OBSERVABILITYADMIN_API Aws::Utils::Json::JsonValue Jsonize() const
LogsEncryptionConfiguration & WithEncryptionStrategy(EncryptionStrategy value)
LogsEncryptionConfiguration & WithKmsKeyArn(KmsKeyArnT &&value)
LogsEncryptionConfiguration & WithEncryptionConflictResolutionStrategy(EncryptionConflictResolutionStrategy value)
AWS_OBSERVABILITYADMIN_API LogsEncryptionConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetEncryptionConflictResolutionStrategy(EncryptionConflictResolutionStrategy value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue