AWS SDK for C++  0.14.3
AWS SDK for C++
ModifyNetworkInterfaceAttributeRequest.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ec2/EC2_EXPORTS.h>
17 #include <aws/ec2/EC2Request.h>
23 
24 namespace Aws
25 {
26 namespace EC2
27 {
28 namespace Model
29 {
30 
35  {
36  public:
38  Aws::String SerializePayload() const override;
39 
46  inline bool GetDryRun() const{ return m_dryRun; }
47 
54  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
55 
62  inline ModifyNetworkInterfaceAttributeRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
63 
67  inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
68 
72  inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
73 
77  inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
78 
82  inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
83 
87  inline ModifyNetworkInterfaceAttributeRequest& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
88 
92  inline ModifyNetworkInterfaceAttributeRequest& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(value); return *this;}
93 
97  inline ModifyNetworkInterfaceAttributeRequest& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
98 
102  inline const AttributeValue& GetDescription() const{ return m_description; }
103 
107  inline void SetDescription(const AttributeValue& value) { m_descriptionHasBeenSet = true; m_description = value; }
108 
112  inline void SetDescription(AttributeValue&& value) { m_descriptionHasBeenSet = true; m_description = value; }
113 
117  inline ModifyNetworkInterfaceAttributeRequest& WithDescription(const AttributeValue& value) { SetDescription(value); return *this;}
118 
122  inline ModifyNetworkInterfaceAttributeRequest& WithDescription(AttributeValue&& value) { SetDescription(value); return *this;}
123 
132  inline const AttributeBooleanValue& GetSourceDestCheck() const{ return m_sourceDestCheck; }
133 
142  inline void SetSourceDestCheck(const AttributeBooleanValue& value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = value; }
143 
152  inline void SetSourceDestCheck(AttributeBooleanValue&& value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = value; }
153 
162  inline ModifyNetworkInterfaceAttributeRequest& WithSourceDestCheck(const AttributeBooleanValue& value) { SetSourceDestCheck(value); return *this;}
163 
172  inline ModifyNetworkInterfaceAttributeRequest& WithSourceDestCheck(AttributeBooleanValue&& value) { SetSourceDestCheck(value); return *this;}
173 
180  inline const Aws::Vector<Aws::String>& GetGroups() const{ return m_groups; }
181 
188  inline void SetGroups(const Aws::Vector<Aws::String>& value) { m_groupsHasBeenSet = true; m_groups = value; }
189 
196  inline void SetGroups(Aws::Vector<Aws::String>&& value) { m_groupsHasBeenSet = true; m_groups = value; }
197 
204  inline ModifyNetworkInterfaceAttributeRequest& WithGroups(const Aws::Vector<Aws::String>& value) { SetGroups(value); return *this;}
205 
212  inline ModifyNetworkInterfaceAttributeRequest& WithGroups(Aws::Vector<Aws::String>&& value) { SetGroups(value); return *this;}
213 
220  inline ModifyNetworkInterfaceAttributeRequest& AddGroups(const Aws::String& value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
221 
228  inline ModifyNetworkInterfaceAttributeRequest& AddGroups(Aws::String&& value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
229 
236  inline ModifyNetworkInterfaceAttributeRequest& AddGroups(const char* value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
237 
242  inline const NetworkInterfaceAttachmentChanges& GetAttachment() const{ return m_attachment; }
243 
248  inline void SetAttachment(const NetworkInterfaceAttachmentChanges& value) { m_attachmentHasBeenSet = true; m_attachment = value; }
249 
254  inline void SetAttachment(NetworkInterfaceAttachmentChanges&& value) { m_attachmentHasBeenSet = true; m_attachment = value; }
255 
260  inline ModifyNetworkInterfaceAttributeRequest& WithAttachment(const NetworkInterfaceAttachmentChanges& value) { SetAttachment(value); return *this;}
261 
266  inline ModifyNetworkInterfaceAttributeRequest& WithAttachment(NetworkInterfaceAttachmentChanges&& value) { SetAttachment(value); return *this;}
267 
268  private:
269  bool m_dryRun;
270  bool m_dryRunHasBeenSet;
271  Aws::String m_networkInterfaceId;
272  bool m_networkInterfaceIdHasBeenSet;
273  AttributeValue m_description;
274  bool m_descriptionHasBeenSet;
275  AttributeBooleanValue m_sourceDestCheck;
276  bool m_sourceDestCheckHasBeenSet;
277  Aws::Vector<Aws::String> m_groups;
278  bool m_groupsHasBeenSet;
280  bool m_attachmentHasBeenSet;
281  };
282 
283 } // namespace Model
284 } // namespace EC2
285 } // namespace Aws
void SetAttachment(const NetworkInterfaceAttachmentChanges &value)
ModifyNetworkInterfaceAttributeRequest & AddGroups(const char *value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
ModifyNetworkInterfaceAttributeRequest & AddGroups(Aws::String &&value)
ModifyNetworkInterfaceAttributeRequest & WithSourceDestCheck(const AttributeBooleanValue &value)
ModifyNetworkInterfaceAttributeRequest & WithDescription(AttributeValue &&value)
ModifyNetworkInterfaceAttributeRequest & WithGroups(Aws::Vector< Aws::String > &&value)
ModifyNetworkInterfaceAttributeRequest & WithDryRun(bool value)
ModifyNetworkInterfaceAttributeRequest & WithDescription(const AttributeValue &value)
ModifyNetworkInterfaceAttributeRequest & WithSourceDestCheck(AttributeBooleanValue &&value)
ModifyNetworkInterfaceAttributeRequest & WithNetworkInterfaceId(const Aws::String &value)
ModifyNetworkInterfaceAttributeRequest & AddGroups(const Aws::String &value)
const NetworkInterfaceAttachmentChanges & GetAttachment() const
ModifyNetworkInterfaceAttributeRequest & WithAttachment(NetworkInterfaceAttachmentChanges &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
ModifyNetworkInterfaceAttributeRequest & WithGroups(const Aws::Vector< Aws::String > &value)
ModifyNetworkInterfaceAttributeRequest & WithAttachment(const NetworkInterfaceAttachmentChanges &value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
ModifyNetworkInterfaceAttributeRequest & WithNetworkInterfaceId(const char *value)
ModifyNetworkInterfaceAttributeRequest & WithNetworkInterfaceId(Aws::String &&value)
JSON (JavaScript Object Notation).