AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
KmsGrantConfiguration.h
1
6#pragma once
7#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/accessanalyzer/model/KmsGrantConstraints.h>
11#include <aws/accessanalyzer/model/KmsGrantOperation.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace AccessAnalyzer
25{
26namespace Model
27{
28
37 {
38 public:
39 AWS_ACCESSANALYZER_API KmsGrantConfiguration() = default;
40 AWS_ACCESSANALYZER_API KmsGrantConfiguration(Aws::Utils::Json::JsonView jsonValue);
42 AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::Vector<KmsGrantOperation>& GetOperations() const { return m_operations; }
50 inline bool OperationsHasBeenSet() const { return m_operationsHasBeenSet; }
51 template<typename OperationsT = Aws::Vector<KmsGrantOperation>>
52 void SetOperations(OperationsT&& value) { m_operationsHasBeenSet = true; m_operations = std::forward<OperationsT>(value); }
53 template<typename OperationsT = Aws::Vector<KmsGrantOperation>>
54 KmsGrantConfiguration& WithOperations(OperationsT&& value) { SetOperations(std::forward<OperationsT>(value)); return *this;}
55 inline KmsGrantConfiguration& AddOperations(KmsGrantOperation value) { m_operationsHasBeenSet = true; m_operations.push_back(value); return *this; }
57
59
63 inline const Aws::String& GetGranteePrincipal() const { return m_granteePrincipal; }
64 inline bool GranteePrincipalHasBeenSet() const { return m_granteePrincipalHasBeenSet; }
65 template<typename GranteePrincipalT = Aws::String>
66 void SetGranteePrincipal(GranteePrincipalT&& value) { m_granteePrincipalHasBeenSet = true; m_granteePrincipal = std::forward<GranteePrincipalT>(value); }
67 template<typename GranteePrincipalT = Aws::String>
68 KmsGrantConfiguration& WithGranteePrincipal(GranteePrincipalT&& value) { SetGranteePrincipal(std::forward<GranteePrincipalT>(value)); return *this;}
70
72
77 inline const Aws::String& GetRetiringPrincipal() const { return m_retiringPrincipal; }
78 inline bool RetiringPrincipalHasBeenSet() const { return m_retiringPrincipalHasBeenSet; }
79 template<typename RetiringPrincipalT = Aws::String>
80 void SetRetiringPrincipal(RetiringPrincipalT&& value) { m_retiringPrincipalHasBeenSet = true; m_retiringPrincipal = std::forward<RetiringPrincipalT>(value); }
81 template<typename RetiringPrincipalT = Aws::String>
82 KmsGrantConfiguration& WithRetiringPrincipal(RetiringPrincipalT&& value) { SetRetiringPrincipal(std::forward<RetiringPrincipalT>(value)); return *this;}
84
86
94 inline const KmsGrantConstraints& GetConstraints() const { return m_constraints; }
95 inline bool ConstraintsHasBeenSet() const { return m_constraintsHasBeenSet; }
96 template<typename ConstraintsT = KmsGrantConstraints>
97 void SetConstraints(ConstraintsT&& value) { m_constraintsHasBeenSet = true; m_constraints = std::forward<ConstraintsT>(value); }
98 template<typename ConstraintsT = KmsGrantConstraints>
99 KmsGrantConfiguration& WithConstraints(ConstraintsT&& value) { SetConstraints(std::forward<ConstraintsT>(value)); return *this;}
101
103
108 inline const Aws::String& GetIssuingAccount() const { return m_issuingAccount; }
109 inline bool IssuingAccountHasBeenSet() const { return m_issuingAccountHasBeenSet; }
110 template<typename IssuingAccountT = Aws::String>
111 void SetIssuingAccount(IssuingAccountT&& value) { m_issuingAccountHasBeenSet = true; m_issuingAccount = std::forward<IssuingAccountT>(value); }
112 template<typename IssuingAccountT = Aws::String>
113 KmsGrantConfiguration& WithIssuingAccount(IssuingAccountT&& value) { SetIssuingAccount(std::forward<IssuingAccountT>(value)); return *this;}
115 private:
116
118 bool m_operationsHasBeenSet = false;
119
120 Aws::String m_granteePrincipal;
121 bool m_granteePrincipalHasBeenSet = false;
122
123 Aws::String m_retiringPrincipal;
124 bool m_retiringPrincipalHasBeenSet = false;
125
126 KmsGrantConstraints m_constraints;
127 bool m_constraintsHasBeenSet = false;
128
129 Aws::String m_issuingAccount;
130 bool m_issuingAccountHasBeenSet = false;
131 };
132
133} // namespace Model
134} // namespace AccessAnalyzer
135} // namespace Aws
const KmsGrantConstraints & GetConstraints() const
AWS_ACCESSANALYZER_API KmsGrantConfiguration()=default
KmsGrantConfiguration & WithGranteePrincipal(GranteePrincipalT &&value)
const Aws::Vector< KmsGrantOperation > & GetOperations() const
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const
KmsGrantConfiguration & AddOperations(KmsGrantOperation value)
KmsGrantConfiguration & WithRetiringPrincipal(RetiringPrincipalT &&value)
AWS_ACCESSANALYZER_API KmsGrantConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
KmsGrantConfiguration & WithIssuingAccount(IssuingAccountT &&value)
KmsGrantConfiguration & WithConstraints(ConstraintsT &&value)
KmsGrantConfiguration & WithOperations(OperationsT &&value)
AWS_ACCESSANALYZER_API KmsGrantConfiguration(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue