AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ModifyInstanceMetadataOptionsRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/HttpTokensState.h>
11#include <aws/ec2/model/InstanceMetadataEndpointState.h>
12#include <aws/ec2/model/InstanceMetadataProtocolState.h>
13#include <aws/ec2/model/InstanceMetadataTagsState.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EC2 {
19namespace Model {
20
24 public:
25 AWS_EC2_API ModifyInstanceMetadataOptionsRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "ModifyInstanceMetadataOptions"; }
32
33 AWS_EC2_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
37
38 public:
40
43 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
44 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
45 template <typename InstanceIdT = Aws::String>
46 void SetInstanceId(InstanceIdT&& value) {
47 m_instanceIdHasBeenSet = true;
48 m_instanceId = std::forward<InstanceIdT>(value);
49 }
50 template <typename InstanceIdT = Aws::String>
52 SetInstanceId(std::forward<InstanceIdT>(value));
53 return *this;
54 }
56
58
81 inline HttpTokensState GetHttpTokens() const { return m_httpTokens; }
82 inline bool HttpTokensHasBeenSet() const { return m_httpTokensHasBeenSet; }
83 inline void SetHttpTokens(HttpTokensState value) {
84 m_httpTokensHasBeenSet = true;
85 m_httpTokens = value;
86 }
88 SetHttpTokens(value);
89 return *this;
90 }
92
94
100 inline int GetHttpPutResponseHopLimit() const { return m_httpPutResponseHopLimit; }
101 inline bool HttpPutResponseHopLimitHasBeenSet() const { return m_httpPutResponseHopLimitHasBeenSet; }
102 inline void SetHttpPutResponseHopLimit(int value) {
103 m_httpPutResponseHopLimitHasBeenSet = true;
104 m_httpPutResponseHopLimit = value;
105 }
108 return *this;
109 }
111
113
119 inline InstanceMetadataEndpointState GetHttpEndpoint() const { return m_httpEndpoint; }
120 inline bool HttpEndpointHasBeenSet() const { return m_httpEndpointHasBeenSet; }
122 m_httpEndpointHasBeenSet = true;
123 m_httpEndpoint = value;
124 }
126 SetHttpEndpoint(value);
127 return *this;
128 }
130
132
138 inline bool GetDryRun() const { return m_dryRun; }
139 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
140 inline void SetDryRun(bool value) {
141 m_dryRunHasBeenSet = true;
142 m_dryRun = value;
143 }
145 SetDryRun(value);
146 return *this;
147 }
149
151
155 inline InstanceMetadataProtocolState GetHttpProtocolIpv6() const { return m_httpProtocolIpv6; }
156 inline bool HttpProtocolIpv6HasBeenSet() const { return m_httpProtocolIpv6HasBeenSet; }
158 m_httpProtocolIpv6HasBeenSet = true;
159 m_httpProtocolIpv6 = value;
160 }
162 SetHttpProtocolIpv6(value);
163 return *this;
164 }
166
168
175 inline InstanceMetadataTagsState GetInstanceMetadataTags() const { return m_instanceMetadataTags; }
176 inline bool InstanceMetadataTagsHasBeenSet() const { return m_instanceMetadataTagsHasBeenSet; }
178 m_instanceMetadataTagsHasBeenSet = true;
179 m_instanceMetadataTags = value;
180 }
183 return *this;
184 }
186 private:
187 Aws::String m_instanceId;
188
190
191 int m_httpPutResponseHopLimit{0};
192
194
195 bool m_dryRun{false};
196
198
200 bool m_instanceIdHasBeenSet = false;
201 bool m_httpTokensHasBeenSet = false;
202 bool m_httpPutResponseHopLimitHasBeenSet = false;
203 bool m_httpEndpointHasBeenSet = false;
204 bool m_dryRunHasBeenSet = false;
205 bool m_httpProtocolIpv6HasBeenSet = false;
206 bool m_instanceMetadataTagsHasBeenSet = false;
207};
208
209} // namespace Model
210} // namespace EC2
211} // namespace Aws
AWS_EC2_API Aws::String SerializePayload() const override
ModifyInstanceMetadataOptionsRequest & WithHttpProtocolIpv6(InstanceMetadataProtocolState value)
ModifyInstanceMetadataOptionsRequest & WithDryRun(bool value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyInstanceMetadataOptionsRequest & WithHttpTokens(HttpTokensState value)
ModifyInstanceMetadataOptionsRequest & WithHttpEndpoint(InstanceMetadataEndpointState value)
ModifyInstanceMetadataOptionsRequest & WithHttpPutResponseHopLimit(int value)
ModifyInstanceMetadataOptionsRequest & WithInstanceMetadataTags(InstanceMetadataTagsState value)
ModifyInstanceMetadataOptionsRequest & WithInstanceId(InstanceIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String