AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Principal.h
1
6#pragma once
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>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace WorkDocs
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_WORKDOCS_API Principal();
38 AWS_WORKDOCS_API Principal(Aws::Utils::Json::JsonView jsonValue);
39 AWS_WORKDOCS_API Principal& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_WORKDOCS_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::String& GetId() const{ return m_id; }
48 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
49 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
50 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
51 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
52 inline Principal& WithId(const Aws::String& value) { SetId(value); return *this;}
53 inline Principal& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
54 inline Principal& WithId(const char* value) { SetId(value); return *this;}
56
58
61 inline const PrincipalType& GetType() const{ return m_type; }
62 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
63 inline void SetType(const PrincipalType& value) { m_typeHasBeenSet = true; m_type = value; }
64 inline void SetType(PrincipalType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
65 inline Principal& WithType(const PrincipalType& value) { SetType(value); return *this;}
66 inline Principal& WithType(PrincipalType&& value) { SetType(std::move(value)); return *this;}
68
70
73 inline const Aws::Vector<PermissionInfo>& GetRoles() const{ return m_roles; }
74 inline bool RolesHasBeenSet() const { return m_rolesHasBeenSet; }
75 inline void SetRoles(const Aws::Vector<PermissionInfo>& value) { m_rolesHasBeenSet = true; m_roles = value; }
76 inline void SetRoles(Aws::Vector<PermissionInfo>&& value) { m_rolesHasBeenSet = true; m_roles = std::move(value); }
77 inline Principal& WithRoles(const Aws::Vector<PermissionInfo>& value) { SetRoles(value); return *this;}
78 inline Principal& WithRoles(Aws::Vector<PermissionInfo>&& value) { SetRoles(std::move(value)); return *this;}
79 inline Principal& AddRoles(const PermissionInfo& value) { m_rolesHasBeenSet = true; m_roles.push_back(value); return *this; }
80 inline Principal& AddRoles(PermissionInfo&& value) { m_rolesHasBeenSet = true; m_roles.push_back(std::move(value)); return *this; }
82 private:
83
84 Aws::String m_id;
85 bool m_idHasBeenSet = false;
86
87 PrincipalType m_type;
88 bool m_typeHasBeenSet = false;
89
91 bool m_rolesHasBeenSet = false;
92 };
93
94} // namespace Model
95} // namespace WorkDocs
96} // namespace Aws
Principal & WithRoles(Aws::Vector< PermissionInfo > &&value)
Definition Principal.h:78
Principal & WithType(PrincipalType &&value)
Definition Principal.h:66
void SetId(Aws::String &&value)
Definition Principal.h:50
const Aws::Vector< PermissionInfo > & GetRoles() const
Definition Principal.h:73
Principal & WithType(const PrincipalType &value)
Definition Principal.h:65
void SetId(const Aws::String &value)
Definition Principal.h:49
void SetType(PrincipalType &&value)
Definition Principal.h:64
AWS_WORKDOCS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_WORKDOCS_API Principal()
void SetRoles(Aws::Vector< PermissionInfo > &&value)
Definition Principal.h:76
Principal & WithId(const char *value)
Definition Principal.h:54
void SetType(const PrincipalType &value)
Definition Principal.h:63
const Aws::String & GetId() const
Definition Principal.h:47
void SetRoles(const Aws::Vector< PermissionInfo > &value)
Definition Principal.h:75
AWS_WORKDOCS_API Principal & operator=(Aws::Utils::Json::JsonView jsonValue)
Principal & AddRoles(PermissionInfo &&value)
Definition Principal.h:80
Principal & WithRoles(const Aws::Vector< PermissionInfo > &value)
Definition Principal.h:77
AWS_WORKDOCS_API Principal(Aws::Utils::Json::JsonView jsonValue)
Principal & WithId(Aws::String &&value)
Definition Principal.h:53
void SetId(const char *value)
Definition Principal.h:51
const PrincipalType & GetType() const
Definition Principal.h:61
Principal & AddRoles(const PermissionInfo &value)
Definition Principal.h:79
Principal & WithId(const Aws::String &value)
Definition Principal.h:52
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue