AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
LaunchTemplateInstanceMetadataOptions.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/LaunchTemplateInstanceMetadataOptionsState.h>
10#include <aws/ec2/model/LaunchTemplateHttpTokensState.h>
11#include <aws/ec2/model/LaunchTemplateInstanceMetadataEndpointState.h>
12#include <aws/ec2/model/LaunchTemplateInstanceMetadataProtocolIpv6.h>
13#include <aws/ec2/model/LaunchTemplateInstanceMetadataTagsState.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Xml
21{
22 class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace EC2
26{
27namespace Model
28{
29
39 {
40 public:
44
45 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
47
48
50
56 inline LaunchTemplateInstanceMetadataOptionsState GetState() const { return m_state; }
57 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
58 inline void SetState(LaunchTemplateInstanceMetadataOptionsState value) { m_stateHasBeenSet = true; m_state = value; }
61
63
74 inline LaunchTemplateHttpTokensState GetHttpTokens() const { return m_httpTokens; }
75 inline bool HttpTokensHasBeenSet() const { return m_httpTokensHasBeenSet; }
76 inline void SetHttpTokens(LaunchTemplateHttpTokensState value) { m_httpTokensHasBeenSet = true; m_httpTokens = value; }
79
81
86 inline int GetHttpPutResponseHopLimit() const { return m_httpPutResponseHopLimit; }
87 inline bool HttpPutResponseHopLimitHasBeenSet() const { return m_httpPutResponseHopLimitHasBeenSet; }
88 inline void SetHttpPutResponseHopLimit(int value) { m_httpPutResponseHopLimitHasBeenSet = true; m_httpPutResponseHopLimit = value; }
91
93
99 inline LaunchTemplateInstanceMetadataEndpointState GetHttpEndpoint() const { return m_httpEndpoint; }
100 inline bool HttpEndpointHasBeenSet() const { return m_httpEndpointHasBeenSet; }
101 inline void SetHttpEndpoint(LaunchTemplateInstanceMetadataEndpointState value) { m_httpEndpointHasBeenSet = true; m_httpEndpoint = value; }
104
106
110 inline LaunchTemplateInstanceMetadataProtocolIpv6 GetHttpProtocolIpv6() const { return m_httpProtocolIpv6; }
111 inline bool HttpProtocolIpv6HasBeenSet() const { return m_httpProtocolIpv6HasBeenSet; }
112 inline void SetHttpProtocolIpv6(LaunchTemplateInstanceMetadataProtocolIpv6 value) { m_httpProtocolIpv6HasBeenSet = true; m_httpProtocolIpv6 = value; }
115
117
125 inline LaunchTemplateInstanceMetadataTagsState GetInstanceMetadataTags() const { return m_instanceMetadataTags; }
126 inline bool InstanceMetadataTagsHasBeenSet() const { return m_instanceMetadataTagsHasBeenSet; }
127 inline void SetInstanceMetadataTags(LaunchTemplateInstanceMetadataTagsState value) { m_instanceMetadataTagsHasBeenSet = true; m_instanceMetadataTags = value; }
130 private:
131
133 bool m_stateHasBeenSet = false;
134
136 bool m_httpTokensHasBeenSet = false;
137
138 int m_httpPutResponseHopLimit{0};
139 bool m_httpPutResponseHopLimitHasBeenSet = false;
140
142 bool m_httpEndpointHasBeenSet = false;
143
145 bool m_httpProtocolIpv6HasBeenSet = false;
146
148 bool m_instanceMetadataTagsHasBeenSet = false;
149 };
150
151} // namespace Model
152} // namespace EC2
153} // namespace Aws
AWS_EC2_API LaunchTemplateInstanceMetadataOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetInstanceMetadataTags(LaunchTemplateInstanceMetadataTagsState value)
LaunchTemplateInstanceMetadataProtocolIpv6 GetHttpProtocolIpv6() const
LaunchTemplateInstanceMetadataOptions & WithState(LaunchTemplateInstanceMetadataOptionsState value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetState(LaunchTemplateInstanceMetadataOptionsState value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetHttpProtocolIpv6(LaunchTemplateInstanceMetadataProtocolIpv6 value)
AWS_EC2_API LaunchTemplateInstanceMetadataOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
LaunchTemplateInstanceMetadataOptions & WithHttpEndpoint(LaunchTemplateInstanceMetadataEndpointState value)
void SetHttpEndpoint(LaunchTemplateInstanceMetadataEndpointState value)
LaunchTemplateInstanceMetadataEndpointState GetHttpEndpoint() const
LaunchTemplateInstanceMetadataOptions & WithHttpPutResponseHopLimit(int value)
LaunchTemplateInstanceMetadataOptions & WithInstanceMetadataTags(LaunchTemplateInstanceMetadataTagsState value)
LaunchTemplateInstanceMetadataTagsState GetInstanceMetadataTags() const
LaunchTemplateInstanceMetadataOptions & WithHttpProtocolIpv6(LaunchTemplateInstanceMetadataProtocolIpv6 value)
LaunchTemplateInstanceMetadataOptions & WithHttpTokens(LaunchTemplateHttpTokensState value)
std::basic_ostream< char, std::char_traits< char > > OStream