AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
IamActionDefinition.h
1
6#pragma once
7#include <aws/budgets/Budgets_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Budgets
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_BUDGETS_API IamActionDefinition() = default;
39 AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetPolicyArn() const { return m_policyArn; }
47 inline bool PolicyArnHasBeenSet() const { return m_policyArnHasBeenSet; }
48 template<typename PolicyArnT = Aws::String>
49 void SetPolicyArn(PolicyArnT&& value) { m_policyArnHasBeenSet = true; m_policyArn = std::forward<PolicyArnT>(value); }
50 template<typename PolicyArnT = Aws::String>
51 IamActionDefinition& WithPolicyArn(PolicyArnT&& value) { SetPolicyArn(std::forward<PolicyArnT>(value)); return *this;}
53
55
58 inline const Aws::Vector<Aws::String>& GetRoles() const { return m_roles; }
59 inline bool RolesHasBeenSet() const { return m_rolesHasBeenSet; }
60 template<typename RolesT = Aws::Vector<Aws::String>>
61 void SetRoles(RolesT&& value) { m_rolesHasBeenSet = true; m_roles = std::forward<RolesT>(value); }
62 template<typename RolesT = Aws::Vector<Aws::String>>
63 IamActionDefinition& WithRoles(RolesT&& value) { SetRoles(std::forward<RolesT>(value)); return *this;}
64 template<typename RolesT = Aws::String>
65 IamActionDefinition& AddRoles(RolesT&& value) { m_rolesHasBeenSet = true; m_roles.emplace_back(std::forward<RolesT>(value)); return *this; }
67
69
72 inline const Aws::Vector<Aws::String>& GetGroups() const { return m_groups; }
73 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
74 template<typename GroupsT = Aws::Vector<Aws::String>>
75 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups = std::forward<GroupsT>(value); }
76 template<typename GroupsT = Aws::Vector<Aws::String>>
77 IamActionDefinition& WithGroups(GroupsT&& value) { SetGroups(std::forward<GroupsT>(value)); return *this;}
78 template<typename GroupsT = Aws::String>
79 IamActionDefinition& AddGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups.emplace_back(std::forward<GroupsT>(value)); return *this; }
81
83
86 inline const Aws::Vector<Aws::String>& GetUsers() const { return m_users; }
87 inline bool UsersHasBeenSet() const { return m_usersHasBeenSet; }
88 template<typename UsersT = Aws::Vector<Aws::String>>
89 void SetUsers(UsersT&& value) { m_usersHasBeenSet = true; m_users = std::forward<UsersT>(value); }
90 template<typename UsersT = Aws::Vector<Aws::String>>
91 IamActionDefinition& WithUsers(UsersT&& value) { SetUsers(std::forward<UsersT>(value)); return *this;}
92 template<typename UsersT = Aws::String>
93 IamActionDefinition& AddUsers(UsersT&& value) { m_usersHasBeenSet = true; m_users.emplace_back(std::forward<UsersT>(value)); return *this; }
95 private:
96
97 Aws::String m_policyArn;
98 bool m_policyArnHasBeenSet = false;
99
101 bool m_rolesHasBeenSet = false;
102
104 bool m_groupsHasBeenSet = false;
105
107 bool m_usersHasBeenSet = false;
108 };
109
110} // namespace Model
111} // namespace Budgets
112} // namespace Aws
AWS_BUDGETS_API IamActionDefinition()=default
IamActionDefinition & AddRoles(RolesT &&value)
AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const
IamActionDefinition & WithPolicyArn(PolicyArnT &&value)
IamActionDefinition & AddUsers(UsersT &&value)
const Aws::Vector< Aws::String > & GetGroups() const
const Aws::Vector< Aws::String > & GetRoles() const
const Aws::Vector< Aws::String > & GetUsers() const
IamActionDefinition & WithGroups(GroupsT &&value)
AWS_BUDGETS_API IamActionDefinition(Aws::Utils::Json::JsonView jsonValue)
IamActionDefinition & AddGroups(GroupsT &&value)
AWS_BUDGETS_API IamActionDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
IamActionDefinition & WithUsers(UsersT &&value)
IamActionDefinition & WithRoles(RolesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue