AWS SDK for C++

AWS SDK for C++ Version 1.11.784

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/InferenceSettings.h>
19#include <aws/medialive/model/InputAttachment.h>
20#include <aws/medialive/model/InputSpecification.h>
21#include <aws/medialive/model/LinkedChannelSettings.h>
22#include <aws/medialive/model/LogLevel.h>
23#include <aws/medialive/model/MaintenanceCreateSettings.h>
24#include <aws/medialive/model/OutputDestination.h>
25#include <aws/medialive/model/VpcOutputSettings.h>
26
27#include <utility>
28
29namespace Aws {
30namespace MediaLive {
31namespace Model {
32
39 public:
40 AWS_MEDIALIVE_API CreateChannelRequest() = default;
41
42 // Service request name is the Operation name which will send this request out,
43 // each operation should has unique request name, so that we can get operation's name from this request.
44 // Note: this is not true for response, multiple operations may have the same response name,
45 // so we can not get operation's name from response.
46 inline virtual const char* GetServiceRequestName() const override { return "CreateChannel"; }
47
48 AWS_MEDIALIVE_API Aws::String SerializePayload() const override;
49
51
54 inline const CdiInputSpecification& GetCdiInputSpecification() const { return m_cdiInputSpecification; }
55 inline bool CdiInputSpecificationHasBeenSet() const { return m_cdiInputSpecificationHasBeenSet; }
56 template <typename CdiInputSpecificationT = CdiInputSpecification>
57 void SetCdiInputSpecification(CdiInputSpecificationT&& value) {
58 m_cdiInputSpecificationHasBeenSet = true;
59 m_cdiInputSpecification = std::forward<CdiInputSpecificationT>(value);
60 }
61 template <typename CdiInputSpecificationT = CdiInputSpecification>
62 CreateChannelRequest& WithCdiInputSpecification(CdiInputSpecificationT&& value) {
63 SetCdiInputSpecification(std::forward<CdiInputSpecificationT>(value));
64 return *this;
65 }
67
69
73 inline ChannelClass GetChannelClass() const { return m_channelClass; }
74 inline bool ChannelClassHasBeenSet() const { return m_channelClassHasBeenSet; }
75 inline void SetChannelClass(ChannelClass value) {
76 m_channelClassHasBeenSet = true;
77 m_channelClass = value;
78 }
80 SetChannelClass(value);
81 return *this;
82 }
84
86
87 inline const Aws::Vector<OutputDestination>& GetDestinations() const { return m_destinations; }
88 inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; }
89 template <typename DestinationsT = Aws::Vector<OutputDestination>>
90 void SetDestinations(DestinationsT&& value) {
91 m_destinationsHasBeenSet = true;
92 m_destinations = std::forward<DestinationsT>(value);
93 }
94 template <typename DestinationsT = Aws::Vector<OutputDestination>>
95 CreateChannelRequest& WithDestinations(DestinationsT&& value) {
96 SetDestinations(std::forward<DestinationsT>(value));
97 return *this;
98 }
99 template <typename DestinationsT = OutputDestination>
100 CreateChannelRequest& AddDestinations(DestinationsT&& value) {
101 m_destinationsHasBeenSet = true;
102 m_destinations.emplace_back(std::forward<DestinationsT>(value));
103 return *this;
104 }
106
108
109 inline const EncoderSettings& GetEncoderSettings() const { return m_encoderSettings; }
110 inline bool EncoderSettingsHasBeenSet() const { return m_encoderSettingsHasBeenSet; }
111 template <typename EncoderSettingsT = EncoderSettings>
112 void SetEncoderSettings(EncoderSettingsT&& value) {
113 m_encoderSettingsHasBeenSet = true;
114 m_encoderSettings = std::forward<EncoderSettingsT>(value);
115 }
116 template <typename EncoderSettingsT = EncoderSettings>
117 CreateChannelRequest& WithEncoderSettings(EncoderSettingsT&& value) {
118 SetEncoderSettings(std::forward<EncoderSettingsT>(value));
119 return *this;
120 }
122
124
127 inline const Aws::Vector<InputAttachment>& GetInputAttachments() const { return m_inputAttachments; }
128 inline bool InputAttachmentsHasBeenSet() const { return m_inputAttachmentsHasBeenSet; }
129 template <typename InputAttachmentsT = Aws::Vector<InputAttachment>>
130 void SetInputAttachments(InputAttachmentsT&& value) {
131 m_inputAttachmentsHasBeenSet = true;
132 m_inputAttachments = std::forward<InputAttachmentsT>(value);
133 }
134 template <typename InputAttachmentsT = Aws::Vector<InputAttachment>>
135 CreateChannelRequest& WithInputAttachments(InputAttachmentsT&& value) {
136 SetInputAttachments(std::forward<InputAttachmentsT>(value));
137 return *this;
138 }
139 template <typename InputAttachmentsT = InputAttachment>
140 CreateChannelRequest& AddInputAttachments(InputAttachmentsT&& value) {
141 m_inputAttachmentsHasBeenSet = true;
142 m_inputAttachments.emplace_back(std::forward<InputAttachmentsT>(value));
143 return *this;
144 }
146
148
151 inline const InputSpecification& GetInputSpecification() const { return m_inputSpecification; }
152 inline bool InputSpecificationHasBeenSet() const { return m_inputSpecificationHasBeenSet; }
153 template <typename InputSpecificationT = InputSpecification>
154 void SetInputSpecification(InputSpecificationT&& value) {
155 m_inputSpecificationHasBeenSet = true;
156 m_inputSpecification = std::forward<InputSpecificationT>(value);
157 }
158 template <typename InputSpecificationT = InputSpecification>
159 CreateChannelRequest& WithInputSpecification(InputSpecificationT&& value) {
160 SetInputSpecification(std::forward<InputSpecificationT>(value));
161 return *this;
162 }
164
166
169 inline LogLevel GetLogLevel() const { return m_logLevel; }
170 inline bool LogLevelHasBeenSet() const { return m_logLevelHasBeenSet; }
171 inline void SetLogLevel(LogLevel value) {
172 m_logLevelHasBeenSet = true;
173 m_logLevel = value;
174 }
176 SetLogLevel(value);
177 return *this;
178 }
180
182
185 inline const MaintenanceCreateSettings& GetMaintenance() const { return m_maintenance; }
186 inline bool MaintenanceHasBeenSet() const { return m_maintenanceHasBeenSet; }
187 template <typename MaintenanceT = MaintenanceCreateSettings>
188 void SetMaintenance(MaintenanceT&& value) {
189 m_maintenanceHasBeenSet = true;
190 m_maintenance = std::forward<MaintenanceT>(value);
191 }
192 template <typename MaintenanceT = MaintenanceCreateSettings>
193 CreateChannelRequest& WithMaintenance(MaintenanceT&& value) {
194 SetMaintenance(std::forward<MaintenanceT>(value));
195 return *this;
196 }
198
200
203 inline const Aws::String& GetName() const { return m_name; }
204 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
205 template <typename NameT = Aws::String>
206 void SetName(NameT&& value) {
207 m_nameHasBeenSet = true;
208 m_name = std::forward<NameT>(value);
209 }
210 template <typename NameT = Aws::String>
212 SetName(std::forward<NameT>(value));
213 return *this;
214 }
216
218
223 inline const Aws::String& GetRequestId() const { return m_requestId; }
224 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
225 template <typename RequestIdT = Aws::String>
226 void SetRequestId(RequestIdT&& value) {
227 m_requestIdHasBeenSet = true;
228 m_requestId = std::forward<RequestIdT>(value);
229 }
230 template <typename RequestIdT = Aws::String>
231 CreateChannelRequest& WithRequestId(RequestIdT&& value) {
232 SetRequestId(std::forward<RequestIdT>(value));
233 return *this;
234 }
236
238
242 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
243 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
244 template <typename RoleArnT = Aws::String>
245 void SetRoleArn(RoleArnT&& value) {
246 m_roleArnHasBeenSet = true;
247 m_roleArn = std::forward<RoleArnT>(value);
248 }
249 template <typename RoleArnT = Aws::String>
251 SetRoleArn(std::forward<RoleArnT>(value));
252 return *this;
253 }
255
257
260 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
261 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
262 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
263 void SetTags(TagsT&& value) {
264 m_tagsHasBeenSet = true;
265 m_tags = std::forward<TagsT>(value);
266 }
267 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
269 SetTags(std::forward<TagsT>(value));
270 return *this;
271 }
272 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
273 CreateChannelRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
274 m_tagsHasBeenSet = true;
275 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
276 return *this;
277 }
279
281
284 inline const VpcOutputSettings& GetVpc() const { return m_vpc; }
285 inline bool VpcHasBeenSet() const { return m_vpcHasBeenSet; }
286 template <typename VpcT = VpcOutputSettings>
287 void SetVpc(VpcT&& value) {
288 m_vpcHasBeenSet = true;
289 m_vpc = std::forward<VpcT>(value);
290 }
291 template <typename VpcT = VpcOutputSettings>
293 SetVpc(std::forward<VpcT>(value));
294 return *this;
295 }
297
299
302 inline const AnywhereSettings& GetAnywhereSettings() const { return m_anywhereSettings; }
303 inline bool AnywhereSettingsHasBeenSet() const { return m_anywhereSettingsHasBeenSet; }
304 template <typename AnywhereSettingsT = AnywhereSettings>
305 void SetAnywhereSettings(AnywhereSettingsT&& value) {
306 m_anywhereSettingsHasBeenSet = true;
307 m_anywhereSettings = std::forward<AnywhereSettingsT>(value);
308 }
309 template <typename AnywhereSettingsT = AnywhereSettings>
310 CreateChannelRequest& WithAnywhereSettings(AnywhereSettingsT&& value) {
311 SetAnywhereSettings(std::forward<AnywhereSettingsT>(value));
312 return *this;
313 }
315
317
320 inline const ChannelEngineVersionRequest& GetChannelEngineVersion() const { return m_channelEngineVersion; }
321 inline bool ChannelEngineVersionHasBeenSet() const { return m_channelEngineVersionHasBeenSet; }
322 template <typename ChannelEngineVersionT = ChannelEngineVersionRequest>
323 void SetChannelEngineVersion(ChannelEngineVersionT&& value) {
324 m_channelEngineVersionHasBeenSet = true;
325 m_channelEngineVersion = std::forward<ChannelEngineVersionT>(value);
326 }
327 template <typename ChannelEngineVersionT = ChannelEngineVersionRequest>
328 CreateChannelRequest& WithChannelEngineVersion(ChannelEngineVersionT&& value) {
329 SetChannelEngineVersion(std::forward<ChannelEngineVersionT>(value));
330 return *this;
331 }
333
335
336 inline bool GetDryRun() const { return m_dryRun; }
337 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
338 inline void SetDryRun(bool value) {
339 m_dryRunHasBeenSet = true;
340 m_dryRun = value;
341 }
342 inline CreateChannelRequest& WithDryRun(bool value) {
343 SetDryRun(value);
344 return *this;
345 }
347
349
352 inline const LinkedChannelSettings& GetLinkedChannelSettings() const { return m_linkedChannelSettings; }
353 inline bool LinkedChannelSettingsHasBeenSet() const { return m_linkedChannelSettingsHasBeenSet; }
354 template <typename LinkedChannelSettingsT = LinkedChannelSettings>
355 void SetLinkedChannelSettings(LinkedChannelSettingsT&& value) {
356 m_linkedChannelSettingsHasBeenSet = true;
357 m_linkedChannelSettings = std::forward<LinkedChannelSettingsT>(value);
358 }
359 template <typename LinkedChannelSettingsT = LinkedChannelSettings>
360 CreateChannelRequest& WithLinkedChannelSettings(LinkedChannelSettingsT&& value) {
361 SetLinkedChannelSettings(std::forward<LinkedChannelSettingsT>(value));
362 return *this;
363 }
365
367
370 inline const Aws::Vector<Aws::String>& GetChannelSecurityGroups() const { return m_channelSecurityGroups; }
371 inline bool ChannelSecurityGroupsHasBeenSet() const { return m_channelSecurityGroupsHasBeenSet; }
372 template <typename ChannelSecurityGroupsT = Aws::Vector<Aws::String>>
373 void SetChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
374 m_channelSecurityGroupsHasBeenSet = true;
375 m_channelSecurityGroups = std::forward<ChannelSecurityGroupsT>(value);
376 }
377 template <typename ChannelSecurityGroupsT = Aws::Vector<Aws::String>>
378 CreateChannelRequest& WithChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
379 SetChannelSecurityGroups(std::forward<ChannelSecurityGroupsT>(value));
380 return *this;
381 }
382 template <typename ChannelSecurityGroupsT = Aws::String>
383 CreateChannelRequest& AddChannelSecurityGroups(ChannelSecurityGroupsT&& value) {
384 m_channelSecurityGroupsHasBeenSet = true;
385 m_channelSecurityGroups.emplace_back(std::forward<ChannelSecurityGroupsT>(value));
386 return *this;
387 }
389
391
394 inline const InferenceSettings& GetInferenceSettings() const { return m_inferenceSettings; }
395 inline bool InferenceSettingsHasBeenSet() const { return m_inferenceSettingsHasBeenSet; }
396 template <typename InferenceSettingsT = InferenceSettings>
397 void SetInferenceSettings(InferenceSettingsT&& value) {
398 m_inferenceSettingsHasBeenSet = true;
399 m_inferenceSettings = std::forward<InferenceSettingsT>(value);
400 }
401 template <typename InferenceSettingsT = InferenceSettings>
402 CreateChannelRequest& WithInferenceSettings(InferenceSettingsT&& value) {
403 SetInferenceSettings(std::forward<InferenceSettingsT>(value));
404 return *this;
405 }
407 private:
408 CdiInputSpecification m_cdiInputSpecification;
409
410 ChannelClass m_channelClass{ChannelClass::NOT_SET};
411
412 Aws::Vector<OutputDestination> m_destinations;
413
414 EncoderSettings m_encoderSettings;
415
416 Aws::Vector<InputAttachment> m_inputAttachments;
417
418 InputSpecification m_inputSpecification;
419
420 LogLevel m_logLevel{LogLevel::NOT_SET};
421
422 MaintenanceCreateSettings m_maintenance;
423
424 Aws::String m_name;
425
427
428 Aws::String m_roleArn;
429
431
432 VpcOutputSettings m_vpc;
433
434 AnywhereSettings m_anywhereSettings;
435
436 ChannelEngineVersionRequest m_channelEngineVersion;
437
438 bool m_dryRun{false};
439
440 LinkedChannelSettings m_linkedChannelSettings;
441
442 Aws::Vector<Aws::String> m_channelSecurityGroups;
443
444 InferenceSettings m_inferenceSettings;
445 bool m_cdiInputSpecificationHasBeenSet = false;
446 bool m_channelClassHasBeenSet = false;
447 bool m_destinationsHasBeenSet = false;
448 bool m_encoderSettingsHasBeenSet = false;
449 bool m_inputAttachmentsHasBeenSet = false;
450 bool m_inputSpecificationHasBeenSet = false;
451 bool m_logLevelHasBeenSet = false;
452 bool m_maintenanceHasBeenSet = false;
453 bool m_nameHasBeenSet = false;
454 bool m_requestIdHasBeenSet = true;
455 bool m_roleArnHasBeenSet = false;
456 bool m_tagsHasBeenSet = false;
457 bool m_vpcHasBeenSet = false;
458 bool m_anywhereSettingsHasBeenSet = false;
459 bool m_channelEngineVersionHasBeenSet = false;
460 bool m_dryRunHasBeenSet = false;
461 bool m_linkedChannelSettingsHasBeenSet = false;
462 bool m_channelSecurityGroupsHasBeenSet = false;
463 bool m_inferenceSettingsHasBeenSet = false;
464};
465
466} // namespace Model
467} // namespace MediaLive
468} // 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 InferenceSettings & GetInferenceSettings() const
const LinkedChannelSettings & GetLinkedChannelSettings() const
CreateChannelRequest & WithRoleArn(RoleArnT &&value)
CreateChannelRequest & WithInferenceSettings(InferenceSettingsT &&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)
void SetInferenceSettings(InferenceSettingsT &&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