AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Permission.h
1
6#pragma once
7#include <aws/workmail/WorkMail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/workmail/model/MemberType.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/workmail/model/PermissionType.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 WorkMail
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_WORKMAIL_API Permission() = default;
39 AWS_WORKMAIL_API Permission(Aws::Utils::Json::JsonView jsonValue);
40 AWS_WORKMAIL_API Permission& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline const Aws::String& GetGranteeId() const { return m_granteeId; }
50 inline bool GranteeIdHasBeenSet() const { return m_granteeIdHasBeenSet; }
51 template<typename GranteeIdT = Aws::String>
52 void SetGranteeId(GranteeIdT&& value) { m_granteeIdHasBeenSet = true; m_granteeId = std::forward<GranteeIdT>(value); }
53 template<typename GranteeIdT = Aws::String>
54 Permission& WithGranteeId(GranteeIdT&& value) { SetGranteeId(std::forward<GranteeIdT>(value)); return *this;}
56
58
61 inline MemberType GetGranteeType() const { return m_granteeType; }
62 inline bool GranteeTypeHasBeenSet() const { return m_granteeTypeHasBeenSet; }
63 inline void SetGranteeType(MemberType value) { m_granteeTypeHasBeenSet = true; m_granteeType = value; }
64 inline Permission& WithGranteeType(MemberType value) { SetGranteeType(value); return *this;}
66
68
76 inline const Aws::Vector<PermissionType>& GetPermissionValues() const { return m_permissionValues; }
77 inline bool PermissionValuesHasBeenSet() const { return m_permissionValuesHasBeenSet; }
78 template<typename PermissionValuesT = Aws::Vector<PermissionType>>
79 void SetPermissionValues(PermissionValuesT&& value) { m_permissionValuesHasBeenSet = true; m_permissionValues = std::forward<PermissionValuesT>(value); }
80 template<typename PermissionValuesT = Aws::Vector<PermissionType>>
81 Permission& WithPermissionValues(PermissionValuesT&& value) { SetPermissionValues(std::forward<PermissionValuesT>(value)); return *this;}
82 inline Permission& AddPermissionValues(PermissionType value) { m_permissionValuesHasBeenSet = true; m_permissionValues.push_back(value); return *this; }
84 private:
85
86 Aws::String m_granteeId;
87 bool m_granteeIdHasBeenSet = false;
88
89 MemberType m_granteeType{MemberType::NOT_SET};
90 bool m_granteeTypeHasBeenSet = false;
91
92 Aws::Vector<PermissionType> m_permissionValues;
93 bool m_permissionValuesHasBeenSet = false;
94 };
95
96} // namespace Model
97} // namespace WorkMail
98} // namespace Aws
const Aws::Vector< PermissionType > & GetPermissionValues() const
Definition Permission.h:76
AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetGranteeId() const
Definition Permission.h:49
AWS_WORKMAIL_API Permission(Aws::Utils::Json::JsonView jsonValue)
Permission & AddPermissionValues(PermissionType value)
Definition Permission.h:82
void SetPermissionValues(PermissionValuesT &&value)
Definition Permission.h:79
MemberType GetGranteeType() const
Definition Permission.h:61
void SetGranteeType(MemberType value)
Definition Permission.h:63
Permission & WithPermissionValues(PermissionValuesT &&value)
Definition Permission.h:81
void SetGranteeId(GranteeIdT &&value)
Definition Permission.h:52
Permission & WithGranteeType(MemberType value)
Definition Permission.h:64
AWS_WORKMAIL_API Permission()=default
AWS_WORKMAIL_API Permission & operator=(Aws::Utils::Json::JsonView jsonValue)
bool PermissionValuesHasBeenSet() const
Definition Permission.h:77
Permission & WithGranteeId(GranteeIdT &&value)
Definition Permission.h:54
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue