AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateMultiplexRequest.h
1
6#pragma once
7#include <aws/medialive/MediaLive_EXPORTS.h>
8#include <aws/medialive/MediaLiveRequest.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/medialive/model/MultiplexSettings.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace MediaLive
19{
20namespace Model
21{
22
29 {
30 public:
31 AWS_MEDIALIVE_API CreateMultiplexRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateMultiplex"; }
38
39 AWS_MEDIALIVE_API Aws::String SerializePayload() const override;
40
41
43
46 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const { return m_availabilityZones; }
47 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
48 template<typename AvailabilityZonesT = Aws::Vector<Aws::String>>
49 void SetAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::forward<AvailabilityZonesT>(value); }
50 template<typename AvailabilityZonesT = Aws::Vector<Aws::String>>
51 CreateMultiplexRequest& WithAvailabilityZones(AvailabilityZonesT&& value) { SetAvailabilityZones(std::forward<AvailabilityZonesT>(value)); return *this;}
52 template<typename AvailabilityZonesT = Aws::String>
53 CreateMultiplexRequest& AddAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value)); return *this; }
55
57
60 inline const MultiplexSettings& GetMultiplexSettings() const { return m_multiplexSettings; }
61 inline bool MultiplexSettingsHasBeenSet() const { return m_multiplexSettingsHasBeenSet; }
62 template<typename MultiplexSettingsT = MultiplexSettings>
63 void SetMultiplexSettings(MultiplexSettingsT&& value) { m_multiplexSettingsHasBeenSet = true; m_multiplexSettings = std::forward<MultiplexSettingsT>(value); }
64 template<typename MultiplexSettingsT = MultiplexSettings>
65 CreateMultiplexRequest& WithMultiplexSettings(MultiplexSettingsT&& value) { SetMultiplexSettings(std::forward<MultiplexSettingsT>(value)); return *this;}
67
69
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) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
76 template<typename NameT = Aws::String>
77 CreateMultiplexRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
79
81
85 inline const Aws::String& GetRequestId() const { return m_requestId; }
86 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
87 template<typename RequestIdT = Aws::String>
88 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward<RequestIdT>(value); }
89 template<typename RequestIdT = Aws::String>
90 CreateMultiplexRequest& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward<RequestIdT>(value)); return *this;}
92
94
97 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
98 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
99 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
100 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
101 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
102 CreateMultiplexRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
103 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
104 CreateMultiplexRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
105 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
106 }
108 private:
109
110 Aws::Vector<Aws::String> m_availabilityZones;
111 bool m_availabilityZonesHasBeenSet = false;
112
113 MultiplexSettings m_multiplexSettings;
114 bool m_multiplexSettingsHasBeenSet = false;
115
116 Aws::String m_name;
117 bool m_nameHasBeenSet = false;
118
120 bool m_requestIdHasBeenSet = true;
121
123 bool m_tagsHasBeenSet = false;
124 };
125
126} // namespace Model
127} // namespace MediaLive
128} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetMultiplexSettings(MultiplexSettingsT &&value)
AWS_MEDIALIVE_API CreateMultiplexRequest()=default
const MultiplexSettings & GetMultiplexSettings() const
virtual const char * GetServiceRequestName() const override
CreateMultiplexRequest & WithMultiplexSettings(MultiplexSettingsT &&value)
CreateMultiplexRequest & WithName(NameT &&value)
void SetAvailabilityZones(AvailabilityZonesT &&value)
AWS_MEDIALIVE_API Aws::String SerializePayload() const override
CreateMultiplexRequest & WithAvailabilityZones(AvailabilityZonesT &&value)
CreateMultiplexRequest & WithTags(TagsT &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
CreateMultiplexRequest & AddAvailabilityZones(AvailabilityZonesT &&value)
CreateMultiplexRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateMultiplexRequest & 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