AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateNetworkRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/medialive/MediaLiveRequest.h>
12#include <aws/medialive/MediaLive_EXPORTS.h>
13#include <aws/medialive/model/IpPoolCreateRequest.h>
14#include <aws/medialive/model/RouteCreateRequest.h>
15
16#include <utility>
17
18namespace Aws {
19namespace MediaLive {
20namespace Model {
21
28 public:
29 AWS_MEDIALIVE_API CreateNetworkRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateNetwork"; }
36
37 AWS_MEDIALIVE_API Aws::String SerializePayload() const override;
38
40
47 inline const Aws::Vector<IpPoolCreateRequest>& GetIpPools() const { return m_ipPools; }
48 inline bool IpPoolsHasBeenSet() const { return m_ipPoolsHasBeenSet; }
49 template <typename IpPoolsT = Aws::Vector<IpPoolCreateRequest>>
50 void SetIpPools(IpPoolsT&& value) {
51 m_ipPoolsHasBeenSet = true;
52 m_ipPools = std::forward<IpPoolsT>(value);
53 }
54 template <typename IpPoolsT = Aws::Vector<IpPoolCreateRequest>>
55 CreateNetworkRequest& WithIpPools(IpPoolsT&& value) {
56 SetIpPools(std::forward<IpPoolsT>(value));
57 return *this;
58 }
59 template <typename IpPoolsT = IpPoolCreateRequest>
60 CreateNetworkRequest& AddIpPools(IpPoolsT&& value) {
61 m_ipPoolsHasBeenSet = true;
62 m_ipPools.emplace_back(std::forward<IpPoolsT>(value));
63 return *this;
64 }
66
68
72 inline const Aws::String& GetName() const { return m_name; }
73 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
74 template <typename NameT = Aws::String>
75 void SetName(NameT&& value) {
76 m_nameHasBeenSet = true;
77 m_name = std::forward<NameT>(value);
78 }
79 template <typename NameT = Aws::String>
81 SetName(std::forward<NameT>(value));
82 return *this;
83 }
85
87
91 inline const Aws::String& GetRequestId() const { return m_requestId; }
92 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
93 template <typename RequestIdT = Aws::String>
94 void SetRequestId(RequestIdT&& value) {
95 m_requestIdHasBeenSet = true;
96 m_requestId = std::forward<RequestIdT>(value);
97 }
98 template <typename RequestIdT = Aws::String>
99 CreateNetworkRequest& WithRequestId(RequestIdT&& value) {
100 SetRequestId(std::forward<RequestIdT>(value));
101 return *this;
102 }
104
106
110 inline const Aws::Vector<RouteCreateRequest>& GetRoutes() const { return m_routes; }
111 inline bool RoutesHasBeenSet() const { return m_routesHasBeenSet; }
112 template <typename RoutesT = Aws::Vector<RouteCreateRequest>>
113 void SetRoutes(RoutesT&& value) {
114 m_routesHasBeenSet = true;
115 m_routes = std::forward<RoutesT>(value);
116 }
117 template <typename RoutesT = Aws::Vector<RouteCreateRequest>>
119 SetRoutes(std::forward<RoutesT>(value));
120 return *this;
121 }
122 template <typename RoutesT = RouteCreateRequest>
123 CreateNetworkRequest& AddRoutes(RoutesT&& value) {
124 m_routesHasBeenSet = true;
125 m_routes.emplace_back(std::forward<RoutesT>(value));
126 return *this;
127 }
129
131
134 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
135 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
136 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
137 void SetTags(TagsT&& value) {
138 m_tagsHasBeenSet = true;
139 m_tags = std::forward<TagsT>(value);
140 }
141 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
143 SetTags(std::forward<TagsT>(value));
144 return *this;
145 }
146 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
147 CreateNetworkRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
148 m_tagsHasBeenSet = true;
149 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
150 return *this;
151 }
153 private:
155
156 Aws::String m_name;
157
159
161
163 bool m_ipPoolsHasBeenSet = false;
164 bool m_nameHasBeenSet = false;
165 bool m_requestIdHasBeenSet = true;
166 bool m_routesHasBeenSet = false;
167 bool m_tagsHasBeenSet = false;
168};
169
170} // namespace Model
171} // namespace MediaLive
172} // namespace Aws
CreateNetworkRequest & WithRoutes(RoutesT &&value)
const Aws::Vector< IpPoolCreateRequest > & GetIpPools() const
CreateNetworkRequest & WithIpPools(IpPoolsT &&value)
CreateNetworkRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_MEDIALIVE_API Aws::String SerializePayload() const override
CreateNetworkRequest & AddRoutes(RoutesT &&value)
CreateNetworkRequest & AddIpPools(IpPoolsT &&value)
CreateNetworkRequest & WithName(NameT &&value)
CreateNetworkRequest & WithTags(TagsT &&value)
CreateNetworkRequest & WithRequestId(RequestIdT &&value)
virtual const char * GetServiceRequestName() const override
AWS_MEDIALIVE_API CreateNetworkRequest()=default
const Aws::Vector< RouteCreateRequest > & GetRoutes() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector