AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InstanceMetadataOptionsRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/ec2/EC2_EXPORTS.h>
9#include <aws/ec2/model/HttpTokensState.h>
10#include <aws/ec2/model/InstanceMetadataEndpointState.h>
11#include <aws/ec2/model/InstanceMetadataProtocolState.h>
12#include <aws/ec2/model/InstanceMetadataTagsState.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
31 public:
32 AWS_EC2_API InstanceMetadataOptionsRequest() = default;
35
36 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
57 inline HttpTokensState GetHttpTokens() const { return m_httpTokens; }
58 inline bool HttpTokensHasBeenSet() const { return m_httpTokensHasBeenSet; }
59 inline void SetHttpTokens(HttpTokensState value) {
60 m_httpTokensHasBeenSet = true;
61 m_httpTokens = value;
62 }
64 SetHttpTokens(value);
65 return *this;
66 }
68
70
74 inline int GetHttpPutResponseHopLimit() const { return m_httpPutResponseHopLimit; }
75 inline bool HttpPutResponseHopLimitHasBeenSet() const { return m_httpPutResponseHopLimitHasBeenSet; }
76 inline void SetHttpPutResponseHopLimit(int value) {
77 m_httpPutResponseHopLimitHasBeenSet = true;
78 m_httpPutResponseHopLimit = value;
79 }
82 return *this;
83 }
85
87
92 inline InstanceMetadataEndpointState GetHttpEndpoint() const { return m_httpEndpoint; }
93 inline bool HttpEndpointHasBeenSet() const { return m_httpEndpointHasBeenSet; }
95 m_httpEndpointHasBeenSet = true;
96 m_httpEndpoint = value;
97 }
99 SetHttpEndpoint(value);
100 return *this;
101 }
103
105
109 inline InstanceMetadataProtocolState GetHttpProtocolIpv6() const { return m_httpProtocolIpv6; }
110 inline bool HttpProtocolIpv6HasBeenSet() const { return m_httpProtocolIpv6HasBeenSet; }
112 m_httpProtocolIpv6HasBeenSet = true;
113 m_httpProtocolIpv6 = value;
114 }
116 SetHttpProtocolIpv6(value);
117 return *this;
118 }
120
122
130 inline InstanceMetadataTagsState GetInstanceMetadataTags() const { return m_instanceMetadataTags; }
131 inline bool InstanceMetadataTagsHasBeenSet() const { return m_instanceMetadataTagsHasBeenSet; }
133 m_instanceMetadataTagsHasBeenSet = true;
134 m_instanceMetadataTags = value;
135 }
138 return *this;
139 }
141 private:
143
144 int m_httpPutResponseHopLimit{0};
145
147
149
151 bool m_httpTokensHasBeenSet = false;
152 bool m_httpPutResponseHopLimitHasBeenSet = false;
153 bool m_httpEndpointHasBeenSet = false;
154 bool m_httpProtocolIpv6HasBeenSet = false;
155 bool m_instanceMetadataTagsHasBeenSet = false;
156};
157
158} // namespace Model
159} // namespace EC2
160} // namespace Aws
void SetHttpEndpoint(InstanceMetadataEndpointState value)
void SetInstanceMetadataTags(InstanceMetadataTagsState value)
void SetHttpProtocolIpv6(InstanceMetadataProtocolState value)
InstanceMetadataOptionsRequest & WithHttpProtocolIpv6(InstanceMetadataProtocolState value)
InstanceMetadataOptionsRequest & WithInstanceMetadataTags(InstanceMetadataTagsState value)
AWS_EC2_API InstanceMetadataOptionsRequest & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
InstanceMetadataOptionsRequest & WithHttpTokens(HttpTokensState value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
InstanceMetadataOptionsRequest & WithHttpEndpoint(InstanceMetadataEndpointState value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API InstanceMetadataOptionsRequest(const Aws::Utils::Xml::XmlNode &xmlNode)
InstanceMetadataOptionsRequest & WithHttpPutResponseHopLimit(int value)
std::basic_ostream< char, std::char_traits< char > > OStream