AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CreateQueueRequest.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/pcs/PCSRequest.h>
12#include <aws/pcs/PCS_EXPORTS.h>
13#include <aws/pcs/model/ComputeNodeGroupConfiguration.h>
14#include <aws/pcs/model/QueueSlurmConfigurationRequest.h>
15
16#include <utility>
17
18namespace Aws {
19namespace PCS {
20namespace Model {
21
25 public:
26 AWS_PCS_API CreateQueueRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateQueue"; }
33
34 AWS_PCS_API Aws::String SerializePayload() const override;
35
37
39
42 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
43 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
44 template <typename ClusterIdentifierT = Aws::String>
45 void SetClusterIdentifier(ClusterIdentifierT&& value) {
46 m_clusterIdentifierHasBeenSet = true;
47 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
48 }
49 template <typename ClusterIdentifierT = Aws::String>
50 CreateQueueRequest& WithClusterIdentifier(ClusterIdentifierT&& value) {
51 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetQueueName() const { return m_queueName; }
61 inline bool QueueNameHasBeenSet() const { return m_queueNameHasBeenSet; }
62 template <typename QueueNameT = Aws::String>
63 void SetQueueName(QueueNameT&& value) {
64 m_queueNameHasBeenSet = true;
65 m_queueName = std::forward<QueueNameT>(value);
66 }
67 template <typename QueueNameT = Aws::String>
68 CreateQueueRequest& WithQueueName(QueueNameT&& value) {
69 SetQueueName(std::forward<QueueNameT>(value));
70 return *this;
71 }
73
75
80 return m_computeNodeGroupConfigurations;
81 }
82 inline bool ComputeNodeGroupConfigurationsHasBeenSet() const { return m_computeNodeGroupConfigurationsHasBeenSet; }
83 template <typename ComputeNodeGroupConfigurationsT = Aws::Vector<ComputeNodeGroupConfiguration>>
84 void SetComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT&& value) {
85 m_computeNodeGroupConfigurationsHasBeenSet = true;
86 m_computeNodeGroupConfigurations = std::forward<ComputeNodeGroupConfigurationsT>(value);
87 }
88 template <typename ComputeNodeGroupConfigurationsT = Aws::Vector<ComputeNodeGroupConfiguration>>
89 CreateQueueRequest& WithComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT&& value) {
90 SetComputeNodeGroupConfigurations(std::forward<ComputeNodeGroupConfigurationsT>(value));
91 return *this;
92 }
93 template <typename ComputeNodeGroupConfigurationsT = ComputeNodeGroupConfiguration>
94 CreateQueueRequest& AddComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT&& value) {
95 m_computeNodeGroupConfigurationsHasBeenSet = true;
96 m_computeNodeGroupConfigurations.emplace_back(std::forward<ComputeNodeGroupConfigurationsT>(value));
97 return *this;
98 }
100
102
105 inline const QueueSlurmConfigurationRequest& GetSlurmConfiguration() const { return m_slurmConfiguration; }
106 inline bool SlurmConfigurationHasBeenSet() const { return m_slurmConfigurationHasBeenSet; }
107 template <typename SlurmConfigurationT = QueueSlurmConfigurationRequest>
108 void SetSlurmConfiguration(SlurmConfigurationT&& value) {
109 m_slurmConfigurationHasBeenSet = true;
110 m_slurmConfiguration = std::forward<SlurmConfigurationT>(value);
111 }
112 template <typename SlurmConfigurationT = QueueSlurmConfigurationRequest>
113 CreateQueueRequest& WithSlurmConfiguration(SlurmConfigurationT&& value) {
114 SetSlurmConfiguration(std::forward<SlurmConfigurationT>(value));
115 return *this;
116 }
118
120
129 inline const Aws::String& GetClientToken() const { return m_clientToken; }
130 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
131 template <typename ClientTokenT = Aws::String>
132 void SetClientToken(ClientTokenT&& value) {
133 m_clientTokenHasBeenSet = true;
134 m_clientToken = std::forward<ClientTokenT>(value);
135 }
136 template <typename ClientTokenT = Aws::String>
137 CreateQueueRequest& WithClientToken(ClientTokenT&& value) {
138 SetClientToken(std::forward<ClientTokenT>(value));
139 return *this;
140 }
142
144
148 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
149 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
150 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
151 void SetTags(TagsT&& value) {
152 m_tagsHasBeenSet = true;
153 m_tags = std::forward<TagsT>(value);
154 }
155 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
156 CreateQueueRequest& WithTags(TagsT&& value) {
157 SetTags(std::forward<TagsT>(value));
158 return *this;
159 }
160 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
161 CreateQueueRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
162 m_tagsHasBeenSet = true;
163 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
164 return *this;
165 }
167 private:
168 Aws::String m_clusterIdentifier;
169
170 Aws::String m_queueName;
171
172 Aws::Vector<ComputeNodeGroupConfiguration> m_computeNodeGroupConfigurations;
173
174 QueueSlurmConfigurationRequest m_slurmConfiguration;
175
177
179 bool m_clusterIdentifierHasBeenSet = false;
180 bool m_queueNameHasBeenSet = false;
181 bool m_computeNodeGroupConfigurationsHasBeenSet = false;
182 bool m_slurmConfigurationHasBeenSet = false;
183 bool m_clientTokenHasBeenSet = true;
184 bool m_tagsHasBeenSet = false;
185};
186
187} // namespace Model
188} // namespace PCS
189} // namespace Aws
void SetClusterIdentifier(ClusterIdentifierT &&value)
const Aws::String & GetClientToken() const
const Aws::String & GetQueueName() const
CreateQueueRequest & AddComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT &&value)
CreateQueueRequest & WithSlurmConfiguration(SlurmConfigurationT &&value)
void SetComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT &&value)
CreateQueueRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const QueueSlurmConfigurationRequest & GetSlurmConfiguration() const
const Aws::String & GetClusterIdentifier() const
AWS_PCS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateQueueRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
CreateQueueRequest & WithComputeNodeGroupConfigurations(ComputeNodeGroupConfigurationsT &&value)
CreateQueueRequest & WithQueueName(QueueNameT &&value)
virtual const char * GetServiceRequestName() const override
CreateQueueRequest & WithClientToken(ClientTokenT &&value)
void SetClientToken(ClientTokenT &&value)
CreateQueueRequest & WithTags(TagsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_PCS_API CreateQueueRequest()=default
void SetQueueName(QueueNameT &&value)
const Aws::Vector< ComputeNodeGroupConfiguration > & GetComputeNodeGroupConfigurations() const
void SetSlurmConfiguration(SlurmConfigurationT &&value)
AWS_PCS_API Aws::String SerializePayload() const override
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
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