7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/signin/Signin_EXPORTS.h>
43 template <
typename EffectT = Aws::String>
45 m_effectHasBeenSet =
true;
46 m_effect = std::forward<EffectT>(value);
48 template <
typename EffectT = Aws::String>
61 template <
typename PrincipalT = Aws::Map<Aws::String, Aws::String>>
63 m_principalHasBeenSet =
true;
64 m_principal = std::forward<PrincipalT>(value);
66 template <
typename PrincipalT = Aws::Map<Aws::String, Aws::String>>
71 template <
typename PrincipalKeyT = Aws::String,
typename PrincipalValueT = Aws::String>
73 m_principalHasBeenSet =
true;
74 m_principal.emplace(std::forward<PrincipalKeyT>(key), std::forward<PrincipalValueT>(value));
85 template <
typename ActionT = Aws::Vector<Aws::String>>
87 m_actionHasBeenSet =
true;
88 m_action = std::forward<ActionT>(value);
90 template <
typename ActionT = Aws::Vector<Aws::String>>
95 template <
typename ActionT = Aws::String>
97 m_actionHasBeenSet =
true;
98 m_action.emplace_back(std::forward<ActionT>(value));
109 template <
typename ResourceT = Aws::String>
111 m_resourceHasBeenSet =
true;
112 m_resource = std::forward<ResourceT>(value);
114 template <
typename ResourceT = Aws::String>
127 template <
typename ConditionT = Aws::Map<Aws::String, Aws::Map<Aws::String, Aws::Vector<Aws::String>>>>
129 m_conditionHasBeenSet =
true;
130 m_condition = std::forward<ConditionT>(value);
132 template <
typename ConditionT = Aws::Map<Aws::String, Aws::Map<Aws::String, Aws::Vector<Aws::String>>>>
137 template <
typename ConditionKeyT = Aws::String,
typename ConditionValueT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
139 m_conditionHasBeenSet =
true;
140 m_condition.emplace(std::forward<ConditionKeyT>(key), std::forward<ConditionValueT>(value));
154 bool m_effectHasBeenSet =
false;
155 bool m_principalHasBeenSet =
false;
156 bool m_actionHasBeenSet =
false;
157 bool m_resourceHasBeenSet =
false;
158 bool m_conditionHasBeenSet =
false;
const Aws::Map< Aws::String, Aws::Map< Aws::String, Aws::Vector< Aws::String > > > & GetCondition() const
PolicyStatement & AddAction(ActionT &&value)
PolicyStatement & WithEffect(EffectT &&value)
PolicyStatement & WithResource(ResourceT &&value)
bool ConditionHasBeenSet() const
PolicyStatement & AddCondition(ConditionKeyT &&key, ConditionValueT &&value)
PolicyStatement & AddPrincipal(PrincipalKeyT &&key, PrincipalValueT &&value)
void SetResource(ResourceT &&value)
PolicyStatement & WithPrincipal(PrincipalT &&value)
void SetCondition(ConditionT &&value)
bool EffectHasBeenSet() const
PolicyStatement & WithAction(ActionT &&value)
void SetPrincipal(PrincipalT &&value)
void SetEffect(EffectT &&value)
AWS_SIGNIN_API PolicyStatement & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ActionHasBeenSet() const
AWS_SIGNIN_API PolicyStatement(Aws::Utils::Json::JsonView jsonValue)
AWS_SIGNIN_API PolicyStatement()=default
AWS_SIGNIN_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetResource() const
bool PrincipalHasBeenSet() const
PolicyStatement & WithCondition(ConditionT &&value)
const Aws::String & GetEffect() const
void SetAction(ActionT &&value)
bool ResourceHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetPrincipal() const
const Aws::Vector< Aws::String > & GetAction() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue