AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PermissionCondition.h
1
6#pragma once
7#include <aws/qbusiness/QBusiness_EXPORTS.h>
8#include <aws/qbusiness/model/PermissionConditionOperator.h>
9#include <aws/core/utils/memory/stl/AWSString.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 QBusiness
24{
25namespace Model
26{
27
36 {
37 public:
38 AWS_QBUSINESS_API PermissionCondition() = default;
41 AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline PermissionConditionOperator GetConditionOperator() const { return m_conditionOperator; }
50 inline bool ConditionOperatorHasBeenSet() const { return m_conditionOperatorHasBeenSet; }
51 inline void SetConditionOperator(PermissionConditionOperator value) { m_conditionOperatorHasBeenSet = true; m_conditionOperator = value; }
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>
63 void SetConditionKey(ConditionKeyT&& value) { m_conditionKeyHasBeenSet = true; m_conditionKey = std::forward<ConditionKeyT>(value); }
64 template<typename ConditionKeyT = Aws::String>
65 PermissionCondition& WithConditionKey(ConditionKeyT&& value) { SetConditionKey(std::forward<ConditionKeyT>(value)); return *this;}
67
69
72 inline const Aws::Vector<Aws::String>& GetConditionValues() const { return m_conditionValues; }
73 inline bool ConditionValuesHasBeenSet() const { return m_conditionValuesHasBeenSet; }
74 template<typename ConditionValuesT = Aws::Vector<Aws::String>>
75 void SetConditionValues(ConditionValuesT&& value) { m_conditionValuesHasBeenSet = true; m_conditionValues = std::forward<ConditionValuesT>(value); }
76 template<typename ConditionValuesT = Aws::Vector<Aws::String>>
77 PermissionCondition& WithConditionValues(ConditionValuesT&& value) { SetConditionValues(std::forward<ConditionValuesT>(value)); return *this;}
78 template<typename ConditionValuesT = Aws::String>
79 PermissionCondition& AddConditionValues(ConditionValuesT&& value) { m_conditionValuesHasBeenSet = true; m_conditionValues.emplace_back(std::forward<ConditionValuesT>(value)); return *this; }
81 private:
82
84 bool m_conditionOperatorHasBeenSet = false;
85
86 Aws::String m_conditionKey;
87 bool m_conditionKeyHasBeenSet = false;
88
89 Aws::Vector<Aws::String> m_conditionValues;
90 bool m_conditionValuesHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace QBusiness
95} // 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