AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
ImpersonationRule.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/AccessEffect.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace WorkMail
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_WORKMAIL_API ImpersonationRule();
37 AWS_WORKMAIL_API ImpersonationRule(Aws::Utils::Json::JsonView jsonValue);
39 AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetImpersonationRuleId() const{ return m_impersonationRuleId; }
47 inline bool ImpersonationRuleIdHasBeenSet() const { return m_impersonationRuleIdHasBeenSet; }
48 inline void SetImpersonationRuleId(const Aws::String& value) { m_impersonationRuleIdHasBeenSet = true; m_impersonationRuleId = value; }
49 inline void SetImpersonationRuleId(Aws::String&& value) { m_impersonationRuleIdHasBeenSet = true; m_impersonationRuleId = std::move(value); }
50 inline void SetImpersonationRuleId(const char* value) { m_impersonationRuleIdHasBeenSet = true; m_impersonationRuleId.assign(value); }
51 inline ImpersonationRule& WithImpersonationRuleId(const Aws::String& value) { SetImpersonationRuleId(value); return *this;}
52 inline ImpersonationRule& WithImpersonationRuleId(Aws::String&& value) { SetImpersonationRuleId(std::move(value)); return *this;}
53 inline ImpersonationRule& WithImpersonationRuleId(const char* value) { SetImpersonationRuleId(value); return *this;}
55
57
60 inline const Aws::String& GetName() const{ return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
63 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
64 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
65 inline ImpersonationRule& WithName(const Aws::String& value) { SetName(value); return *this;}
66 inline ImpersonationRule& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
67 inline ImpersonationRule& WithName(const char* value) { SetName(value); return *this;}
69
71
74 inline const Aws::String& GetDescription() const{ return m_description; }
75 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
76 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
77 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
78 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
79 inline ImpersonationRule& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
80 inline ImpersonationRule& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
81 inline ImpersonationRule& WithDescription(const char* value) { SetDescription(value); return *this;}
83
85
89 inline const AccessEffect& GetEffect() const{ return m_effect; }
90 inline bool EffectHasBeenSet() const { return m_effectHasBeenSet; }
91 inline void SetEffect(const AccessEffect& value) { m_effectHasBeenSet = true; m_effect = value; }
92 inline void SetEffect(AccessEffect&& value) { m_effectHasBeenSet = true; m_effect = std::move(value); }
93 inline ImpersonationRule& WithEffect(const AccessEffect& value) { SetEffect(value); return *this;}
94 inline ImpersonationRule& WithEffect(AccessEffect&& value) { SetEffect(std::move(value)); return *this;}
96
98
101 inline const Aws::Vector<Aws::String>& GetTargetUsers() const{ return m_targetUsers; }
102 inline bool TargetUsersHasBeenSet() const { return m_targetUsersHasBeenSet; }
103 inline void SetTargetUsers(const Aws::Vector<Aws::String>& value) { m_targetUsersHasBeenSet = true; m_targetUsers = value; }
104 inline void SetTargetUsers(Aws::Vector<Aws::String>&& value) { m_targetUsersHasBeenSet = true; m_targetUsers = std::move(value); }
105 inline ImpersonationRule& WithTargetUsers(const Aws::Vector<Aws::String>& value) { SetTargetUsers(value); return *this;}
106 inline ImpersonationRule& WithTargetUsers(Aws::Vector<Aws::String>&& value) { SetTargetUsers(std::move(value)); return *this;}
107 inline ImpersonationRule& AddTargetUsers(const Aws::String& value) { m_targetUsersHasBeenSet = true; m_targetUsers.push_back(value); return *this; }
108 inline ImpersonationRule& AddTargetUsers(Aws::String&& value) { m_targetUsersHasBeenSet = true; m_targetUsers.push_back(std::move(value)); return *this; }
109 inline ImpersonationRule& AddTargetUsers(const char* value) { m_targetUsersHasBeenSet = true; m_targetUsers.push_back(value); return *this; }
111
113
116 inline const Aws::Vector<Aws::String>& GetNotTargetUsers() const{ return m_notTargetUsers; }
117 inline bool NotTargetUsersHasBeenSet() const { return m_notTargetUsersHasBeenSet; }
118 inline void SetNotTargetUsers(const Aws::Vector<Aws::String>& value) { m_notTargetUsersHasBeenSet = true; m_notTargetUsers = value; }
119 inline void SetNotTargetUsers(Aws::Vector<Aws::String>&& value) { m_notTargetUsersHasBeenSet = true; m_notTargetUsers = std::move(value); }
121 inline ImpersonationRule& WithNotTargetUsers(Aws::Vector<Aws::String>&& value) { SetNotTargetUsers(std::move(value)); return *this;}
122 inline ImpersonationRule& AddNotTargetUsers(const Aws::String& value) { m_notTargetUsersHasBeenSet = true; m_notTargetUsers.push_back(value); return *this; }
123 inline ImpersonationRule& AddNotTargetUsers(Aws::String&& value) { m_notTargetUsersHasBeenSet = true; m_notTargetUsers.push_back(std::move(value)); return *this; }
124 inline ImpersonationRule& AddNotTargetUsers(const char* value) { m_notTargetUsersHasBeenSet = true; m_notTargetUsers.push_back(value); return *this; }
126 private:
127
128 Aws::String m_impersonationRuleId;
129 bool m_impersonationRuleIdHasBeenSet = false;
130
131 Aws::String m_name;
132 bool m_nameHasBeenSet = false;
133
134 Aws::String m_description;
135 bool m_descriptionHasBeenSet = false;
136
137 AccessEffect m_effect;
138 bool m_effectHasBeenSet = false;
139
140 Aws::Vector<Aws::String> m_targetUsers;
141 bool m_targetUsersHasBeenSet = false;
142
143 Aws::Vector<Aws::String> m_notTargetUsers;
144 bool m_notTargetUsersHasBeenSet = false;
145 };
146
147} // namespace Model
148} // namespace WorkMail
149} // namespace Aws
void SetName(const Aws::String &value)
void SetDescription(const Aws::String &value)
void SetImpersonationRuleId(const Aws::String &value)
ImpersonationRule & WithName(const char *value)
void SetNotTargetUsers(const Aws::Vector< Aws::String > &value)
ImpersonationRule & WithName(Aws::String &&value)
ImpersonationRule & AddTargetUsers(const char *value)
ImpersonationRule & WithEffect(AccessEffect &&value)
void SetEffect(const AccessEffect &value)
AWS_WORKMAIL_API ImpersonationRule(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetTargetUsers() const
void SetNotTargetUsers(Aws::Vector< Aws::String > &&value)
void SetImpersonationRuleId(Aws::String &&value)
ImpersonationRule & AddTargetUsers(const Aws::String &value)
ImpersonationRule & AddNotTargetUsers(const Aws::String &value)
void SetImpersonationRuleId(const char *value)
AWS_WORKMAIL_API ImpersonationRule & operator=(Aws::Utils::Json::JsonView jsonValue)
ImpersonationRule & WithTargetUsers(const Aws::Vector< Aws::String > &value)
ImpersonationRule & WithNotTargetUsers(Aws::Vector< Aws::String > &&value)
const AccessEffect & GetEffect() const
ImpersonationRule & WithImpersonationRuleId(Aws::String &&value)
ImpersonationRule & WithTargetUsers(Aws::Vector< Aws::String > &&value)
ImpersonationRule & WithDescription(Aws::String &&value)
ImpersonationRule & WithEffect(const AccessEffect &value)
ImpersonationRule & AddNotTargetUsers(Aws::String &&value)
ImpersonationRule & WithName(const Aws::String &value)
ImpersonationRule & WithImpersonationRuleId(const Aws::String &value)
ImpersonationRule & AddTargetUsers(Aws::String &&value)
ImpersonationRule & WithImpersonationRuleId(const char *value)
const Aws::Vector< Aws::String > & GetNotTargetUsers() const
ImpersonationRule & WithDescription(const Aws::String &value)
ImpersonationRule & WithNotTargetUsers(const Aws::Vector< Aws::String > &value)
AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTargetUsers(const Aws::Vector< Aws::String > &value)
void SetTargetUsers(Aws::Vector< Aws::String > &&value)
ImpersonationRule & AddNotTargetUsers(const char *value)
const Aws::String & GetDescription() const
ImpersonationRule & WithDescription(const char *value)
const Aws::String & GetImpersonationRuleId() 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