7#include <aws/workdocs/WorkDocs_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/workdocs/model/PrincipalType.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/workdocs/model/PermissionInfo.h>
49 template<
typename IdT = Aws::String>
50 void SetId(IdT&& value) { m_idHasBeenSet =
true; m_id = std::forward<IdT>(value); }
51 template<
typename IdT = Aws::String>
71 template<
typename RolesT = Aws::Vector<PermissionInfo>>
72 void SetRoles(RolesT&& value) { m_rolesHasBeenSet =
true; m_roles = std::forward<RolesT>(value); }
73 template<
typename RolesT = Aws::Vector<PermissionInfo>>
75 template<
typename RolesT = PermissionInfo>
76 Principal&
AddRoles(RolesT&& value) { m_rolesHasBeenSet =
true; m_roles.emplace_back(std::forward<RolesT>(value));
return *
this; }
81 bool m_idHasBeenSet =
false;
84 bool m_typeHasBeenSet =
false;
87 bool m_rolesHasBeenSet =
false;
bool IdHasBeenSet() const
void SetType(PrincipalType value)
const Aws::Vector< PermissionInfo > & GetRoles() const
Principal & WithRoles(RolesT &&value)
AWS_WORKDOCS_API Aws::Utils::Json::JsonValue Jsonize() const
bool TypeHasBeenSet() const
void SetRoles(RolesT &&value)
PrincipalType GetType() const
const Aws::String & GetId() const
Principal & AddRoles(RolesT &&value)
Principal & WithType(PrincipalType value)
AWS_WORKDOCS_API Principal()=default
AWS_WORKDOCS_API Principal & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_WORKDOCS_API Principal(Aws::Utils::Json::JsonView jsonValue)
Principal & WithId(IdT &&value)
bool RolesHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue