AWS SDK for C++  1.8.71
AWS SDK for C++
CreateMitigationActionRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/iot/IoT_EXPORTS.h>
8 #include <aws/iot/IoTRequest.h>
12 #include <aws/iot/model/Tag.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace IoT
18 {
19 namespace Model
20 {
21 
25  {
26  public:
28 
29  // Service request name is the Operation name which will send this request out,
30  // each operation should has unique request name, so that we can get operation's name from this request.
31  // Note: this is not true for response, multiple operations may have the same response name,
32  // so we can not get operation's name from response.
33  inline virtual const char* GetServiceRequestName() const override { return "CreateMitigationAction"; }
34 
35  Aws::String SerializePayload() const override;
36 
37 
42  inline const Aws::String& GetActionName() const{ return m_actionName; }
43 
48  inline bool ActionNameHasBeenSet() const { return m_actionNameHasBeenSet; }
49 
54  inline void SetActionName(const Aws::String& value) { m_actionNameHasBeenSet = true; m_actionName = value; }
55 
60  inline void SetActionName(Aws::String&& value) { m_actionNameHasBeenSet = true; m_actionName = std::move(value); }
61 
66  inline void SetActionName(const char* value) { m_actionNameHasBeenSet = true; m_actionName.assign(value); }
67 
72  inline CreateMitigationActionRequest& WithActionName(const Aws::String& value) { SetActionName(value); return *this;}
73 
78  inline CreateMitigationActionRequest& WithActionName(Aws::String&& value) { SetActionName(std::move(value)); return *this;}
79 
84  inline CreateMitigationActionRequest& WithActionName(const char* value) { SetActionName(value); return *this;}
85 
86 
90  inline const Aws::String& GetRoleArn() const{ return m_roleArn; }
91 
95  inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
96 
100  inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; }
101 
105  inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); }
106 
110  inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); }
111 
115  inline CreateMitigationActionRequest& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;}
116 
120  inline CreateMitigationActionRequest& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;}
121 
125  inline CreateMitigationActionRequest& WithRoleArn(const char* value) { SetRoleArn(value); return *this;}
126 
127 
131  inline const MitigationActionParams& GetActionParams() const{ return m_actionParams; }
132 
136  inline bool ActionParamsHasBeenSet() const { return m_actionParamsHasBeenSet; }
137 
141  inline void SetActionParams(const MitigationActionParams& value) { m_actionParamsHasBeenSet = true; m_actionParams = value; }
142 
146  inline void SetActionParams(MitigationActionParams&& value) { m_actionParamsHasBeenSet = true; m_actionParams = std::move(value); }
147 
151  inline CreateMitigationActionRequest& WithActionParams(const MitigationActionParams& value) { SetActionParams(value); return *this;}
152 
156  inline CreateMitigationActionRequest& WithActionParams(MitigationActionParams&& value) { SetActionParams(std::move(value)); return *this;}
157 
158 
162  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
163 
167  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
168 
172  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
173 
177  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
178 
182  inline CreateMitigationActionRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
183 
187  inline CreateMitigationActionRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
188 
192  inline CreateMitigationActionRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
193 
197  inline CreateMitigationActionRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
198 
199  private:
200 
201  Aws::String m_actionName;
202  bool m_actionNameHasBeenSet;
203 
204  Aws::String m_roleArn;
205  bool m_roleArnHasBeenSet;
206 
207  MitigationActionParams m_actionParams;
208  bool m_actionParamsHasBeenSet;
209 
210  Aws::Vector<Tag> m_tags;
211  bool m_tagsHasBeenSet;
212  };
213 
214 } // namespace Model
215 } // namespace IoT
216 } // namespace Aws
CreateMitigationActionRequest & AddTags(Tag &&value)
const MitigationActionParams & GetActionParams() const
virtual const char * GetServiceRequestName() const override
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
CreateMitigationActionRequest & AddTags(const Tag &value)
#define AWS_IOT_API
Definition: IoT_EXPORTS.h:28
CreateMitigationActionRequest & WithActionName(Aws::String &&value)
void SetActionParams(const MitigationActionParams &value)
CreateMitigationActionRequest & WithActionParams(MitigationActionParams &&value)
CreateMitigationActionRequest & WithTags(Aws::Vector< Tag > &&value)
CreateMitigationActionRequest & WithActionParams(const MitigationActionParams &value)
CreateMitigationActionRequest & WithRoleArn(const char *value)
CreateMitigationActionRequest & WithRoleArn(const Aws::String &value)
CreateMitigationActionRequest & WithTags(const Aws::Vector< Tag > &value)
CreateMitigationActionRequest & WithRoleArn(Aws::String &&value)
CreateMitigationActionRequest & WithActionName(const char *value)
CreateMitigationActionRequest & WithActionName(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97