AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Flow.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/mediaconnect/MediaConnect_EXPORTS.h>
10#include <aws/mediaconnect/model/EncodingConfig.h>
11#include <aws/mediaconnect/model/Entitlement.h>
12#include <aws/mediaconnect/model/FailoverConfig.h>
13#include <aws/mediaconnect/model/FlowSize.h>
14#include <aws/mediaconnect/model/Maintenance.h>
15#include <aws/mediaconnect/model/MediaStream.h>
16#include <aws/mediaconnect/model/MonitoringConfig.h>
17#include <aws/mediaconnect/model/NdiConfig.h>
18#include <aws/mediaconnect/model/Output.h>
19#include <aws/mediaconnect/model/Source.h>
20#include <aws/mediaconnect/model/Status.h>
21#include <aws/mediaconnect/model/VpcInterface.h>
22
23#include <utility>
24
25namespace Aws {
26namespace Utils {
27namespace Json {
28class JsonValue;
29class JsonView;
30} // namespace Json
31} // namespace Utils
32namespace MediaConnect {
33namespace Model {
34
41class Flow {
42 public:
43 AWS_MEDIACONNECT_API Flow() = default;
44 AWS_MEDIACONNECT_API Flow(Aws::Utils::Json::JsonView jsonValue);
45 AWS_MEDIACONNECT_API Flow& operator=(Aws::Utils::Json::JsonView jsonValue);
46 AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
47
49
54 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
55 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
56 template <typename AvailabilityZoneT = Aws::String>
57 void SetAvailabilityZone(AvailabilityZoneT&& value) {
58 m_availabilityZoneHasBeenSet = true;
59 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
60 }
61 template <typename AvailabilityZoneT = Aws::String>
62 Flow& WithAvailabilityZone(AvailabilityZoneT&& value) {
63 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
64 return *this;
65 }
67
69
73 inline const Aws::String& GetDescription() const { return m_description; }
74 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
75 template <typename DescriptionT = Aws::String>
76 void SetDescription(DescriptionT&& value) {
77 m_descriptionHasBeenSet = true;
78 m_description = std::forward<DescriptionT>(value);
79 }
80 template <typename DescriptionT = Aws::String>
81 Flow& WithDescription(DescriptionT&& value) {
82 SetDescription(std::forward<DescriptionT>(value));
83 return *this;
84 }
86
88
91 inline const Aws::String& GetEgressIp() const { return m_egressIp; }
92 inline bool EgressIpHasBeenSet() const { return m_egressIpHasBeenSet; }
93 template <typename EgressIpT = Aws::String>
94 void SetEgressIp(EgressIpT&& value) {
95 m_egressIpHasBeenSet = true;
96 m_egressIp = std::forward<EgressIpT>(value);
97 }
98 template <typename EgressIpT = Aws::String>
99 Flow& WithEgressIp(EgressIpT&& value) {
100 SetEgressIp(std::forward<EgressIpT>(value));
101 return *this;
102 }
104
106
109 inline const Aws::Vector<Entitlement>& GetEntitlements() const { return m_entitlements; }
110 inline bool EntitlementsHasBeenSet() const { return m_entitlementsHasBeenSet; }
111 template <typename EntitlementsT = Aws::Vector<Entitlement>>
112 void SetEntitlements(EntitlementsT&& value) {
113 m_entitlementsHasBeenSet = true;
114 m_entitlements = std::forward<EntitlementsT>(value);
115 }
116 template <typename EntitlementsT = Aws::Vector<Entitlement>>
117 Flow& WithEntitlements(EntitlementsT&& value) {
118 SetEntitlements(std::forward<EntitlementsT>(value));
119 return *this;
120 }
121 template <typename EntitlementsT = Entitlement>
122 Flow& AddEntitlements(EntitlementsT&& value) {
123 m_entitlementsHasBeenSet = true;
124 m_entitlements.emplace_back(std::forward<EntitlementsT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::String& GetFlowArn() const { return m_flowArn; }
134 inline bool FlowArnHasBeenSet() const { return m_flowArnHasBeenSet; }
135 template <typename FlowArnT = Aws::String>
136 void SetFlowArn(FlowArnT&& value) {
137 m_flowArnHasBeenSet = true;
138 m_flowArn = std::forward<FlowArnT>(value);
139 }
140 template <typename FlowArnT = Aws::String>
141 Flow& WithFlowArn(FlowArnT&& value) {
142 SetFlowArn(std::forward<FlowArnT>(value));
143 return *this;
144 }
146
148
153 inline const Aws::Vector<MediaStream>& GetMediaStreams() const { return m_mediaStreams; }
154 inline bool MediaStreamsHasBeenSet() const { return m_mediaStreamsHasBeenSet; }
155 template <typename MediaStreamsT = Aws::Vector<MediaStream>>
156 void SetMediaStreams(MediaStreamsT&& value) {
157 m_mediaStreamsHasBeenSet = true;
158 m_mediaStreams = std::forward<MediaStreamsT>(value);
159 }
160 template <typename MediaStreamsT = Aws::Vector<MediaStream>>
161 Flow& WithMediaStreams(MediaStreamsT&& value) {
162 SetMediaStreams(std::forward<MediaStreamsT>(value));
163 return *this;
164 }
165 template <typename MediaStreamsT = MediaStream>
166 Flow& AddMediaStreams(MediaStreamsT&& value) {
167 m_mediaStreamsHasBeenSet = true;
168 m_mediaStreams.emplace_back(std::forward<MediaStreamsT>(value));
169 return *this;
170 }
172
174
177 inline const Aws::String& GetName() const { return m_name; }
178 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
179 template <typename NameT = Aws::String>
180 void SetName(NameT&& value) {
181 m_nameHasBeenSet = true;
182 m_name = std::forward<NameT>(value);
183 }
184 template <typename NameT = Aws::String>
185 Flow& WithName(NameT&& value) {
186 SetName(std::forward<NameT>(value));
187 return *this;
188 }
190
192
195 inline const Aws::Vector<Output>& GetOutputs() const { return m_outputs; }
196 inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
197 template <typename OutputsT = Aws::Vector<Output>>
198 void SetOutputs(OutputsT&& value) {
199 m_outputsHasBeenSet = true;
200 m_outputs = std::forward<OutputsT>(value);
201 }
202 template <typename OutputsT = Aws::Vector<Output>>
203 Flow& WithOutputs(OutputsT&& value) {
204 SetOutputs(std::forward<OutputsT>(value));
205 return *this;
206 }
207 template <typename OutputsT = Output>
208 Flow& AddOutputs(OutputsT&& value) {
209 m_outputsHasBeenSet = true;
210 m_outputs.emplace_back(std::forward<OutputsT>(value));
211 return *this;
212 }
214
216
219 inline const Source& GetSource() const { return m_source; }
220 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
221 template <typename SourceT = Source>
222 void SetSource(SourceT&& value) {
223 m_sourceHasBeenSet = true;
224 m_source = std::forward<SourceT>(value);
225 }
226 template <typename SourceT = Source>
227 Flow& WithSource(SourceT&& value) {
228 SetSource(std::forward<SourceT>(value));
229 return *this;
230 }
232
234
237 inline const FailoverConfig& GetSourceFailoverConfig() const { return m_sourceFailoverConfig; }
238 inline bool SourceFailoverConfigHasBeenSet() const { return m_sourceFailoverConfigHasBeenSet; }
239 template <typename SourceFailoverConfigT = FailoverConfig>
240 void SetSourceFailoverConfig(SourceFailoverConfigT&& value) {
241 m_sourceFailoverConfigHasBeenSet = true;
242 m_sourceFailoverConfig = std::forward<SourceFailoverConfigT>(value);
243 }
244 template <typename SourceFailoverConfigT = FailoverConfig>
245 Flow& WithSourceFailoverConfig(SourceFailoverConfigT&& value) {
246 SetSourceFailoverConfig(std::forward<SourceFailoverConfigT>(value));
247 return *this;
248 }
250
252
255 inline const Aws::Vector<Source>& GetSources() const { return m_sources; }
256 inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; }
257 template <typename SourcesT = Aws::Vector<Source>>
258 void SetSources(SourcesT&& value) {
259 m_sourcesHasBeenSet = true;
260 m_sources = std::forward<SourcesT>(value);
261 }
262 template <typename SourcesT = Aws::Vector<Source>>
263 Flow& WithSources(SourcesT&& value) {
264 SetSources(std::forward<SourcesT>(value));
265 return *this;
266 }
267 template <typename SourcesT = Source>
268 Flow& AddSources(SourcesT&& value) {
269 m_sourcesHasBeenSet = true;
270 m_sources.emplace_back(std::forward<SourcesT>(value));
271 return *this;
272 }
274
276
279 inline Status GetStatus() const { return m_status; }
280 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
281 inline void SetStatus(Status value) {
282 m_statusHasBeenSet = true;
283 m_status = value;
284 }
285 inline Flow& WithStatus(Status value) {
286 SetStatus(value);
287 return *this;
288 }
290
292
295 inline const Aws::Vector<VpcInterface>& GetVpcInterfaces() const { return m_vpcInterfaces; }
296 inline bool VpcInterfacesHasBeenSet() const { return m_vpcInterfacesHasBeenSet; }
297 template <typename VpcInterfacesT = Aws::Vector<VpcInterface>>
298 void SetVpcInterfaces(VpcInterfacesT&& value) {
299 m_vpcInterfacesHasBeenSet = true;
300 m_vpcInterfaces = std::forward<VpcInterfacesT>(value);
301 }
302 template <typename VpcInterfacesT = Aws::Vector<VpcInterface>>
303 Flow& WithVpcInterfaces(VpcInterfacesT&& value) {
304 SetVpcInterfaces(std::forward<VpcInterfacesT>(value));
305 return *this;
306 }
307 template <typename VpcInterfacesT = VpcInterface>
308 Flow& AddVpcInterfaces(VpcInterfacesT&& value) {
309 m_vpcInterfacesHasBeenSet = true;
310 m_vpcInterfaces.emplace_back(std::forward<VpcInterfacesT>(value));
311 return *this;
312 }
314
316
319 inline const Maintenance& GetMaintenance() const { return m_maintenance; }
320 inline bool MaintenanceHasBeenSet() const { return m_maintenanceHasBeenSet; }
321 template <typename MaintenanceT = Maintenance>
322 void SetMaintenance(MaintenanceT&& value) {
323 m_maintenanceHasBeenSet = true;
324 m_maintenance = std::forward<MaintenanceT>(value);
325 }
326 template <typename MaintenanceT = Maintenance>
327 Flow& WithMaintenance(MaintenanceT&& value) {
328 SetMaintenance(std::forward<MaintenanceT>(value));
329 return *this;
330 }
332
334
337 inline const MonitoringConfig& GetSourceMonitoringConfig() const { return m_sourceMonitoringConfig; }
338 inline bool SourceMonitoringConfigHasBeenSet() const { return m_sourceMonitoringConfigHasBeenSet; }
339 template <typename SourceMonitoringConfigT = MonitoringConfig>
340 void SetSourceMonitoringConfig(SourceMonitoringConfigT&& value) {
341 m_sourceMonitoringConfigHasBeenSet = true;
342 m_sourceMonitoringConfig = std::forward<SourceMonitoringConfigT>(value);
343 }
344 template <typename SourceMonitoringConfigT = MonitoringConfig>
345 Flow& WithSourceMonitoringConfig(SourceMonitoringConfigT&& value) {
346 SetSourceMonitoringConfig(std::forward<SourceMonitoringConfigT>(value));
347 return *this;
348 }
350
352
355 inline FlowSize GetFlowSize() const { return m_flowSize; }
356 inline bool FlowSizeHasBeenSet() const { return m_flowSizeHasBeenSet; }
357 inline void SetFlowSize(FlowSize value) {
358 m_flowSizeHasBeenSet = true;
359 m_flowSize = value;
360 }
361 inline Flow& WithFlowSize(FlowSize value) {
362 SetFlowSize(value);
363 return *this;
364 }
366
368
372 inline const NdiConfig& GetNdiConfig() const { return m_ndiConfig; }
373 inline bool NdiConfigHasBeenSet() const { return m_ndiConfigHasBeenSet; }
374 template <typename NdiConfigT = NdiConfig>
375 void SetNdiConfig(NdiConfigT&& value) {
376 m_ndiConfigHasBeenSet = true;
377 m_ndiConfig = std::forward<NdiConfigT>(value);
378 }
379 template <typename NdiConfigT = NdiConfig>
380 Flow& WithNdiConfig(NdiConfigT&& value) {
381 SetNdiConfig(std::forward<NdiConfigT>(value));
382 return *this;
383 }
385
387
391 inline const EncodingConfig& GetEncodingConfig() const { return m_encodingConfig; }
392 inline bool EncodingConfigHasBeenSet() const { return m_encodingConfigHasBeenSet; }
393 template <typename EncodingConfigT = EncodingConfig>
394 void SetEncodingConfig(EncodingConfigT&& value) {
395 m_encodingConfigHasBeenSet = true;
396 m_encodingConfig = std::forward<EncodingConfigT>(value);
397 }
398 template <typename EncodingConfigT = EncodingConfig>
399 Flow& WithEncodingConfig(EncodingConfigT&& value) {
400 SetEncodingConfig(std::forward<EncodingConfigT>(value));
401 return *this;
402 }
404 private:
405 Aws::String m_availabilityZone;
406
407 Aws::String m_description;
408
409 Aws::String m_egressIp;
410
411 Aws::Vector<Entitlement> m_entitlements;
412
413 Aws::String m_flowArn;
414
415 Aws::Vector<MediaStream> m_mediaStreams;
416
417 Aws::String m_name;
418
419 Aws::Vector<Output> m_outputs;
420
421 Source m_source;
422
423 FailoverConfig m_sourceFailoverConfig;
424
425 Aws::Vector<Source> m_sources;
426
427 Status m_status{Status::NOT_SET};
428
429 Aws::Vector<VpcInterface> m_vpcInterfaces;
430
431 Maintenance m_maintenance;
432
433 MonitoringConfig m_sourceMonitoringConfig;
434
435 FlowSize m_flowSize{FlowSize::NOT_SET};
436
437 NdiConfig m_ndiConfig;
438
439 EncodingConfig m_encodingConfig;
440 bool m_availabilityZoneHasBeenSet = false;
441 bool m_descriptionHasBeenSet = false;
442 bool m_egressIpHasBeenSet = false;
443 bool m_entitlementsHasBeenSet = false;
444 bool m_flowArnHasBeenSet = false;
445 bool m_mediaStreamsHasBeenSet = false;
446 bool m_nameHasBeenSet = false;
447 bool m_outputsHasBeenSet = false;
448 bool m_sourceHasBeenSet = false;
449 bool m_sourceFailoverConfigHasBeenSet = false;
450 bool m_sourcesHasBeenSet = false;
451 bool m_statusHasBeenSet = false;
452 bool m_vpcInterfacesHasBeenSet = false;
453 bool m_maintenanceHasBeenSet = false;
454 bool m_sourceMonitoringConfigHasBeenSet = false;
455 bool m_flowSizeHasBeenSet = false;
456 bool m_ndiConfigHasBeenSet = false;
457 bool m_encodingConfigHasBeenSet = false;
458};
459
460} // namespace Model
461} // namespace MediaConnect
462} // namespace Aws
const Aws::String & GetFlowArn() const
Definition Flow.h:133
bool VpcInterfacesHasBeenSet() const
Definition Flow.h:296
const MonitoringConfig & GetSourceMonitoringConfig() const
Definition Flow.h:337
const Maintenance & GetMaintenance() const
Definition Flow.h:319
Flow & AddVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:308
const Aws::String & GetName() const
Definition Flow.h:177
const EncodingConfig & GetEncodingConfig() const
Definition Flow.h:391
Flow & AddEntitlements(EntitlementsT &&value)
Definition Flow.h:122
void SetMediaStreams(MediaStreamsT &&value)
Definition Flow.h:156
bool SourceHasBeenSet() const
Definition Flow.h:220
void SetSourceFailoverConfig(SourceFailoverConfigT &&value)
Definition Flow.h:240
Flow & WithFlowArn(FlowArnT &&value)
Definition Flow.h:141
AWS_MEDIACONNECT_API Flow & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MediaStream > & GetMediaStreams() const
Definition Flow.h:153
Flow & WithSources(SourcesT &&value)
Definition Flow.h:263
Flow & WithFlowSize(FlowSize value)
Definition Flow.h:361
Flow & WithNdiConfig(NdiConfigT &&value)
Definition Flow.h:380
const Aws::String & GetAvailabilityZone() const
Definition Flow.h:54
Flow & AddMediaStreams(MediaStreamsT &&value)
Definition Flow.h:166
Flow & WithDescription(DescriptionT &&value)
Definition Flow.h:81
void SetSourceMonitoringConfig(SourceMonitoringConfigT &&value)
Definition Flow.h:340
bool EncodingConfigHasBeenSet() const
Definition Flow.h:392
void SetMaintenance(MaintenanceT &&value)
Definition Flow.h:322
Flow & WithName(NameT &&value)
Definition Flow.h:185
bool SourcesHasBeenSet() const
Definition Flow.h:256
AWS_MEDIACONNECT_API Flow(Aws::Utils::Json::JsonView jsonValue)
bool MediaStreamsHasBeenSet() const
Definition Flow.h:154
Flow & WithSource(SourceT &&value)
Definition Flow.h:227
Flow & AddSources(SourcesT &&value)
Definition Flow.h:268
bool OutputsHasBeenSet() const
Definition Flow.h:196
const Aws::Vector< Source > & GetSources() const
Definition Flow.h:255
bool AvailabilityZoneHasBeenSet() const
Definition Flow.h:55
const Aws::Vector< VpcInterface > & GetVpcInterfaces() const
Definition Flow.h:295
bool EntitlementsHasBeenSet() const
Definition Flow.h:110
Flow & WithMaintenance(MaintenanceT &&value)
Definition Flow.h:327
AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const FailoverConfig & GetSourceFailoverConfig() const
Definition Flow.h:237
const Aws::String & GetDescription() const
Definition Flow.h:73
bool FlowSizeHasBeenSet() const
Definition Flow.h:356
bool MaintenanceHasBeenSet() const
Definition Flow.h:320
void SetEntitlements(EntitlementsT &&value)
Definition Flow.h:112
bool EgressIpHasBeenSet() const
Definition Flow.h:92
void SetDescription(DescriptionT &&value)
Definition Flow.h:76
bool FlowArnHasBeenSet() const
Definition Flow.h:134
Flow & WithVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:303
void SetEncodingConfig(EncodingConfigT &&value)
Definition Flow.h:394
bool StatusHasBeenSet() const
Definition Flow.h:280
Flow & WithMediaStreams(MediaStreamsT &&value)
Definition Flow.h:161
Flow & AddOutputs(OutputsT &&value)
Definition Flow.h:208
Flow & WithEgressIp(EgressIpT &&value)
Definition Flow.h:99
bool DescriptionHasBeenSet() const
Definition Flow.h:74
void SetFlowSize(FlowSize value)
Definition Flow.h:357
Flow & WithSourceFailoverConfig(SourceFailoverConfigT &&value)
Definition Flow.h:245
Flow & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Flow.h:62
const Aws::Vector< Entitlement > & GetEntitlements() const
Definition Flow.h:109
const Aws::String & GetEgressIp() const
Definition Flow.h:91
AWS_MEDIACONNECT_API Flow()=default
void SetNdiConfig(NdiConfigT &&value)
Definition Flow.h:375
bool SourceMonitoringConfigHasBeenSet() const
Definition Flow.h:338
void SetSource(SourceT &&value)
Definition Flow.h:222
void SetFlowArn(FlowArnT &&value)
Definition Flow.h:136
void SetStatus(Status value)
Definition Flow.h:281
const NdiConfig & GetNdiConfig() const
Definition Flow.h:372
void SetEgressIp(EgressIpT &&value)
Definition Flow.h:94
const Source & GetSource() const
Definition Flow.h:219
Flow & WithSourceMonitoringConfig(SourceMonitoringConfigT &&value)
Definition Flow.h:345
void SetOutputs(OutputsT &&value)
Definition Flow.h:198
Flow & WithOutputs(OutputsT &&value)
Definition Flow.h:203
void SetVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:298
Flow & WithEncodingConfig(EncodingConfigT &&value)
Definition Flow.h:399
FlowSize GetFlowSize() const
Definition Flow.h:355
Flow & WithEntitlements(EntitlementsT &&value)
Definition Flow.h:117
bool SourceFailoverConfigHasBeenSet() const
Definition Flow.h:238
bool NameHasBeenSet() const
Definition Flow.h:178
Flow & WithStatus(Status value)
Definition Flow.h:285
void SetName(NameT &&value)
Definition Flow.h:180
Status GetStatus() const
Definition Flow.h:279
void SetSources(SourcesT &&value)
Definition Flow.h:258
bool NdiConfigHasBeenSet() const
Definition Flow.h:373
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Flow.h:57
const Aws::Vector< Output > & GetOutputs() const
Definition Flow.h:195
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue