AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UserIdentity.h
1
6#pragma once
7#include <aws/macie2/Macie2_EXPORTS.h>
8#include <aws/macie2/model/AssumedRole.h>
9#include <aws/macie2/model/AwsAccount.h>
10#include <aws/macie2/model/AwsService.h>
11#include <aws/macie2/model/FederatedUser.h>
12#include <aws/macie2/model/IamUser.h>
13#include <aws/macie2/model/UserIdentityRoot.h>
14#include <aws/macie2/model/UserIdentityType.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Macie2
28{
29namespace Model
30{
31
39 {
40 public:
41 AWS_MACIE2_API UserIdentity() = default;
42 AWS_MACIE2_API UserIdentity(Aws::Utils::Json::JsonView jsonValue);
44 AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
53 inline const AssumedRole& GetAssumedRole() const { return m_assumedRole; }
54 inline bool AssumedRoleHasBeenSet() const { return m_assumedRoleHasBeenSet; }
55 template<typename AssumedRoleT = AssumedRole>
56 void SetAssumedRole(AssumedRoleT&& value) { m_assumedRoleHasBeenSet = true; m_assumedRole = std::forward<AssumedRoleT>(value); }
57 template<typename AssumedRoleT = AssumedRole>
58 UserIdentity& WithAssumedRole(AssumedRoleT&& value) { SetAssumedRole(std::forward<AssumedRoleT>(value)); return *this;}
60
62
66 inline const AwsAccount& GetAwsAccount() const { return m_awsAccount; }
67 inline bool AwsAccountHasBeenSet() const { return m_awsAccountHasBeenSet; }
68 template<typename AwsAccountT = AwsAccount>
69 void SetAwsAccount(AwsAccountT&& value) { m_awsAccountHasBeenSet = true; m_awsAccount = std::forward<AwsAccountT>(value); }
70 template<typename AwsAccountT = AwsAccount>
71 UserIdentity& WithAwsAccount(AwsAccountT&& value) { SetAwsAccount(std::forward<AwsAccountT>(value)); return *this;}
73
75
79 inline const AwsService& GetAwsService() const { return m_awsService; }
80 inline bool AwsServiceHasBeenSet() const { return m_awsServiceHasBeenSet; }
81 template<typename AwsServiceT = AwsService>
82 void SetAwsService(AwsServiceT&& value) { m_awsServiceHasBeenSet = true; m_awsService = std::forward<AwsServiceT>(value); }
83 template<typename AwsServiceT = AwsService>
84 UserIdentity& WithAwsService(AwsServiceT&& value) { SetAwsService(std::forward<AwsServiceT>(value)); return *this;}
86
88
94 inline const FederatedUser& GetFederatedUser() const { return m_federatedUser; }
95 inline bool FederatedUserHasBeenSet() const { return m_federatedUserHasBeenSet; }
96 template<typename FederatedUserT = FederatedUser>
97 void SetFederatedUser(FederatedUserT&& value) { m_federatedUserHasBeenSet = true; m_federatedUser = std::forward<FederatedUserT>(value); }
98 template<typename FederatedUserT = FederatedUser>
99 UserIdentity& WithFederatedUser(FederatedUserT&& value) { SetFederatedUser(std::forward<FederatedUserT>(value)); return *this;}
101
103
107 inline const IamUser& GetIamUser() const { return m_iamUser; }
108 inline bool IamUserHasBeenSet() const { return m_iamUserHasBeenSet; }
109 template<typename IamUserT = IamUser>
110 void SetIamUser(IamUserT&& value) { m_iamUserHasBeenSet = true; m_iamUser = std::forward<IamUserT>(value); }
111 template<typename IamUserT = IamUser>
112 UserIdentity& WithIamUser(IamUserT&& value) { SetIamUser(std::forward<IamUserT>(value)); return *this;}
114
116
120 inline const UserIdentityRoot& GetRoot() const { return m_root; }
121 inline bool RootHasBeenSet() const { return m_rootHasBeenSet; }
122 template<typename RootT = UserIdentityRoot>
123 void SetRoot(RootT&& value) { m_rootHasBeenSet = true; m_root = std::forward<RootT>(value); }
124 template<typename RootT = UserIdentityRoot>
125 UserIdentity& WithRoot(RootT&& value) { SetRoot(std::forward<RootT>(value)); return *this;}
127
129
132 inline UserIdentityType GetType() const { return m_type; }
133 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
134 inline void SetType(UserIdentityType value) { m_typeHasBeenSet = true; m_type = value; }
135 inline UserIdentity& WithType(UserIdentityType value) { SetType(value); return *this;}
137 private:
138
139 AssumedRole m_assumedRole;
140 bool m_assumedRoleHasBeenSet = false;
141
142 AwsAccount m_awsAccount;
143 bool m_awsAccountHasBeenSet = false;
144
145 AwsService m_awsService;
146 bool m_awsServiceHasBeenSet = false;
147
148 FederatedUser m_federatedUser;
149 bool m_federatedUserHasBeenSet = false;
150
151 IamUser m_iamUser;
152 bool m_iamUserHasBeenSet = false;
153
154 UserIdentityRoot m_root;
155 bool m_rootHasBeenSet = false;
156
158 bool m_typeHasBeenSet = false;
159 };
160
161} // namespace Model
162} // namespace Macie2
163} // namespace Aws
const AwsAccount & GetAwsAccount() const
void SetAwsService(AwsServiceT &&value)
void SetIamUser(IamUserT &&value)
UserIdentity & WithAwsAccount(AwsAccountT &&value)
void SetAwsAccount(AwsAccountT &&value)
AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const
UserIdentity & WithAssumedRole(AssumedRoleT &&value)
void SetType(UserIdentityType value)
AWS_MACIE2_API UserIdentity()=default
AWS_MACIE2_API UserIdentity & operator=(Aws::Utils::Json::JsonView jsonValue)
UserIdentity & WithAwsService(AwsServiceT &&value)
UserIdentityType GetType() const
UserIdentity & WithRoot(RootT &&value)
UserIdentity & WithFederatedUser(FederatedUserT &&value)
const FederatedUser & GetFederatedUser() const
const AwsService & GetAwsService() const
void SetAssumedRole(AssumedRoleT &&value)
const AssumedRole & GetAssumedRole() const
const IamUser & GetIamUser() const
void SetFederatedUser(FederatedUserT &&value)
UserIdentity & WithType(UserIdentityType value)
AWS_MACIE2_API UserIdentity(Aws::Utils::Json::JsonView jsonValue)
UserIdentity & WithIamUser(IamUserT &&value)
const UserIdentityRoot & GetRoot() const
Aws::Utils::Json::JsonValue JsonValue