AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
MultiRegionConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/kms/KMS_EXPORTS.h>
9#include <aws/kms/model/MultiRegionKey.h>
10#include <aws/kms/model/MultiRegionKeyType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace KMS {
22namespace Model {
23
33 public:
34 AWS_KMS_API MultiRegionConfiguration() = default;
38
40
44 inline MultiRegionKeyType GetMultiRegionKeyType() const { return m_multiRegionKeyType; }
45 inline bool MultiRegionKeyTypeHasBeenSet() const { return m_multiRegionKeyTypeHasBeenSet; }
47 m_multiRegionKeyTypeHasBeenSet = true;
48 m_multiRegionKeyType = value;
49 }
52 return *this;
53 }
55
57
61 inline const MultiRegionKey& GetPrimaryKey() const { return m_primaryKey; }
62 inline bool PrimaryKeyHasBeenSet() const { return m_primaryKeyHasBeenSet; }
63 template <typename PrimaryKeyT = MultiRegionKey>
64 void SetPrimaryKey(PrimaryKeyT&& value) {
65 m_primaryKeyHasBeenSet = true;
66 m_primaryKey = std::forward<PrimaryKeyT>(value);
67 }
68 template <typename PrimaryKeyT = MultiRegionKey>
70 SetPrimaryKey(std::forward<PrimaryKeyT>(value));
71 return *this;
72 }
74
76
80 inline const Aws::Vector<MultiRegionKey>& GetReplicaKeys() const { return m_replicaKeys; }
81 inline bool ReplicaKeysHasBeenSet() const { return m_replicaKeysHasBeenSet; }
82 template <typename ReplicaKeysT = Aws::Vector<MultiRegionKey>>
83 void SetReplicaKeys(ReplicaKeysT&& value) {
84 m_replicaKeysHasBeenSet = true;
85 m_replicaKeys = std::forward<ReplicaKeysT>(value);
86 }
87 template <typename ReplicaKeysT = Aws::Vector<MultiRegionKey>>
89 SetReplicaKeys(std::forward<ReplicaKeysT>(value));
90 return *this;
91 }
92 template <typename ReplicaKeysT = MultiRegionKey>
94 m_replicaKeysHasBeenSet = true;
95 m_replicaKeys.emplace_back(std::forward<ReplicaKeysT>(value));
96 return *this;
97 }
99 private:
101
102 MultiRegionKey m_primaryKey;
103
104 Aws::Vector<MultiRegionKey> m_replicaKeys;
105 bool m_multiRegionKeyTypeHasBeenSet = false;
106 bool m_primaryKeyHasBeenSet = false;
107 bool m_replicaKeysHasBeenSet = false;
108};
109
110} // namespace Model
111} // namespace KMS
112} // namespace Aws
AWS_KMS_API MultiRegionConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
MultiRegionConfiguration & AddReplicaKeys(ReplicaKeysT &&value)
AWS_KMS_API MultiRegionConfiguration()=default
void SetMultiRegionKeyType(MultiRegionKeyType value)
MultiRegionConfiguration & WithReplicaKeys(ReplicaKeysT &&value)
MultiRegionConfiguration & WithPrimaryKey(PrimaryKeyT &&value)
const Aws::Vector< MultiRegionKey > & GetReplicaKeys() const
MultiRegionConfiguration & WithMultiRegionKeyType(MultiRegionKeyType value)
AWS_KMS_API MultiRegionConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_KMS_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue