AWS SDK for C++  1.9.109
AWS SDK for C++
Permission.h
Go to the documentation of this file.
1 
6 #pragma once
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Utils
17 {
18 namespace Json
19 {
20  class JsonValue;
21  class JsonView;
22 } // namespace Json
23 } // namespace Utils
24 namespace WorkMail
25 {
26 namespace Model
27 {
28 
36  {
37  public:
42 
43 
48  inline const Aws::String& GetGranteeId() const{ return m_granteeId; }
49 
54  inline bool GranteeIdHasBeenSet() const { return m_granteeIdHasBeenSet; }
55 
60  inline void SetGranteeId(const Aws::String& value) { m_granteeIdHasBeenSet = true; m_granteeId = value; }
61 
66  inline void SetGranteeId(Aws::String&& value) { m_granteeIdHasBeenSet = true; m_granteeId = std::move(value); }
67 
72  inline void SetGranteeId(const char* value) { m_granteeIdHasBeenSet = true; m_granteeId.assign(value); }
73 
78  inline Permission& WithGranteeId(const Aws::String& value) { SetGranteeId(value); return *this;}
79 
84  inline Permission& WithGranteeId(Aws::String&& value) { SetGranteeId(std::move(value)); return *this;}
85 
90  inline Permission& WithGranteeId(const char* value) { SetGranteeId(value); return *this;}
91 
92 
96  inline const MemberType& GetGranteeType() const{ return m_granteeType; }
97 
101  inline bool GranteeTypeHasBeenSet() const { return m_granteeTypeHasBeenSet; }
102 
106  inline void SetGranteeType(const MemberType& value) { m_granteeTypeHasBeenSet = true; m_granteeType = value; }
107 
111  inline void SetGranteeType(MemberType&& value) { m_granteeTypeHasBeenSet = true; m_granteeType = std::move(value); }
112 
116  inline Permission& WithGranteeType(const MemberType& value) { SetGranteeType(value); return *this;}
117 
121  inline Permission& WithGranteeType(MemberType&& value) { SetGranteeType(std::move(value)); return *this;}
122 
123 
132  inline const Aws::Vector<PermissionType>& GetPermissionValues() const{ return m_permissionValues; }
133 
142  inline bool PermissionValuesHasBeenSet() const { return m_permissionValuesHasBeenSet; }
143 
152  inline void SetPermissionValues(const Aws::Vector<PermissionType>& value) { m_permissionValuesHasBeenSet = true; m_permissionValues = value; }
153 
162  inline void SetPermissionValues(Aws::Vector<PermissionType>&& value) { m_permissionValuesHasBeenSet = true; m_permissionValues = std::move(value); }
163 
172  inline Permission& WithPermissionValues(const Aws::Vector<PermissionType>& value) { SetPermissionValues(value); return *this;}
173 
182  inline Permission& WithPermissionValues(Aws::Vector<PermissionType>&& value) { SetPermissionValues(std::move(value)); return *this;}
183 
192  inline Permission& AddPermissionValues(const PermissionType& value) { m_permissionValuesHasBeenSet = true; m_permissionValues.push_back(value); return *this; }
193 
202  inline Permission& AddPermissionValues(PermissionType&& value) { m_permissionValuesHasBeenSet = true; m_permissionValues.push_back(std::move(value)); return *this; }
203 
204  private:
205 
206  Aws::String m_granteeId;
207  bool m_granteeIdHasBeenSet;
208 
209  MemberType m_granteeType;
210  bool m_granteeTypeHasBeenSet;
211 
212  Aws::Vector<PermissionType> m_permissionValues;
213  bool m_permissionValuesHasBeenSet;
214  };
215 
216 } // namespace Model
217 } // namespace WorkMail
218 } // namespace Aws
Aws::WorkMail::Model::Permission::GranteeTypeHasBeenSet
bool GranteeTypeHasBeenSet() const
Definition: Permission.h:101
Aws::WorkMail::Model::Permission::SetGranteeId
void SetGranteeId(const char *value)
Definition: Permission.h:72
MemberType.h
Aws::WorkMail::Model::Permission::PermissionValuesHasBeenSet
bool PermissionValuesHasBeenSet() const
Definition: Permission.h:142
Aws::WorkMail::Model::Permission::Permission
Permission(Aws::Utils::Json::JsonView jsonValue)
Aws::WorkMail::Model::Permission
Definition: Permission.h:36
Aws::WorkMail::Model::Permission::SetGranteeId
void SetGranteeId(const Aws::String &value)
Definition: Permission.h:60
Aws::WorkMail::Model::Permission::operator=
Permission & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::WorkMail::Model::Permission::GetGranteeId
const Aws::String & GetGranteeId() const
Definition: Permission.h:48
Aws::WorkMail::Model::Permission::WithGranteeType
Permission & WithGranteeType(const MemberType &value)
Definition: Permission.h:116
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
WorkMail_EXPORTS.h
Aws::WorkMail::Model::Permission::GranteeIdHasBeenSet
bool GranteeIdHasBeenSet() const
Definition: Permission.h:54
Aws::WorkMail::Model::Permission::AddPermissionValues
Permission & AddPermissionValues(const PermissionType &value)
Definition: Permission.h:192
AWSVector.h
Aws::WorkMail::Model::Permission::WithGranteeType
Permission & WithGranteeType(MemberType &&value)
Definition: Permission.h:121
PermissionType.h
Aws::WorkMail::Model::Permission::Jsonize
Aws::Utils::Json::JsonValue Jsonize() const
Aws::WorkMail::Model::Permission::WithGranteeId
Permission & WithGranteeId(const char *value)
Definition: Permission.h:90
Aws::Utils::Json::JsonView
Definition: JsonSerializer.h:235
AWSString.h
Aws::Utils::Json::JsonValue
Definition: JsonSerializer.h:33
Aws::WorkMail::Model::Permission::GetGranteeType
const MemberType & GetGranteeType() const
Definition: Permission.h:96
Aws::WorkMail::Model::Permission::SetGranteeId
void SetGranteeId(Aws::String &&value)
Definition: Permission.h:66
Aws::WorkMail::Model::Permission::SetPermissionValues
void SetPermissionValues(Aws::Vector< PermissionType > &&value)
Definition: Permission.h:162
Aws::WorkMail::Model::Permission::AddPermissionValues
Permission & AddPermissionValues(PermissionType &&value)
Definition: Permission.h:202
Aws::WorkMail::Model::PermissionType
PermissionType
Definition: PermissionType.h:17
Aws::WorkMail::Model::Permission::SetPermissionValues
void SetPermissionValues(const Aws::Vector< PermissionType > &value)
Definition: Permission.h:152
Aws
Definition: AccessManagementClient.h:15
Aws::WorkMail::Model::MemberType
MemberType
Definition: MemberType.h:17
Aws::WorkMail::Model::Permission::WithGranteeId
Permission & WithGranteeId(const Aws::String &value)
Definition: Permission.h:78
Aws::WorkMail::Model::Permission::WithPermissionValues
Permission & WithPermissionValues(const Aws::Vector< PermissionType > &value)
Definition: Permission.h:172
AWS_WORKMAIL_API
#define AWS_WORKMAIL_API
Definition: WorkMail_EXPORTS.h:28
Aws::WorkMail::Model::Permission::Permission
Permission()
Aws::WorkMail::Model::Permission::GetPermissionValues
const Aws::Vector< PermissionType > & GetPermissionValues() const
Definition: Permission.h:132
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::WorkMail::Model::Permission::WithGranteeId
Permission & WithGranteeId(Aws::String &&value)
Definition: Permission.h:84
Aws::WorkMail::Model::Permission::SetGranteeType
void SetGranteeType(const MemberType &value)
Definition: Permission.h:106
Aws::WorkMail::Model::Permission::SetGranteeType
void SetGranteeType(MemberType &&value)
Definition: Permission.h:111
Aws::WorkMail::Model::Permission::WithPermissionValues
Permission & WithPermissionValues(Aws::Vector< PermissionType > &&value)
Definition: Permission.h:182