AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
PermissionCondition.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/qbusiness/QBusiness_EXPORTS.h>
10#include <aws/qbusiness/model/PermissionConditionOperator.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace QBusiness {
22namespace Model {
23
32 public:
33 AWS_QBUSINESS_API PermissionCondition() = default;
36 AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline PermissionConditionOperator GetConditionOperator() const { return m_conditionOperator; }
44 inline bool ConditionOperatorHasBeenSet() const { return m_conditionOperatorHasBeenSet; }
46 m_conditionOperatorHasBeenSet = true;
47 m_conditionOperator = value;
48 }
51 return *this;
52 }
54
56
60 inline const Aws::String& GetConditionKey() const { return m_conditionKey; }
61 inline bool ConditionKeyHasBeenSet() const { return m_conditionKeyHasBeenSet; }
62 template <typename ConditionKeyT = Aws::String>
64 m_conditionKeyHasBeenSet = true;
65 m_conditionKey = std::forward<ConditionKeyT>(value);
66 }
67 template <typename ConditionKeyT = Aws::String>
69 SetConditionKey(std::forward<ConditionKeyT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::Vector<Aws::String>& GetConditionValues() const { return m_conditionValues; }
79 inline bool ConditionValuesHasBeenSet() const { return m_conditionValuesHasBeenSet; }
80 template <typename ConditionValuesT = Aws::Vector<Aws::String>>
82 m_conditionValuesHasBeenSet = true;
83 m_conditionValues = std::forward<ConditionValuesT>(value);
84 }
85 template <typename ConditionValuesT = Aws::Vector<Aws::String>>
87 SetConditionValues(std::forward<ConditionValuesT>(value));
88 return *this;
89 }
90 template <typename ConditionValuesT = Aws::String>
92 m_conditionValuesHasBeenSet = true;
93 m_conditionValues.emplace_back(std::forward<ConditionValuesT>(value));
94 return *this;
95 }
97 private:
99
100 Aws::String m_conditionKey;
101
102 Aws::Vector<Aws::String> m_conditionValues;
103 bool m_conditionOperatorHasBeenSet = false;
104 bool m_conditionKeyHasBeenSet = false;
105 bool m_conditionValuesHasBeenSet = false;
106};
107
108} // namespace Model
109} // namespace QBusiness
110} // namespace Aws
PermissionCondition & WithConditionKey(ConditionKeyT &&value)
AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetConditionValues(ConditionValuesT &&value)
AWS_QBUSINESS_API PermissionCondition & operator=(Aws::Utils::Json::JsonView jsonValue)
PermissionCondition & AddConditionValues(ConditionValuesT &&value)
const Aws::Vector< Aws::String > & GetConditionValues() const
PermissionConditionOperator GetConditionOperator() const
AWS_QBUSINESS_API PermissionCondition(Aws::Utils::Json::JsonView jsonValue)
PermissionCondition & WithConditionValues(ConditionValuesT &&value)
AWS_QBUSINESS_API PermissionCondition()=default
PermissionCondition & WithConditionOperator(PermissionConditionOperator value)
void SetConditionOperator(PermissionConditionOperator value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue