AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
CreateSecondaryNetworkRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2Request.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/SecondaryNetworkType.h>
13#include <aws/ec2/model/TagSpecification.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EC2 {
19namespace Model {
20
24 public:
25 AWS_EC2_API CreateSecondaryNetworkRequest() = 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 "CreateSecondaryNetwork"; }
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
46 inline const Aws::String& GetClientToken() const { return m_clientToken; }
47 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
48 template <typename ClientTokenT = Aws::String>
49 void SetClientToken(ClientTokenT&& value) {
50 m_clientTokenHasBeenSet = true;
51 m_clientToken = std::forward<ClientTokenT>(value);
52 }
53 template <typename ClientTokenT = Aws::String>
55 SetClientToken(std::forward<ClientTokenT>(value));
56 return *this;
57 }
59
61
67 inline bool GetDryRun() const { return m_dryRun; }
68 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
69 inline void SetDryRun(bool value) {
70 m_dryRunHasBeenSet = true;
71 m_dryRun = value;
72 }
74 SetDryRun(value);
75 return *this;
76 }
78
80
84 inline const Aws::String& GetIpv4CidrBlock() const { return m_ipv4CidrBlock; }
85 inline bool Ipv4CidrBlockHasBeenSet() const { return m_ipv4CidrBlockHasBeenSet; }
86 template <typename Ipv4CidrBlockT = Aws::String>
87 void SetIpv4CidrBlock(Ipv4CidrBlockT&& value) {
88 m_ipv4CidrBlockHasBeenSet = true;
89 m_ipv4CidrBlock = std::forward<Ipv4CidrBlockT>(value);
90 }
91 template <typename Ipv4CidrBlockT = Aws::String>
93 SetIpv4CidrBlock(std::forward<Ipv4CidrBlockT>(value));
94 return *this;
95 }
97
99
102 inline SecondaryNetworkType GetNetworkType() const { return m_networkType; }
103 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
105 m_networkTypeHasBeenSet = true;
106 m_networkType = value;
107 }
109 SetNetworkType(value);
110 return *this;
111 }
113
115
118 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
119 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
120 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
121 void SetTagSpecifications(TagSpecificationsT&& value) {
122 m_tagSpecificationsHasBeenSet = true;
123 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
124 }
125 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
127 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
128 return *this;
129 }
130 template <typename TagSpecificationsT = TagSpecification>
132 m_tagSpecificationsHasBeenSet = true;
133 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
134 return *this;
135 }
137 private:
139
140 bool m_dryRun{false};
141
142 Aws::String m_ipv4CidrBlock;
143
145
146 Aws::Vector<TagSpecification> m_tagSpecifications;
147 bool m_clientTokenHasBeenSet = true;
148 bool m_dryRunHasBeenSet = false;
149 bool m_ipv4CidrBlockHasBeenSet = false;
150 bool m_networkTypeHasBeenSet = false;
151 bool m_tagSpecificationsHasBeenSet = false;
152};
153
154} // namespace Model
155} // namespace EC2
156} // namespace Aws
CreateSecondaryNetworkRequest & WithTagSpecifications(TagSpecificationsT &&value)
CreateSecondaryNetworkRequest & WithDryRun(bool value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AWS_EC2_API Aws::String SerializePayload() const override
CreateSecondaryNetworkRequest & WithClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreateSecondaryNetworkRequest & WithNetworkType(SecondaryNetworkType value)
CreateSecondaryNetworkRequest & WithIpv4CidrBlock(Ipv4CidrBlockT &&value)
CreateSecondaryNetworkRequest & AddTagSpecifications(TagSpecificationsT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector