1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/ecs/ECS_EXPORTS.h> 8 #include <aws/ecs/ECSRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/ecs/model/LaunchType.h> 11 #include <aws/ecs/model/SchedulingStrategy.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace ECS 17 { 18 namespace Model 19 { 20 21 /** 22 */ 23 class AWS_ECS_API ListServicesRequest : public ECSRequest 24 { 25 public: 26 ListServicesRequest(); 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. GetServiceRequestName()32 inline virtual const char* GetServiceRequestName() const override { return "ListServices"; } 33 34 Aws::String SerializePayload() const override; 35 36 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 37 38 39 /** 40 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 41 * filtering the <code>ListServices</code> results. If you do not specify a 42 * cluster, the default cluster is assumed.</p> 43 */ GetCluster()44 inline const Aws::String& GetCluster() const{ return m_cluster; } 45 46 /** 47 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 48 * filtering the <code>ListServices</code> results. If you do not specify a 49 * cluster, the default cluster is assumed.</p> 50 */ ClusterHasBeenSet()51 inline bool ClusterHasBeenSet() const { return m_clusterHasBeenSet; } 52 53 /** 54 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 55 * filtering the <code>ListServices</code> results. If you do not specify a 56 * cluster, the default cluster is assumed.</p> 57 */ SetCluster(const Aws::String & value)58 inline void SetCluster(const Aws::String& value) { m_clusterHasBeenSet = true; m_cluster = value; } 59 60 /** 61 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 62 * filtering the <code>ListServices</code> results. If you do not specify a 63 * cluster, the default cluster is assumed.</p> 64 */ SetCluster(Aws::String && value)65 inline void SetCluster(Aws::String&& value) { m_clusterHasBeenSet = true; m_cluster = std::move(value); } 66 67 /** 68 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 69 * filtering the <code>ListServices</code> results. If you do not specify a 70 * cluster, the default cluster is assumed.</p> 71 */ SetCluster(const char * value)72 inline void SetCluster(const char* value) { m_clusterHasBeenSet = true; m_cluster.assign(value); } 73 74 /** 75 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 76 * filtering the <code>ListServices</code> results. If you do not specify a 77 * cluster, the default cluster is assumed.</p> 78 */ WithCluster(const Aws::String & value)79 inline ListServicesRequest& WithCluster(const Aws::String& value) { SetCluster(value); return *this;} 80 81 /** 82 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 83 * filtering the <code>ListServices</code> results. If you do not specify a 84 * cluster, the default cluster is assumed.</p> 85 */ WithCluster(Aws::String && value)86 inline ListServicesRequest& WithCluster(Aws::String&& value) { SetCluster(std::move(value)); return *this;} 87 88 /** 89 * <p>The short name or full Amazon Resource Name (ARN) of the cluster to use when 90 * filtering the <code>ListServices</code> results. If you do not specify a 91 * cluster, the default cluster is assumed.</p> 92 */ WithCluster(const char * value)93 inline ListServicesRequest& WithCluster(const char* value) { SetCluster(value); return *this;} 94 95 96 /** 97 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 98 * request indicating that more results are available to fulfill the request and 99 * further calls will be needed. If <code>maxResults</code> was provided, it is 100 * possible the number of results to be fewer than <code>maxResults</code>.</p> 101 * <p>This token should be treated as an opaque identifier that is only used 102 * to retrieve the next items in a list and not for other programmatic 103 * purposes.</p> 104 */ GetNextToken()105 inline const Aws::String& GetNextToken() const{ return m_nextToken; } 106 107 /** 108 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 109 * request indicating that more results are available to fulfill the request and 110 * further calls will be needed. If <code>maxResults</code> was provided, it is 111 * possible the number of results to be fewer than <code>maxResults</code>.</p> 112 * <p>This token should be treated as an opaque identifier that is only used 113 * to retrieve the next items in a list and not for other programmatic 114 * purposes.</p> 115 */ NextTokenHasBeenSet()116 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } 117 118 /** 119 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 120 * request indicating that more results are available to fulfill the request and 121 * further calls will be needed. If <code>maxResults</code> was provided, it is 122 * possible the number of results to be fewer than <code>maxResults</code>.</p> 123 * <p>This token should be treated as an opaque identifier that is only used 124 * to retrieve the next items in a list and not for other programmatic 125 * purposes.</p> 126 */ SetNextToken(const Aws::String & value)127 inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } 128 129 /** 130 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 131 * request indicating that more results are available to fulfill the request and 132 * further calls will be needed. If <code>maxResults</code> was provided, it is 133 * possible the number of results to be fewer than <code>maxResults</code>.</p> 134 * <p>This token should be treated as an opaque identifier that is only used 135 * to retrieve the next items in a list and not for other programmatic 136 * purposes.</p> 137 */ SetNextToken(Aws::String && value)138 inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } 139 140 /** 141 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 142 * request indicating that more results are available to fulfill the request and 143 * further calls will be needed. If <code>maxResults</code> was provided, it is 144 * possible the number of results to be fewer than <code>maxResults</code>.</p> 145 * <p>This token should be treated as an opaque identifier that is only used 146 * to retrieve the next items in a list and not for other programmatic 147 * purposes.</p> 148 */ SetNextToken(const char * value)149 inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } 150 151 /** 152 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 153 * request indicating that more results are available to fulfill the request and 154 * further calls will be needed. If <code>maxResults</code> was provided, it is 155 * possible the number of results to be fewer than <code>maxResults</code>.</p> 156 * <p>This token should be treated as an opaque identifier that is only used 157 * to retrieve the next items in a list and not for other programmatic 158 * purposes.</p> 159 */ WithNextToken(const Aws::String & value)160 inline ListServicesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} 161 162 /** 163 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 164 * request indicating that more results are available to fulfill the request and 165 * further calls will be needed. If <code>maxResults</code> was provided, it is 166 * possible the number of results to be fewer than <code>maxResults</code>.</p> 167 * <p>This token should be treated as an opaque identifier that is only used 168 * to retrieve the next items in a list and not for other programmatic 169 * purposes.</p> 170 */ WithNextToken(Aws::String && value)171 inline ListServicesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} 172 173 /** 174 * <p>The <code>nextToken</code> value returned from a <code>ListServices</code> 175 * request indicating that more results are available to fulfill the request and 176 * further calls will be needed. If <code>maxResults</code> was provided, it is 177 * possible the number of results to be fewer than <code>maxResults</code>.</p> 178 * <p>This token should be treated as an opaque identifier that is only used 179 * to retrieve the next items in a list and not for other programmatic 180 * purposes.</p> 181 */ WithNextToken(const char * value)182 inline ListServicesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} 183 184 185 /** 186 * <p>The maximum number of service results returned by <code>ListServices</code> 187 * in paginated output. When this parameter is used, <code>ListServices</code> only 188 * returns <code>maxResults</code> results in a single page along with a 189 * <code>nextToken</code> response element. The remaining results of the initial 190 * request can be seen by sending another <code>ListServices</code> request with 191 * the returned <code>nextToken</code> value. This value can be between 1 and 100. 192 * If this parameter is not used, then <code>ListServices</code> returns up to 10 193 * results and a <code>nextToken</code> value if applicable.</p> 194 */ GetMaxResults()195 inline int GetMaxResults() const{ return m_maxResults; } 196 197 /** 198 * <p>The maximum number of service results returned by <code>ListServices</code> 199 * in paginated output. When this parameter is used, <code>ListServices</code> only 200 * returns <code>maxResults</code> results in a single page along with a 201 * <code>nextToken</code> response element. The remaining results of the initial 202 * request can be seen by sending another <code>ListServices</code> request with 203 * the returned <code>nextToken</code> value. This value can be between 1 and 100. 204 * If this parameter is not used, then <code>ListServices</code> returns up to 10 205 * results and a <code>nextToken</code> value if applicable.</p> 206 */ MaxResultsHasBeenSet()207 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } 208 209 /** 210 * <p>The maximum number of service results returned by <code>ListServices</code> 211 * in paginated output. When this parameter is used, <code>ListServices</code> only 212 * returns <code>maxResults</code> results in a single page along with a 213 * <code>nextToken</code> response element. The remaining results of the initial 214 * request can be seen by sending another <code>ListServices</code> request with 215 * the returned <code>nextToken</code> value. This value can be between 1 and 100. 216 * If this parameter is not used, then <code>ListServices</code> returns up to 10 217 * results and a <code>nextToken</code> value if applicable.</p> 218 */ SetMaxResults(int value)219 inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } 220 221 /** 222 * <p>The maximum number of service results returned by <code>ListServices</code> 223 * in paginated output. When this parameter is used, <code>ListServices</code> only 224 * returns <code>maxResults</code> results in a single page along with a 225 * <code>nextToken</code> response element. The remaining results of the initial 226 * request can be seen by sending another <code>ListServices</code> request with 227 * the returned <code>nextToken</code> value. This value can be between 1 and 100. 228 * If this parameter is not used, then <code>ListServices</code> returns up to 10 229 * results and a <code>nextToken</code> value if applicable.</p> 230 */ WithMaxResults(int value)231 inline ListServicesRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} 232 233 234 /** 235 * <p>The launch type to use when filtering the <code>ListServices</code> 236 * results.</p> 237 */ GetLaunchType()238 inline const LaunchType& GetLaunchType() const{ return m_launchType; } 239 240 /** 241 * <p>The launch type to use when filtering the <code>ListServices</code> 242 * results.</p> 243 */ LaunchTypeHasBeenSet()244 inline bool LaunchTypeHasBeenSet() const { return m_launchTypeHasBeenSet; } 245 246 /** 247 * <p>The launch type to use when filtering the <code>ListServices</code> 248 * results.</p> 249 */ SetLaunchType(const LaunchType & value)250 inline void SetLaunchType(const LaunchType& value) { m_launchTypeHasBeenSet = true; m_launchType = value; } 251 252 /** 253 * <p>The launch type to use when filtering the <code>ListServices</code> 254 * results.</p> 255 */ SetLaunchType(LaunchType && value)256 inline void SetLaunchType(LaunchType&& value) { m_launchTypeHasBeenSet = true; m_launchType = std::move(value); } 257 258 /** 259 * <p>The launch type to use when filtering the <code>ListServices</code> 260 * results.</p> 261 */ WithLaunchType(const LaunchType & value)262 inline ListServicesRequest& WithLaunchType(const LaunchType& value) { SetLaunchType(value); return *this;} 263 264 /** 265 * <p>The launch type to use when filtering the <code>ListServices</code> 266 * results.</p> 267 */ WithLaunchType(LaunchType && value)268 inline ListServicesRequest& WithLaunchType(LaunchType&& value) { SetLaunchType(std::move(value)); return *this;} 269 270 271 /** 272 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 273 * results.</p> 274 */ GetSchedulingStrategy()275 inline const SchedulingStrategy& GetSchedulingStrategy() const{ return m_schedulingStrategy; } 276 277 /** 278 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 279 * results.</p> 280 */ SchedulingStrategyHasBeenSet()281 inline bool SchedulingStrategyHasBeenSet() const { return m_schedulingStrategyHasBeenSet; } 282 283 /** 284 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 285 * results.</p> 286 */ SetSchedulingStrategy(const SchedulingStrategy & value)287 inline void SetSchedulingStrategy(const SchedulingStrategy& value) { m_schedulingStrategyHasBeenSet = true; m_schedulingStrategy = value; } 288 289 /** 290 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 291 * results.</p> 292 */ SetSchedulingStrategy(SchedulingStrategy && value)293 inline void SetSchedulingStrategy(SchedulingStrategy&& value) { m_schedulingStrategyHasBeenSet = true; m_schedulingStrategy = std::move(value); } 294 295 /** 296 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 297 * results.</p> 298 */ WithSchedulingStrategy(const SchedulingStrategy & value)299 inline ListServicesRequest& WithSchedulingStrategy(const SchedulingStrategy& value) { SetSchedulingStrategy(value); return *this;} 300 301 /** 302 * <p>The scheduling strategy to use when filtering the <code>ListServices</code> 303 * results.</p> 304 */ WithSchedulingStrategy(SchedulingStrategy && value)305 inline ListServicesRequest& WithSchedulingStrategy(SchedulingStrategy&& value) { SetSchedulingStrategy(std::move(value)); return *this;} 306 307 private: 308 309 Aws::String m_cluster; 310 bool m_clusterHasBeenSet; 311 312 Aws::String m_nextToken; 313 bool m_nextTokenHasBeenSet; 314 315 int m_maxResults; 316 bool m_maxResultsHasBeenSet; 317 318 LaunchType m_launchType; 319 bool m_launchTypeHasBeenSet; 320 321 SchedulingStrategy m_schedulingStrategy; 322 bool m_schedulingStrategyHasBeenSet; 323 }; 324 325 } // namespace Model 326 } // namespace ECS 327 } // namespace Aws 328