AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CreateChannelRequest.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/AnywhereSettings.h>
14#include <aws/medialive/model/CdiInputSpecification.h>
15#include <aws/medialive/model/ChannelClass.h>
16#include <aws/medialive/model/ChannelEngineVersionRequest.h>
17#include <aws/medialive/model/EncoderSettings.h>
18#include <aws/medialive/model/InputAttachment.h>
19#include <aws/medialive/model/InputSpecification.h>
20#include <aws/medialive/model/LinkedChannelSettings.h>
21#include <aws/medialive/model/LogLevel.h>
22#include <aws/medialive/model/MaintenanceCreateSettings.h>
23#include <aws/medialive/model/OutputDestination.h>
24#include <aws/medialive/model/VpcOutputSettings.h>
25
26#include <utility>
27
28namespace Aws {
29namespace MediaLive {
30namespace Model {
31
38 public:
39 AWS_MEDIALIVE_API CreateChannelRequest() = default;
40
41 // Service request name is the Operation name which will send this request out,
42 // each operation should has unique request name, so that we can get operation's name from this request.
43 // Note: this is not true for response, multiple operations may have the same response name,
44 // so we can not get operation's name from response.
45 inline virtual const char* GetServiceRequestName() const override { return "CreateChannel"; }
46
47 AWS_MEDIALIVE_API Aws::String SerializePayload() const override;
48
50
53 inline const CdiInputSpecification& GetCdiInputSpecification() const { return m_cdiInputSpecification; }
54 inline bool CdiInputSpecificationHasBeenSet() const { return m_cdiInputSpecificationHasBeenSet; }
55 template <typename CdiInputSpecificationT = CdiInputSpecification>
56 void SetCdiInputSpecification(CdiInputSpecificationT&& value) {
57 m_cdiInputSpecificationHasBeenSet = true;
58 m_cdiInputSpecification = std::forward<CdiInputSpecificationT>(value);
59 }
60 template <typename CdiInputSpecificationT = CdiInputSpecification>
61 CreateChannelRequest& WithCdiInputSpecification(CdiInputSpecificationT&& value) {
62 SetCdiInputSpecification(std::forward<CdiInputSpecificationT>(value));
63 return *this;
64 }
66
68
72 inline ChannelClass GetChannelClass() const { return m_channelClass; }
73 inline bool ChannelClassHasBeenSet() const { return m_channelClassHasBeenSet; }
74 inline void SetChannelClass(ChannelClass value) {
75 m_channelClassHasBeenSet = true;
76 m_channelClass = value;
77 }
79 SetChannelClass(value);
80 return *this;
81 }
83
85
86 inline const Aws::Vector<OutputDestination>& GetDestinations() const { return m_destinations; }
87 inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; }
88 template <typename DestinationsT = Aws::Vector<OutputDestination>>
89 void SetDestinations(DestinationsT&& value) {
90 m_destinationsHasBeenSet = true;
91 m_destinations = std::forward<DestinationsT>(value);
92 }
93 template <typename DestinationsT = Aws::Vector<OutputDestination>>
94 CreateChannelRequest& WithDestinations(DestinationsT&& value) {
95 SetDestinations(std::forward<DestinationsT>(value));
96 return *this;
97 }
98 template <typename DestinationsT = OutputDestination>
99 CreateChannelRequest& AddDestinations(DestinationsT&& value) {
100 m_destinationsHasBeenSet = true;
101 m_destinations.emplace_back(std::forward<DestinationsT>(value));
102 return *this;
103 }
105
107
108 inline const EncoderSettings& GetEncoderSettings() const { return m_encoderSettings; }
109 inline bool EncoderSettingsHasBeenSet() const { return m_encoderSettingsHasBeenSet; }
110 template <typename EncoderSettingsT = EncoderSettings>
111 void SetEncoderSettings(EncoderSettingsT&& value) {
112 m_encoderSettingsHasBeenSet = true;
113 m_encoderSettings = std::forward<EncoderSettingsT>(value);
114 }
115 template <typename EncoderSettingsT = EncoderSettings>
116 CreateChannelRequest& WithEncoderSettings(EncoderSettingsT&& value) {
117 SetEncoderSettings(std::forward<EncoderSettingsT>(value));
118 return *this;
119 }
121
123
126 inline const Aws::Vector<InputAttachment>& GetInputAttachments() const { return m_inputAttachments; }
127 inline bool InputAttachmentsHasBeenSet() const { return m_inputAttachmentsHasBeenSet; }
128 template <typename InputAttachmentsT = Aws::Vector<InputAttachment>>
129 void SetInputAttachments(InputAttachmentsT&& value) {
130 m_inputAttachmentsHasBeenSet = true;
131 m_inputAttachments = std::forward<InputAttachmentsT>(value);
132 }
133 template <typename InputAttachmentsT = Aws::Vector<InputAttachment>>
134 CreateChannelRequest& WithInputAttachments(InputAttachmentsT&& value) {
135 SetInputAttachments(std::forward<InputAttachmentsT>(value));
136 return *this;
137 }
138 template <typename InputAttachmentsT = InputAttachment>
139 CreateChannelRequest& AddInputAttachments(InputAttachmentsT&& value) {
140 m_inputAttachmentsHasBeenSet = true;
141 m_inputAttachments.emplace_back(std::forward<InputAttachmentsT>(value));
142 return *this;
143 }
145
147
150 inline const InputSpecification& GetInputSpecification() const { return m_inputSpecification; }
151 inline bool InputSpecificationHasBeenSet() const { return m_inputSpecificationHasBeenSet; }
152 template <typename InputSpecificationT = InputSpecification>
153 void SetInputSpecification(InputSpecificationT&& value) {
154 m_inputSpecificationHasBeenSet = true;
155 m_inputSpecification = std::forward<InputSpecificationT>(value);
156 }
157 template <typename InputSpecificationT = InputSpecification>
158 CreateChannelRequest& WithInputSpecification(InputSpecificationT&& value) {
159 SetInputSpecification(std::forward<InputSpecificationT>(value));
160 return *this;
161 }
163
165
168 inline LogLevel GetLogLevel() const { return m_logLevel; }
169 inline bool LogLevelHasBeenSet() const { return m_logLevelHasBeenSet; }
170 inline void SetLogLevel(LogLevel value) {
171 m_logLevelHasBeenSet = true;
172 m_logLevel = value;
173 }
175 SetLogLevel(value);
176 return *this;
177 }
179
181
184 inline const MaintenanceCreateSettings& GetMaintenance() const { return m_maintenance; }
185 inline bool MaintenanceHasBeenSet() const { return m_maintenanceHasBeenSet; }
186 template <typename MaintenanceT = MaintenanceCreateSettings>
187 void SetMaintenance(MaintenanceT&& value) {
188 m_maintenanceHasBeenSet = true;
189 m_maintenance = std::forward<MaintenanceT>(value);
190 }
191 template <typename MaintenanceT = MaintenanceCreateSettings>
192 CreateChannelRequest& WithMaintenance(MaintenanceT&& value) {
193 SetMaintenance(std::forward<MaintenanceT>(value));
194 return *this;
195 }
197
199
202 inline const Aws::String& GetName() const { return m_name; }
203 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
204 template <typename NameT = Aws::String>
205 void SetName(NameT&& value) {
206 m_nameHasBeenSet = true;
207 m_name = std::forward<NameT>(value);
208 }
209 template <typename NameT = Aws::String>
211 SetName(std::forward<NameT>(value));
212 return *this;
213 }
215
217
222 inline const Aws::String& GetRequestId() const { return m_requestId; }
223 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
224 template <typename RequestIdT = Aws::String>
225 void SetRequestId(RequestIdT&& value) {
226 m_requestIdHasBeenSet = true;
227 m_requestId = std::forward<RequestIdT>(value);
228 }
229 template <typename RequestIdT = Aws::String>
230 CreateChannelRequest& WithRequestId(RequestIdT&& value) {
231 SetRequestId(std::forward<RequestIdT>(value));
232 return *this;
233 }
235
237
241 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
242 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
243 template <typename RoleArnT = Aws::String>
244 void SetRoleArn(RoleArnT&& value) {
245 m_roleArnHasBeenSet = true;
246 m_roleArn = std::forward<RoleArnT>(value);
247 }
248 template <typename RoleArnT = Aws::String>
250 SetRoleArn(std::forward<RoleArnT>(value));
251 return *this;
252 }
254
256
259 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
260 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
261 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
262 void SetTags(TagsT&& value) {
263 m_tagsHasBeenSet = true;
264 m_tags = std::forward<TagsT>(value);
265 }
266 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
268 SetTags(std::forward<TagsT>(value));
269 return *this;
270 }
271 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
272 CreateChannelRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
273 m_tagsHasBeenSet = true;
274 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
275 return *this;
276 }
278
280
283 inline const VpcOutputSettings& GetVpc() const { return m_vpc; }
284 inline bool VpcHasBeenSet() const { return m_vpcHasBeenSet; }
285 template <typename VpcT = VpcOutputSettings>
286 void SetVpc(VpcT&& value) {
287 m_vpcHasBeenSet = true;
288 m_vpc = std::forward<VpcT>(value);
289 }
290 template <typename VpcT = VpcOutputSettings>
292 SetVpc(std::forward<VpcT>(value));
293 return *this;
294 }
296
298
301 inline const AnywhereSettings& GetAnywhereSettings() const { return m_anywhereSettings; }
302 inline bool AnywhereSettingsHasBeenSet() const { return m_anywhereSettingsHasBeenSet; }
303 template <typename AnywhereSettingsT = AnywhereSettings>
304 void SetAnywhereSettings(AnywhereSettingsT&& value) {
305 m_anywhereSettingsHasBeenSet = true;
306 m_anywhereSettings = std::forward<AnywhereSettingsT>(value);
307 }
308 template <typename AnywhereSettingsT = AnywhereSettings>
309 CreateChannelRequest& WithAnywhereSettings(AnywhereSettingsT&& value) {
310 SetAnywhereSettings(std::forward<AnywhereSettingsT>(value));
311 return *this;
312 }
314
316
319 inline const ChannelEngineVersionRequest& GetChannelEngineVersion() const { return m_channelEngineVersion; }
320 inline bool ChannelEngineVersionHasBeenSet() const { return m_channelEngineVersionHasBeenSet; }
321 template <typename ChannelEngineVersionT = ChannelEngineVersionRequest>
322 void SetChannelEngineVersion(ChannelEngineVersionT&& value) {
323 m_channelEngineVersionHasBeenSet = true;
324 m_channelEngineVersion = std::forward<ChannelEngineVersionT>(value);
325 }
326 template <typename ChannelEngineVersionT = ChannelEngineVersionRequest>
327 CreateChannelRequest& WithChannelEngineVersion(ChannelEngineVersionT&& value) {
328 SetChannelEngineVersion(std::forward<ChannelEngineVersionT>(value));
329 return *this;
330 }
332
334
335 inline bool GetDryRun() const { return m_dryRun; }
336 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
337 inline void SetDryRun(bool value) {
338 m_dryRunHasBeenSet = true;
339 m_dryRun = value;
340 }
341 inline CreateChannelRequest& WithDryRun(bool value) {
342 SetDryRun(value);
343 return *this;
344 }
346
348
351 inline const LinkedChannelSettings& GetLinkedChannelSettings() const { return m_linkedChannelSettings; }
352 inline bool LinkedChannelSettingsHasBeenSet() const { return m_linkedChannelSettingsHasBeenSet; }
353 template <typename LinkedChannelSettingsT = LinkedChannelSettings>
354 void SetLinkedChannelSettings(LinkedChannelSettingsT&& value) {
355 m_linkedChannelSettingsHasBeenSet = true;
356 m_linkedChannelSettings = std::forward<LinkedChannelSettingsT>(value);
357 }
358 template <typename LinkedChannelSettingsT = LinkedChannelSettings>
359 CreateChannelRequest& WithLinkedChannelSettings(LinkedChannelSettingsT&& value) {
360 SetLinkedChannelSettings(std::forward<LinkedChannelSettingsT>(value));
361 return *this;
362 }
364
366
369 inline const Aws::Vector<Aws::String>& GetChannelSecurityGroups() const { return m_channelSecurityGroups; }
370 inline bool ChannelSecurityGroupsHasBeenSet() const { return m_channelSecurityGroupsHasBeenSet; }
371 template <typename ChannelSecurityGroupsT = Aws::Vector<Aws::String>>
372 void SetChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
373 m_channelSecurityGroupsHasBeenSet = true;
374 m_channelSecurityGroups = std::forward<ChannelSecurityGroupsT>(value);
375 }
376 template <typename ChannelSecurityGroupsT = Aws::Vector<Aws::String>>
377 CreateChannelRequest& WithChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
378 SetChannelSecurityGroups(std::forward<ChannelSecurityGroupsT>(value));
379 return *this;
380 }
381 template <typename ChannelSecurityGroupsT = Aws::String>
382 CreateChannelRequest& AddChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
383 m_channelSecurityGroupsHasBeenSet = true;
384 m_channelSecurityGroups.emplace_back(std::forward<ChannelSecurityGroupsT>(value));
385 return *this;
386 }
388 private:
389 CdiInputSpecification m_cdiInputSpecification;
390
391 ChannelClass m_channelClass{ChannelClass::NOT_SET};
392
393 Aws::Vector<OutputDestination> m_destinations;
394
395 EncoderSettings m_encoderSettings;
396
397 Aws::Vector<InputAttachment> m_inputAttachments;
398
399 InputSpecification m_inputSpecification;
400
401 LogLevel m_logLevel{LogLevel::NOT_SET};
402
403 MaintenanceCreateSettings m_maintenance;
404
405 Aws::String m_name;
406
408
409 Aws::String m_roleArn;
410
412
413 VpcOutputSettings m_vpc;
414
415 AnywhereSettings m_anywhereSettings;
416
417 ChannelEngineVersionRequest m_channelEngineVersion;
418
419 bool m_dryRun{false};
420
421 LinkedChannelSettings m_linkedChannelSettings;
422
423 Aws::Vector<Aws::String> m_channelSecurityGroups;
424 bool m_cdiInputSpecificationHasBeenSet = false;
425 bool m_channelClassHasBeenSet = false;
426 bool m_destinationsHasBeenSet = false;
427 bool m_encoderSettingsHasBeenSet = false;
428 bool m_inputAttachmentsHasBeenSet = false;
429 bool m_inputSpecificationHasBeenSet = false;
430 bool m_logLevelHasBeenSet = false;
431 bool m_maintenanceHasBeenSet = false;
432 bool m_nameHasBeenSet = false;
433 bool m_requestIdHasBeenSet = true;
434 bool m_roleArnHasBeenSet = false;
435 bool m_tagsHasBeenSet = false;
436 bool m_vpcHasBeenSet = false;
437 bool m_anywhereSettingsHasBeenSet = false;
438 bool m_channelEngineVersionHasBeenSet = false;
439 bool m_dryRunHasBeenSet = false;
440 bool m_linkedChannelSettingsHasBeenSet = false;
441 bool m_channelSecurityGroupsHasBeenSet = false;
442};
443
444} // namespace Model
445} // namespace MediaLive
446} // namespace Aws
CreateChannelRequest & WithCdiInputSpecification(CdiInputSpecificationT &&value)
CreateChannelRequest & WithChannelEngineVersion(ChannelEngineVersionT &&value)
virtual const char * GetServiceRequestName() const override
CreateChannelRequest & WithChannelSecurityGroups(ChannelSecurityGroupsT &&value)
CreateChannelRequest & WithInputSpecification(InputSpecificationT &&value)
CreateChannelRequest & WithDryRun(bool value)
CreateChannelRequest & WithTags(TagsT &&value)
void SetInputSpecification(InputSpecificationT &&value)
const ChannelEngineVersionRequest & GetChannelEngineVersion() const
void SetCdiInputSpecification(CdiInputSpecificationT &&value)
CreateChannelRequest & WithLinkedChannelSettings(LinkedChannelSettingsT &&value)
CreateChannelRequest & WithMaintenance(MaintenanceT &&value)
void SetChannelSecurityGroups(ChannelSecurityGroupsT &&value)
void SetAnywhereSettings(AnywhereSettingsT &&value)
const Aws::Vector< OutputDestination > & GetDestinations() const
CreateChannelRequest & AddChannelSecurityGroups(ChannelSecurityGroupsT &&value)
const InputSpecification & GetInputSpecification() const
CreateChannelRequest & WithName(NameT &&value)
const Aws::Vector< InputAttachment > & GetInputAttachments() const
const Aws::Vector< Aws::String > & GetChannelSecurityGroups() const
CreateChannelRequest & WithChannelClass(ChannelClass value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetEncoderSettings(EncoderSettingsT &&value)
void SetChannelEngineVersion(ChannelEngineVersionT &&value)
void SetInputAttachments(InputAttachmentsT &&value)
AWS_MEDIALIVE_API Aws::String SerializePayload() const override
const CdiInputSpecification & GetCdiInputSpecification() const
CreateChannelRequest & WithEncoderSettings(EncoderSettingsT &&value)
CreateChannelRequest & AddInputAttachments(InputAttachmentsT &&value)
CreateChannelRequest & WithInputAttachments(InputAttachmentsT &&value)
const MaintenanceCreateSettings & GetMaintenance() const
CreateChannelRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateChannelRequest & WithDestinations(DestinationsT &&value)
CreateChannelRequest & AddDestinations(DestinationsT &&value)
const LinkedChannelSettings & GetLinkedChannelSettings() const
CreateChannelRequest & WithRoleArn(RoleArnT &&value)
CreateChannelRequest & WithLogLevel(LogLevel value)
AWS_MEDIALIVE_API CreateChannelRequest()=default
CreateChannelRequest & WithVpc(VpcT &&value)
const AnywhereSettings & GetAnywhereSettings() const
const EncoderSettings & GetEncoderSettings() const
CreateChannelRequest & WithAnywhereSettings(AnywhereSettingsT &&value)
void SetLinkedChannelSettings(LinkedChannelSettingsT &&value)
CreateChannelRequest & WithRequestId(RequestIdT &&value)
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