AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Flow.h
1
6#pragma once
7#include <aws/mediaconnect/MediaConnect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mediaconnect/model/Source.h>
11#include <aws/mediaconnect/model/FailoverConfig.h>
12#include <aws/mediaconnect/model/Status.h>
13#include <aws/mediaconnect/model/Maintenance.h>
14#include <aws/mediaconnect/model/MonitoringConfig.h>
15#include <aws/mediaconnect/model/FlowSize.h>
16#include <aws/mediaconnect/model/NdiConfig.h>
17#include <aws/mediaconnect/model/Entitlement.h>
18#include <aws/mediaconnect/model/MediaStream.h>
19#include <aws/mediaconnect/model/Output.h>
20#include <aws/mediaconnect/model/VpcInterface.h>
21#include <utility>
22
23namespace Aws
24{
25namespace Utils
26{
27namespace Json
28{
29 class JsonValue;
30 class JsonView;
31} // namespace Json
32} // namespace Utils
33namespace MediaConnect
34{
35namespace Model
36{
37
44 class Flow
45 {
46 public:
47 AWS_MEDIACONNECT_API Flow() = default;
48 AWS_MEDIACONNECT_API Flow(Aws::Utils::Json::JsonView jsonValue);
49 AWS_MEDIACONNECT_API Flow& operator=(Aws::Utils::Json::JsonView jsonValue);
50 AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
51
52
54
59 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
60 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
61 template<typename AvailabilityZoneT = Aws::String>
62 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
63 template<typename AvailabilityZoneT = Aws::String>
64 Flow& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
66
68
72 inline const Aws::String& GetDescription() const { return m_description; }
73 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
74 template<typename DescriptionT = Aws::String>
75 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
76 template<typename DescriptionT = Aws::String>
77 Flow& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
79
81
84 inline const Aws::String& GetEgressIp() const { return m_egressIp; }
85 inline bool EgressIpHasBeenSet() const { return m_egressIpHasBeenSet; }
86 template<typename EgressIpT = Aws::String>
87 void SetEgressIp(EgressIpT&& value) { m_egressIpHasBeenSet = true; m_egressIp = std::forward<EgressIpT>(value); }
88 template<typename EgressIpT = Aws::String>
89 Flow& WithEgressIp(EgressIpT&& value) { SetEgressIp(std::forward<EgressIpT>(value)); return *this;}
91
93
96 inline const Aws::Vector<Entitlement>& GetEntitlements() const { return m_entitlements; }
97 inline bool EntitlementsHasBeenSet() const { return m_entitlementsHasBeenSet; }
98 template<typename EntitlementsT = Aws::Vector<Entitlement>>
99 void SetEntitlements(EntitlementsT&& value) { m_entitlementsHasBeenSet = true; m_entitlements = std::forward<EntitlementsT>(value); }
100 template<typename EntitlementsT = Aws::Vector<Entitlement>>
101 Flow& WithEntitlements(EntitlementsT&& value) { SetEntitlements(std::forward<EntitlementsT>(value)); return *this;}
102 template<typename EntitlementsT = Entitlement>
103 Flow& AddEntitlements(EntitlementsT&& value) { m_entitlementsHasBeenSet = true; m_entitlements.emplace_back(std::forward<EntitlementsT>(value)); return *this; }
105
107
110 inline const Aws::String& GetFlowArn() const { return m_flowArn; }
111 inline bool FlowArnHasBeenSet() const { return m_flowArnHasBeenSet; }
112 template<typename FlowArnT = Aws::String>
113 void SetFlowArn(FlowArnT&& value) { m_flowArnHasBeenSet = true; m_flowArn = std::forward<FlowArnT>(value); }
114 template<typename FlowArnT = Aws::String>
115 Flow& WithFlowArn(FlowArnT&& value) { SetFlowArn(std::forward<FlowArnT>(value)); return *this;}
117
119
124 inline const Aws::Vector<MediaStream>& GetMediaStreams() const { return m_mediaStreams; }
125 inline bool MediaStreamsHasBeenSet() const { return m_mediaStreamsHasBeenSet; }
126 template<typename MediaStreamsT = Aws::Vector<MediaStream>>
127 void SetMediaStreams(MediaStreamsT&& value) { m_mediaStreamsHasBeenSet = true; m_mediaStreams = std::forward<MediaStreamsT>(value); }
128 template<typename MediaStreamsT = Aws::Vector<MediaStream>>
129 Flow& WithMediaStreams(MediaStreamsT&& value) { SetMediaStreams(std::forward<MediaStreamsT>(value)); return *this;}
130 template<typename MediaStreamsT = MediaStream>
131 Flow& AddMediaStreams(MediaStreamsT&& value) { m_mediaStreamsHasBeenSet = true; m_mediaStreams.emplace_back(std::forward<MediaStreamsT>(value)); return *this; }
133
135
138 inline const Aws::String& GetName() const { return m_name; }
139 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
140 template<typename NameT = Aws::String>
141 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
142 template<typename NameT = Aws::String>
143 Flow& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
145
147
150 inline const Aws::Vector<Output>& GetOutputs() const { return m_outputs; }
151 inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
152 template<typename OutputsT = Aws::Vector<Output>>
153 void SetOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs = std::forward<OutputsT>(value); }
154 template<typename OutputsT = Aws::Vector<Output>>
155 Flow& WithOutputs(OutputsT&& value) { SetOutputs(std::forward<OutputsT>(value)); return *this;}
156 template<typename OutputsT = Output>
157 Flow& AddOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs.emplace_back(std::forward<OutputsT>(value)); return *this; }
159
161
164 inline const Source& GetSource() const { return m_source; }
165 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
166 template<typename SourceT = Source>
167 void SetSource(SourceT&& value) { m_sourceHasBeenSet = true; m_source = std::forward<SourceT>(value); }
168 template<typename SourceT = Source>
169 Flow& WithSource(SourceT&& value) { SetSource(std::forward<SourceT>(value)); return *this;}
171
173
176 inline const FailoverConfig& GetSourceFailoverConfig() const { return m_sourceFailoverConfig; }
177 inline bool SourceFailoverConfigHasBeenSet() const { return m_sourceFailoverConfigHasBeenSet; }
178 template<typename SourceFailoverConfigT = FailoverConfig>
179 void SetSourceFailoverConfig(SourceFailoverConfigT&& value) { m_sourceFailoverConfigHasBeenSet = true; m_sourceFailoverConfig = std::forward<SourceFailoverConfigT>(value); }
180 template<typename SourceFailoverConfigT = FailoverConfig>
181 Flow& WithSourceFailoverConfig(SourceFailoverConfigT&& value) { SetSourceFailoverConfig(std::forward<SourceFailoverConfigT>(value)); return *this;}
183
185
188 inline const Aws::Vector<Source>& GetSources() const { return m_sources; }
189 inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; }
190 template<typename SourcesT = Aws::Vector<Source>>
191 void SetSources(SourcesT&& value) { m_sourcesHasBeenSet = true; m_sources = std::forward<SourcesT>(value); }
192 template<typename SourcesT = Aws::Vector<Source>>
193 Flow& WithSources(SourcesT&& value) { SetSources(std::forward<SourcesT>(value)); return *this;}
194 template<typename SourcesT = Source>
195 Flow& AddSources(SourcesT&& value) { m_sourcesHasBeenSet = true; m_sources.emplace_back(std::forward<SourcesT>(value)); return *this; }
197
199
202 inline Status GetStatus() const { return m_status; }
203 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
204 inline void SetStatus(Status value) { m_statusHasBeenSet = true; m_status = value; }
205 inline Flow& WithStatus(Status value) { SetStatus(value); return *this;}
207
209
212 inline const Aws::Vector<VpcInterface>& GetVpcInterfaces() const { return m_vpcInterfaces; }
213 inline bool VpcInterfacesHasBeenSet() const { return m_vpcInterfacesHasBeenSet; }
214 template<typename VpcInterfacesT = Aws::Vector<VpcInterface>>
215 void SetVpcInterfaces(VpcInterfacesT&& value) { m_vpcInterfacesHasBeenSet = true; m_vpcInterfaces = std::forward<VpcInterfacesT>(value); }
216 template<typename VpcInterfacesT = Aws::Vector<VpcInterface>>
217 Flow& WithVpcInterfaces(VpcInterfacesT&& value) { SetVpcInterfaces(std::forward<VpcInterfacesT>(value)); return *this;}
218 template<typename VpcInterfacesT = VpcInterface>
219 Flow& AddVpcInterfaces(VpcInterfacesT&& value) { m_vpcInterfacesHasBeenSet = true; m_vpcInterfaces.emplace_back(std::forward<VpcInterfacesT>(value)); return *this; }
221
223
226 inline const Maintenance& GetMaintenance() const { return m_maintenance; }
227 inline bool MaintenanceHasBeenSet() const { return m_maintenanceHasBeenSet; }
228 template<typename MaintenanceT = Maintenance>
229 void SetMaintenance(MaintenanceT&& value) { m_maintenanceHasBeenSet = true; m_maintenance = std::forward<MaintenanceT>(value); }
230 template<typename MaintenanceT = Maintenance>
231 Flow& WithMaintenance(MaintenanceT&& value) { SetMaintenance(std::forward<MaintenanceT>(value)); return *this;}
233
235
238 inline const MonitoringConfig& GetSourceMonitoringConfig() const { return m_sourceMonitoringConfig; }
239 inline bool SourceMonitoringConfigHasBeenSet() const { return m_sourceMonitoringConfigHasBeenSet; }
240 template<typename SourceMonitoringConfigT = MonitoringConfig>
241 void SetSourceMonitoringConfig(SourceMonitoringConfigT&& value) { m_sourceMonitoringConfigHasBeenSet = true; m_sourceMonitoringConfig = std::forward<SourceMonitoringConfigT>(value); }
242 template<typename SourceMonitoringConfigT = MonitoringConfig>
243 Flow& WithSourceMonitoringConfig(SourceMonitoringConfigT&& value) { SetSourceMonitoringConfig(std::forward<SourceMonitoringConfigT>(value)); return *this;}
245
247
251 inline FlowSize GetFlowSize() const { return m_flowSize; }
252 inline bool FlowSizeHasBeenSet() const { return m_flowSizeHasBeenSet; }
253 inline void SetFlowSize(FlowSize value) { m_flowSizeHasBeenSet = true; m_flowSize = value; }
254 inline Flow& WithFlowSize(FlowSize value) { SetFlowSize(value); return *this;}
256
258
262 inline const NdiConfig& GetNdiConfig() const { return m_ndiConfig; }
263 inline bool NdiConfigHasBeenSet() const { return m_ndiConfigHasBeenSet; }
264 template<typename NdiConfigT = NdiConfig>
265 void SetNdiConfig(NdiConfigT&& value) { m_ndiConfigHasBeenSet = true; m_ndiConfig = std::forward<NdiConfigT>(value); }
266 template<typename NdiConfigT = NdiConfig>
267 Flow& WithNdiConfig(NdiConfigT&& value) { SetNdiConfig(std::forward<NdiConfigT>(value)); return *this;}
269 private:
270
271 Aws::String m_availabilityZone;
272 bool m_availabilityZoneHasBeenSet = false;
273
274 Aws::String m_description;
275 bool m_descriptionHasBeenSet = false;
276
277 Aws::String m_egressIp;
278 bool m_egressIpHasBeenSet = false;
279
280 Aws::Vector<Entitlement> m_entitlements;
281 bool m_entitlementsHasBeenSet = false;
282
283 Aws::String m_flowArn;
284 bool m_flowArnHasBeenSet = false;
285
286 Aws::Vector<MediaStream> m_mediaStreams;
287 bool m_mediaStreamsHasBeenSet = false;
288
289 Aws::String m_name;
290 bool m_nameHasBeenSet = false;
291
292 Aws::Vector<Output> m_outputs;
293 bool m_outputsHasBeenSet = false;
294
295 Source m_source;
296 bool m_sourceHasBeenSet = false;
297
298 FailoverConfig m_sourceFailoverConfig;
299 bool m_sourceFailoverConfigHasBeenSet = false;
300
301 Aws::Vector<Source> m_sources;
302 bool m_sourcesHasBeenSet = false;
303
304 Status m_status{Status::NOT_SET};
305 bool m_statusHasBeenSet = false;
306
307 Aws::Vector<VpcInterface> m_vpcInterfaces;
308 bool m_vpcInterfacesHasBeenSet = false;
309
310 Maintenance m_maintenance;
311 bool m_maintenanceHasBeenSet = false;
312
313 MonitoringConfig m_sourceMonitoringConfig;
314 bool m_sourceMonitoringConfigHasBeenSet = false;
315
316 FlowSize m_flowSize{FlowSize::NOT_SET};
317 bool m_flowSizeHasBeenSet = false;
318
319 NdiConfig m_ndiConfig;
320 bool m_ndiConfigHasBeenSet = false;
321 };
322
323} // namespace Model
324} // namespace MediaConnect
325} // namespace Aws
const Aws::String & GetFlowArn() const
Definition Flow.h:110
bool VpcInterfacesHasBeenSet() const
Definition Flow.h:213
const MonitoringConfig & GetSourceMonitoringConfig() const
Definition Flow.h:238
const Maintenance & GetMaintenance() const
Definition Flow.h:226
Flow & AddVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:219
const Aws::String & GetName() const
Definition Flow.h:138
Flow & AddEntitlements(EntitlementsT &&value)
Definition Flow.h:103
void SetMediaStreams(MediaStreamsT &&value)
Definition Flow.h:127
bool SourceHasBeenSet() const
Definition Flow.h:165
void SetSourceFailoverConfig(SourceFailoverConfigT &&value)
Definition Flow.h:179
Flow & WithFlowArn(FlowArnT &&value)
Definition Flow.h:115
AWS_MEDIACONNECT_API Flow & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MediaStream > & GetMediaStreams() const
Definition Flow.h:124
Flow & WithSources(SourcesT &&value)
Definition Flow.h:193
Flow & WithFlowSize(FlowSize value)
Definition Flow.h:254
Flow & WithNdiConfig(NdiConfigT &&value)
Definition Flow.h:267
const Aws::String & GetAvailabilityZone() const
Definition Flow.h:59
Flow & AddMediaStreams(MediaStreamsT &&value)
Definition Flow.h:131
Flow & WithDescription(DescriptionT &&value)
Definition Flow.h:77
void SetSourceMonitoringConfig(SourceMonitoringConfigT &&value)
Definition Flow.h:241
void SetMaintenance(MaintenanceT &&value)
Definition Flow.h:229
Flow & WithName(NameT &&value)
Definition Flow.h:143
bool SourcesHasBeenSet() const
Definition Flow.h:189
AWS_MEDIACONNECT_API Flow(Aws::Utils::Json::JsonView jsonValue)
bool MediaStreamsHasBeenSet() const
Definition Flow.h:125
Flow & WithSource(SourceT &&value)
Definition Flow.h:169
Flow & AddSources(SourcesT &&value)
Definition Flow.h:195
bool OutputsHasBeenSet() const
Definition Flow.h:151
const Aws::Vector< Source > & GetSources() const
Definition Flow.h:188
bool AvailabilityZoneHasBeenSet() const
Definition Flow.h:60
const Aws::Vector< VpcInterface > & GetVpcInterfaces() const
Definition Flow.h:212
bool EntitlementsHasBeenSet() const
Definition Flow.h:97
Flow & WithMaintenance(MaintenanceT &&value)
Definition Flow.h:231
AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const FailoverConfig & GetSourceFailoverConfig() const
Definition Flow.h:176
const Aws::String & GetDescription() const
Definition Flow.h:72
bool FlowSizeHasBeenSet() const
Definition Flow.h:252
bool MaintenanceHasBeenSet() const
Definition Flow.h:227
void SetEntitlements(EntitlementsT &&value)
Definition Flow.h:99
bool EgressIpHasBeenSet() const
Definition Flow.h:85
void SetDescription(DescriptionT &&value)
Definition Flow.h:75
bool FlowArnHasBeenSet() const
Definition Flow.h:111
Flow & WithVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:217
bool StatusHasBeenSet() const
Definition Flow.h:203
Flow & WithMediaStreams(MediaStreamsT &&value)
Definition Flow.h:129
Flow & AddOutputs(OutputsT &&value)
Definition Flow.h:157
Flow & WithEgressIp(EgressIpT &&value)
Definition Flow.h:89
bool DescriptionHasBeenSet() const
Definition Flow.h:73
void SetFlowSize(FlowSize value)
Definition Flow.h:253
Flow & WithSourceFailoverConfig(SourceFailoverConfigT &&value)
Definition Flow.h:181
Flow & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Flow.h:64
const Aws::Vector< Entitlement > & GetEntitlements() const
Definition Flow.h:96
const Aws::String & GetEgressIp() const
Definition Flow.h:84
AWS_MEDIACONNECT_API Flow()=default
void SetNdiConfig(NdiConfigT &&value)
Definition Flow.h:265
bool SourceMonitoringConfigHasBeenSet() const
Definition Flow.h:239
void SetSource(SourceT &&value)
Definition Flow.h:167
void SetFlowArn(FlowArnT &&value)
Definition Flow.h:113
void SetStatus(Status value)
Definition Flow.h:204
const NdiConfig & GetNdiConfig() const
Definition Flow.h:262
void SetEgressIp(EgressIpT &&value)
Definition Flow.h:87
const Source & GetSource() const
Definition Flow.h:164
Flow & WithSourceMonitoringConfig(SourceMonitoringConfigT &&value)
Definition Flow.h:243
void SetOutputs(OutputsT &&value)
Definition Flow.h:153
Flow & WithOutputs(OutputsT &&value)
Definition Flow.h:155
void SetVpcInterfaces(VpcInterfacesT &&value)
Definition Flow.h:215
FlowSize GetFlowSize() const
Definition Flow.h:251
Flow & WithEntitlements(EntitlementsT &&value)
Definition Flow.h:101
bool SourceFailoverConfigHasBeenSet() const
Definition Flow.h:177
bool NameHasBeenSet() const
Definition Flow.h:139
Flow & WithStatus(Status value)
Definition Flow.h:205
void SetName(NameT &&value)
Definition Flow.h:141
Status GetStatus() const
Definition Flow.h:202
void SetSources(SourcesT &&value)
Definition Flow.h:191
bool NdiConfigHasBeenSet() const
Definition Flow.h:263
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Flow.h:62
const Aws::Vector< Output > & GetOutputs() const
Definition Flow.h:150
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue