AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
MultiRegionConfiguration.h
1
6#pragma once
7#include <aws/kms/KMS_EXPORTS.h>
8#include <aws/kms/model/MultiRegionKeyType.h>
9#include <aws/kms/model/MultiRegionKey.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace KMS
24{
25namespace Model
26{
27
37 {
38 public:
39 AWS_KMS_API MultiRegionConfiguration() = default;
43
44
46
50 inline MultiRegionKeyType GetMultiRegionKeyType() const { return m_multiRegionKeyType; }
51 inline bool MultiRegionKeyTypeHasBeenSet() const { return m_multiRegionKeyTypeHasBeenSet; }
52 inline void SetMultiRegionKeyType(MultiRegionKeyType value) { m_multiRegionKeyTypeHasBeenSet = true; m_multiRegionKeyType = value; }
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) { m_primaryKeyHasBeenSet = true; m_primaryKey = std::forward<PrimaryKeyT>(value); }
65 template<typename PrimaryKeyT = MultiRegionKey>
66 MultiRegionConfiguration& WithPrimaryKey(PrimaryKeyT&& value) { SetPrimaryKey(std::forward<PrimaryKeyT>(value)); return *this;}
68
70
74 inline const Aws::Vector<MultiRegionKey>& GetReplicaKeys() const { return m_replicaKeys; }
75 inline bool ReplicaKeysHasBeenSet() const { return m_replicaKeysHasBeenSet; }
76 template<typename ReplicaKeysT = Aws::Vector<MultiRegionKey>>
77 void SetReplicaKeys(ReplicaKeysT&& value) { m_replicaKeysHasBeenSet = true; m_replicaKeys = std::forward<ReplicaKeysT>(value); }
78 template<typename ReplicaKeysT = Aws::Vector<MultiRegionKey>>
79 MultiRegionConfiguration& WithReplicaKeys(ReplicaKeysT&& value) { SetReplicaKeys(std::forward<ReplicaKeysT>(value)); return *this;}
80 template<typename ReplicaKeysT = MultiRegionKey>
81 MultiRegionConfiguration& AddReplicaKeys(ReplicaKeysT&& value) { m_replicaKeysHasBeenSet = true; m_replicaKeys.emplace_back(std::forward<ReplicaKeysT>(value)); return *this; }
83 private:
84
86 bool m_multiRegionKeyTypeHasBeenSet = false;
87
88 MultiRegionKey m_primaryKey;
89 bool m_primaryKeyHasBeenSet = false;
90
91 Aws::Vector<MultiRegionKey> m_replicaKeys;
92 bool m_replicaKeysHasBeenSet = false;
93 };
94
95} // namespace Model
96} // namespace KMS
97} // 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