AWS SDK for C++  0.12.9
AWS SDK for C++
ECSClient.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ecs/ECS_EXPORTS.h>
17 #include <aws/ecs/ECSErrors.h>
52 #include <future>
53 #include <functional>
54 
55 namespace Aws
56 {
57 
58 namespace Http
59 {
60  class HttpClient;
61  class HttpClientFactory;
62 } // namespace Http
63 
64 namespace Utils
65 {
66  template< typename R, typename E> class Outcome;
67 
68 namespace Threading
69 {
70  class Executor;
71 } // namespace Threading
72 
73 namespace Json
74 {
75  class JsonValue;
76 } // namespace Json
77 } // namespace Utils
78 
79 namespace Auth
80 {
81  class AWSCredentials;
82  class AWSCredentialsProvider;
83 } // namespace Auth
84 
85 namespace Client
86 {
87  class RetryStrategy;
88 } // namespace Client
89 
90 namespace ECS
91 {
92 
93 namespace Model
94 {
105  class DescribeTasksRequest;
107  class ListClustersRequest;
109  class ListServicesRequest;
112  class ListTasksRequest;
115  class RunTaskRequest;
116  class StartTaskRequest;
117  class StopTaskRequest;
122 
150 
151  typedef std::future<CreateClusterOutcome> CreateClusterOutcomeCallable;
152  typedef std::future<CreateServiceOutcome> CreateServiceOutcomeCallable;
153  typedef std::future<DeleteClusterOutcome> DeleteClusterOutcomeCallable;
154  typedef std::future<DeleteServiceOutcome> DeleteServiceOutcomeCallable;
155  typedef std::future<DeregisterContainerInstanceOutcome> DeregisterContainerInstanceOutcomeCallable;
156  typedef std::future<DeregisterTaskDefinitionOutcome> DeregisterTaskDefinitionOutcomeCallable;
157  typedef std::future<DescribeClustersOutcome> DescribeClustersOutcomeCallable;
158  typedef std::future<DescribeContainerInstancesOutcome> DescribeContainerInstancesOutcomeCallable;
159  typedef std::future<DescribeServicesOutcome> DescribeServicesOutcomeCallable;
160  typedef std::future<DescribeTaskDefinitionOutcome> DescribeTaskDefinitionOutcomeCallable;
161  typedef std::future<DescribeTasksOutcome> DescribeTasksOutcomeCallable;
162  typedef std::future<DiscoverPollEndpointOutcome> DiscoverPollEndpointOutcomeCallable;
163  typedef std::future<ListClustersOutcome> ListClustersOutcomeCallable;
164  typedef std::future<ListContainerInstancesOutcome> ListContainerInstancesOutcomeCallable;
165  typedef std::future<ListServicesOutcome> ListServicesOutcomeCallable;
166  typedef std::future<ListTaskDefinitionFamiliesOutcome> ListTaskDefinitionFamiliesOutcomeCallable;
167  typedef std::future<ListTaskDefinitionsOutcome> ListTaskDefinitionsOutcomeCallable;
168  typedef std::future<ListTasksOutcome> ListTasksOutcomeCallable;
169  typedef std::future<RegisterContainerInstanceOutcome> RegisterContainerInstanceOutcomeCallable;
170  typedef std::future<RegisterTaskDefinitionOutcome> RegisterTaskDefinitionOutcomeCallable;
171  typedef std::future<RunTaskOutcome> RunTaskOutcomeCallable;
172  typedef std::future<StartTaskOutcome> StartTaskOutcomeCallable;
173  typedef std::future<StopTaskOutcome> StopTaskOutcomeCallable;
174  typedef std::future<SubmitContainerStateChangeOutcome> SubmitContainerStateChangeOutcomeCallable;
175  typedef std::future<SubmitTaskStateChangeOutcome> SubmitTaskStateChangeOutcomeCallable;
176  typedef std::future<UpdateContainerAgentOutcome> UpdateContainerAgentOutcomeCallable;
177  typedef std::future<UpdateServiceOutcome> UpdateServiceOutcomeCallable;
178 } // namespace Model
179 
180  class ECSClient;
181 
182  typedef std::function<void(const ECSClient*, const Model::CreateClusterRequest&, const Model::CreateClusterOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateClusterResponseReceivedHandler;
183  typedef std::function<void(const ECSClient*, const Model::CreateServiceRequest&, const Model::CreateServiceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateServiceResponseReceivedHandler;
184  typedef std::function<void(const ECSClient*, const Model::DeleteClusterRequest&, const Model::DeleteClusterOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteClusterResponseReceivedHandler;
185  typedef std::function<void(const ECSClient*, const Model::DeleteServiceRequest&, const Model::DeleteServiceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteServiceResponseReceivedHandler;
186  typedef std::function<void(const ECSClient*, const Model::DeregisterContainerInstanceRequest&, const Model::DeregisterContainerInstanceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeregisterContainerInstanceResponseReceivedHandler;
187  typedef std::function<void(const ECSClient*, const Model::DeregisterTaskDefinitionRequest&, const Model::DeregisterTaskDefinitionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeregisterTaskDefinitionResponseReceivedHandler;
188  typedef std::function<void(const ECSClient*, const Model::DescribeClustersRequest&, const Model::DescribeClustersOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeClustersResponseReceivedHandler;
189  typedef std::function<void(const ECSClient*, const Model::DescribeContainerInstancesRequest&, const Model::DescribeContainerInstancesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeContainerInstancesResponseReceivedHandler;
190  typedef std::function<void(const ECSClient*, const Model::DescribeServicesRequest&, const Model::DescribeServicesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeServicesResponseReceivedHandler;
191  typedef std::function<void(const ECSClient*, const Model::DescribeTaskDefinitionRequest&, const Model::DescribeTaskDefinitionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTaskDefinitionResponseReceivedHandler;
192  typedef std::function<void(const ECSClient*, const Model::DescribeTasksRequest&, const Model::DescribeTasksOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTasksResponseReceivedHandler;
193  typedef std::function<void(const ECSClient*, const Model::DiscoverPollEndpointRequest&, const Model::DiscoverPollEndpointOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DiscoverPollEndpointResponseReceivedHandler;
194  typedef std::function<void(const ECSClient*, const Model::ListClustersRequest&, const Model::ListClustersOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListClustersResponseReceivedHandler;
195  typedef std::function<void(const ECSClient*, const Model::ListContainerInstancesRequest&, const Model::ListContainerInstancesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListContainerInstancesResponseReceivedHandler;
196  typedef std::function<void(const ECSClient*, const Model::ListServicesRequest&, const Model::ListServicesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListServicesResponseReceivedHandler;
197  typedef std::function<void(const ECSClient*, const Model::ListTaskDefinitionFamiliesRequest&, const Model::ListTaskDefinitionFamiliesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTaskDefinitionFamiliesResponseReceivedHandler;
198  typedef std::function<void(const ECSClient*, const Model::ListTaskDefinitionsRequest&, const Model::ListTaskDefinitionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTaskDefinitionsResponseReceivedHandler;
199  typedef std::function<void(const ECSClient*, const Model::ListTasksRequest&, const Model::ListTasksOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTasksResponseReceivedHandler;
200  typedef std::function<void(const ECSClient*, const Model::RegisterContainerInstanceRequest&, const Model::RegisterContainerInstanceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RegisterContainerInstanceResponseReceivedHandler;
201  typedef std::function<void(const ECSClient*, const Model::RegisterTaskDefinitionRequest&, const Model::RegisterTaskDefinitionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RegisterTaskDefinitionResponseReceivedHandler;
202  typedef std::function<void(const ECSClient*, const Model::RunTaskRequest&, const Model::RunTaskOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RunTaskResponseReceivedHandler;
203  typedef std::function<void(const ECSClient*, const Model::StartTaskRequest&, const Model::StartTaskOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StartTaskResponseReceivedHandler;
204  typedef std::function<void(const ECSClient*, const Model::StopTaskRequest&, const Model::StopTaskOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StopTaskResponseReceivedHandler;
205  typedef std::function<void(const ECSClient*, const Model::SubmitContainerStateChangeRequest&, const Model::SubmitContainerStateChangeOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SubmitContainerStateChangeResponseReceivedHandler;
206  typedef std::function<void(const ECSClient*, const Model::SubmitTaskStateChangeRequest&, const Model::SubmitTaskStateChangeOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SubmitTaskStateChangeResponseReceivedHandler;
207  typedef std::function<void(const ECSClient*, const Model::UpdateContainerAgentRequest&, const Model::UpdateContainerAgentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateContainerAgentResponseReceivedHandler;
208  typedef std::function<void(const ECSClient*, const Model::UpdateServiceRequest&, const Model::UpdateServiceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateServiceResponseReceivedHandler;
209 
224  {
225  public:
227 
232  ECSClient(const Client::ClientConfiguration& clientConfiguration = Client::ClientConfiguration());
233 
238  ECSClient(const Auth::AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration = Client::ClientConfiguration());
239 
244  ECSClient(const std::shared_ptr<Auth::AWSCredentialsProvider>& credentialsProvider,
245  const Client::ClientConfiguration& clientConfiguration = Client::ClientConfiguration());
246 
247  virtual ~ECSClient();
248 
255  virtual Model::CreateClusterOutcome CreateCluster(const Model::CreateClusterRequest& request) const;
256 
265  virtual Model::CreateClusterOutcomeCallable CreateClusterCallable(const Model::CreateClusterRequest& request) const;
266 
275  virtual void CreateClusterAsync(const Model::CreateClusterRequest& request, const CreateClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
276 
320  virtual Model::CreateServiceOutcome CreateService(const Model::CreateServiceRequest& request) const;
321 
367  virtual Model::CreateServiceOutcomeCallable CreateServiceCallable(const Model::CreateServiceRequest& request) const;
368 
414  virtual void CreateServiceAsync(const Model::CreateServiceRequest& request, const CreateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
415 
422  virtual Model::DeleteClusterOutcome DeleteCluster(const Model::DeleteClusterRequest& request) const;
423 
432  virtual Model::DeleteClusterOutcomeCallable DeleteClusterCallable(const Model::DeleteClusterRequest& request) const;
433 
442  virtual void DeleteClusterAsync(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
443 
461  virtual Model::DeleteServiceOutcome DeleteService(const Model::DeleteServiceRequest& request) const;
462 
482  virtual Model::DeleteServiceOutcomeCallable DeleteServiceCallable(const Model::DeleteServiceRequest& request) const;
483 
503  virtual void DeleteServiceAsync(const Model::DeleteServiceRequest& request, const DeleteServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
504 
519  virtual Model::DeregisterContainerInstanceOutcome DeregisterContainerInstance(const Model::DeregisterContainerInstanceRequest& request) const;
520 
537  virtual Model::DeregisterContainerInstanceOutcomeCallable DeregisterContainerInstanceCallable(const Model::DeregisterContainerInstanceRequest& request) const;
538 
555  virtual void DeregisterContainerInstanceAsync(const Model::DeregisterContainerInstanceRequest& request, const DeregisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
556 
569  virtual Model::DeregisterTaskDefinitionOutcome DeregisterTaskDefinition(const Model::DeregisterTaskDefinitionRequest& request) const;
570 
585  virtual Model::DeregisterTaskDefinitionOutcomeCallable DeregisterTaskDefinitionCallable(const Model::DeregisterTaskDefinitionRequest& request) const;
586 
601  virtual void DeregisterTaskDefinitionAsync(const Model::DeregisterTaskDefinitionRequest& request, const DeregisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
602 
606  virtual Model::DescribeClustersOutcome DescribeClusters(const Model::DescribeClustersRequest& request) const;
607 
613  virtual Model::DescribeClustersOutcomeCallable DescribeClustersCallable(const Model::DescribeClustersRequest& request) const;
614 
620  virtual void DescribeClustersAsync(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
621 
627  virtual Model::DescribeContainerInstancesOutcome DescribeContainerInstances(const Model::DescribeContainerInstancesRequest& request) const;
628 
636  virtual Model::DescribeContainerInstancesOutcomeCallable DescribeContainerInstancesCallable(const Model::DescribeContainerInstancesRequest& request) const;
637 
645  virtual void DescribeContainerInstancesAsync(const Model::DescribeContainerInstancesRequest& request, const DescribeContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
646 
650  virtual Model::DescribeServicesOutcome DescribeServices(const Model::DescribeServicesRequest& request) const;
651 
657  virtual Model::DescribeServicesOutcomeCallable DescribeServicesCallable(const Model::DescribeServicesRequest& request) const;
658 
664  virtual void DescribeServicesAsync(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
665 
674  virtual Model::DescribeTaskDefinitionOutcome DescribeTaskDefinition(const Model::DescribeTaskDefinitionRequest& request) const;
675 
686  virtual Model::DescribeTaskDefinitionOutcomeCallable DescribeTaskDefinitionCallable(const Model::DescribeTaskDefinitionRequest& request) const;
687 
698  virtual void DescribeTaskDefinitionAsync(const Model::DescribeTaskDefinitionRequest& request, const DescribeTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
699 
703  virtual Model::DescribeTasksOutcome DescribeTasks(const Model::DescribeTasksRequest& request) const;
704 
710  virtual Model::DescribeTasksOutcomeCallable DescribeTasksCallable(const Model::DescribeTasksRequest& request) const;
711 
717  virtual void DescribeTasksAsync(const Model::DescribeTasksRequest& request, const DescribeTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
718 
724  virtual Model::DiscoverPollEndpointOutcome DiscoverPollEndpoint(const Model::DiscoverPollEndpointRequest& request) const;
725 
733  virtual Model::DiscoverPollEndpointOutcomeCallable DiscoverPollEndpointCallable(const Model::DiscoverPollEndpointRequest& request) const;
734 
742  virtual void DiscoverPollEndpointAsync(const Model::DiscoverPollEndpointRequest& request, const DiscoverPollEndpointResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
743 
747  virtual Model::ListClustersOutcome ListClusters(const Model::ListClustersRequest& request) const;
748 
754  virtual Model::ListClustersOutcomeCallable ListClustersCallable(const Model::ListClustersRequest& request) const;
755 
761  virtual void ListClustersAsync(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
762 
766  virtual Model::ListContainerInstancesOutcome ListContainerInstances(const Model::ListContainerInstancesRequest& request) const;
767 
773  virtual Model::ListContainerInstancesOutcomeCallable ListContainerInstancesCallable(const Model::ListContainerInstancesRequest& request) const;
774 
780  virtual void ListContainerInstancesAsync(const Model::ListContainerInstancesRequest& request, const ListContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
781 
785  virtual Model::ListServicesOutcome ListServices(const Model::ListServicesRequest& request) const;
786 
792  virtual Model::ListServicesOutcomeCallable ListServicesCallable(const Model::ListServicesRequest& request) const;
793 
799  virtual void ListServicesAsync(const Model::ListServicesRequest& request, const ListServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
800 
810  virtual Model::ListTaskDefinitionFamiliesOutcome ListTaskDefinitionFamilies(const Model::ListTaskDefinitionFamiliesRequest& request) const;
811 
823  virtual Model::ListTaskDefinitionFamiliesOutcomeCallable ListTaskDefinitionFamiliesCallable(const Model::ListTaskDefinitionFamiliesRequest& request) const;
824 
836  virtual void ListTaskDefinitionFamiliesAsync(const Model::ListTaskDefinitionFamiliesRequest& request, const ListTaskDefinitionFamiliesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
837 
843  virtual Model::ListTaskDefinitionsOutcome ListTaskDefinitions(const Model::ListTaskDefinitionsRequest& request) const;
844 
852  virtual Model::ListTaskDefinitionsOutcomeCallable ListTaskDefinitionsCallable(const Model::ListTaskDefinitionsRequest& request) const;
853 
861  virtual void ListTaskDefinitionsAsync(const Model::ListTaskDefinitionsRequest& request, const ListTaskDefinitionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
862 
869  virtual Model::ListTasksOutcome ListTasks(const Model::ListTasksRequest& request) const;
870 
879  virtual Model::ListTasksOutcomeCallable ListTasksCallable(const Model::ListTasksRequest& request) const;
880 
889  virtual void ListTasksAsync(const Model::ListTasksRequest& request, const ListTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
890 
897  virtual Model::RegisterContainerInstanceOutcome RegisterContainerInstance(const Model::RegisterContainerInstanceRequest& request) const;
898 
907  virtual Model::RegisterContainerInstanceOutcomeCallable RegisterContainerInstanceCallable(const Model::RegisterContainerInstanceRequest& request) const;
908 
917  virtual void RegisterContainerInstanceAsync(const Model::RegisterContainerInstanceRequest& request, const RegisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
918 
928  virtual Model::RegisterTaskDefinitionOutcome RegisterTaskDefinition(const Model::RegisterTaskDefinitionRequest& request) const;
929 
941  virtual Model::RegisterTaskDefinitionOutcomeCallable RegisterTaskDefinitionCallable(const Model::RegisterTaskDefinitionRequest& request) const;
942 
954  virtual void RegisterTaskDefinitionAsync(const Model::RegisterTaskDefinitionRequest& request, const RegisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
955 
962  virtual Model::RunTaskOutcome RunTask(const Model::RunTaskRequest& request) const;
963 
972  virtual Model::RunTaskOutcomeCallable RunTaskCallable(const Model::RunTaskRequest& request) const;
973 
982  virtual void RunTaskAsync(const Model::RunTaskRequest& request, const RunTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
983 
990  virtual Model::StartTaskOutcome StartTask(const Model::StartTaskRequest& request) const;
991 
1000  virtual Model::StartTaskOutcomeCallable StartTaskCallable(const Model::StartTaskRequest& request) const;
1001 
1010  virtual void StartTaskAsync(const Model::StartTaskRequest& request, const StartTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1011 
1020  virtual Model::StopTaskOutcome StopTask(const Model::StopTaskRequest& request) const;
1021 
1032  virtual Model::StopTaskOutcomeCallable StopTaskCallable(const Model::StopTaskRequest& request) const;
1033 
1044  virtual void StopTaskAsync(const Model::StopTaskRequest& request, const StopTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1045 
1051  virtual Model::SubmitContainerStateChangeOutcome SubmitContainerStateChange(const Model::SubmitContainerStateChangeRequest& request) const;
1052 
1060  virtual Model::SubmitContainerStateChangeOutcomeCallable SubmitContainerStateChangeCallable(const Model::SubmitContainerStateChangeRequest& request) const;
1061 
1069  virtual void SubmitContainerStateChangeAsync(const Model::SubmitContainerStateChangeRequest& request, const SubmitContainerStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1070 
1076  virtual Model::SubmitTaskStateChangeOutcome SubmitTaskStateChange(const Model::SubmitTaskStateChangeRequest& request) const;
1077 
1085  virtual Model::SubmitTaskStateChangeOutcomeCallable SubmitTaskStateChangeCallable(const Model::SubmitTaskStateChangeRequest& request) const;
1086 
1094  virtual void SubmitTaskStateChangeAsync(const Model::SubmitTaskStateChangeRequest& request, const SubmitTaskStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1095 
1109  virtual Model::UpdateContainerAgentOutcome UpdateContainerAgent(const Model::UpdateContainerAgentRequest& request) const;
1110 
1126  virtual Model::UpdateContainerAgentOutcomeCallable UpdateContainerAgentCallable(const Model::UpdateContainerAgentRequest& request) const;
1127 
1143  virtual void UpdateContainerAgentAsync(const Model::UpdateContainerAgentRequest& request, const UpdateContainerAgentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1144 
1190  virtual Model::UpdateServiceOutcome UpdateService(const Model::UpdateServiceRequest& request) const;
1191 
1239  virtual Model::UpdateServiceOutcomeCallable UpdateServiceCallable(const Model::UpdateServiceRequest& request) const;
1240 
1288  virtual void UpdateServiceAsync(const Model::UpdateServiceRequest& request, const UpdateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1289 
1290 
1291  private:
1292  void init(const Client::ClientConfiguration& clientConfiguration);
1293 
1295  void CreateClusterAsyncHelper(const Model::CreateClusterRequest& request, const CreateClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1296  void CreateServiceAsyncHelper(const Model::CreateServiceRequest& request, const CreateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1297  void DeleteClusterAsyncHelper(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1298  void DeleteServiceAsyncHelper(const Model::DeleteServiceRequest& request, const DeleteServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1299  void DeregisterContainerInstanceAsyncHelper(const Model::DeregisterContainerInstanceRequest& request, const DeregisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1300  void DeregisterTaskDefinitionAsyncHelper(const Model::DeregisterTaskDefinitionRequest& request, const DeregisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1301  void DescribeClustersAsyncHelper(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1302  void DescribeContainerInstancesAsyncHelper(const Model::DescribeContainerInstancesRequest& request, const DescribeContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1303  void DescribeServicesAsyncHelper(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1304  void DescribeTaskDefinitionAsyncHelper(const Model::DescribeTaskDefinitionRequest& request, const DescribeTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1305  void DescribeTasksAsyncHelper(const Model::DescribeTasksRequest& request, const DescribeTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1306  void DiscoverPollEndpointAsyncHelper(const Model::DiscoverPollEndpointRequest& request, const DiscoverPollEndpointResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1307  void ListClustersAsyncHelper(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1308  void ListContainerInstancesAsyncHelper(const Model::ListContainerInstancesRequest& request, const ListContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1309  void ListServicesAsyncHelper(const Model::ListServicesRequest& request, const ListServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1310  void ListTaskDefinitionFamiliesAsyncHelper(const Model::ListTaskDefinitionFamiliesRequest& request, const ListTaskDefinitionFamiliesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1311  void ListTaskDefinitionsAsyncHelper(const Model::ListTaskDefinitionsRequest& request, const ListTaskDefinitionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1312  void ListTasksAsyncHelper(const Model::ListTasksRequest& request, const ListTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1313  void RegisterContainerInstanceAsyncHelper(const Model::RegisterContainerInstanceRequest& request, const RegisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1314  void RegisterTaskDefinitionAsyncHelper(const Model::RegisterTaskDefinitionRequest& request, const RegisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1315  void RunTaskAsyncHelper(const Model::RunTaskRequest& request, const RunTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1316  void StartTaskAsyncHelper(const Model::StartTaskRequest& request, const StartTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1317  void StopTaskAsyncHelper(const Model::StopTaskRequest& request, const StopTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1318  void SubmitContainerStateChangeAsyncHelper(const Model::SubmitContainerStateChangeRequest& request, const SubmitContainerStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1319  void SubmitTaskStateChangeAsyncHelper(const Model::SubmitTaskStateChangeRequest& request, const SubmitTaskStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1320  void UpdateContainerAgentAsyncHelper(const Model::UpdateContainerAgentRequest& request, const UpdateContainerAgentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1321  void UpdateServiceAsyncHelper(const Model::UpdateServiceRequest& request, const UpdateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1322 
1323  Aws::String m_uri;
1324  std::shared_ptr<Utils::Threading::Executor> m_executor;
1325  };
1326 
1327 } // namespace ECS
1328 } // namespace Aws
Aws::Utils::Outcome< DeleteServiceResult, Aws::Client::AWSError< ECSErrors > > DeleteServiceOutcome
Definition: ECSClient.h:126
std::function< void(const ECSClient *, const Model::RegisterTaskDefinitionRequest &, const Model::RegisterTaskDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RegisterTaskDefinitionResponseReceivedHandler
Definition: ECSClient.h:201
Aws::Utils::Outcome< DescribeServicesResult, Aws::Client::AWSError< ECSErrors > > DescribeServicesOutcome
Definition: ECSClient.h:131
std::future< DeregisterTaskDefinitionOutcome > DeregisterTaskDefinitionOutcomeCallable
Definition: ECSClient.h:156
std::function< void(const ECSClient *, const Model::ListServicesRequest &, const Model::ListServicesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListServicesResponseReceivedHandler
Definition: ECSClient.h:196
std::function< void(const ECSClient *, const Model::UpdateContainerAgentRequest &, const Model::UpdateContainerAgentOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateContainerAgentResponseReceivedHandler
Definition: ECSClient.h:207
Aws::Utils::Outcome< ListContainerInstancesResult, Aws::Client::AWSError< ECSErrors > > ListContainerInstancesOutcome
Definition: ECSClient.h:136
std::future< RunTaskOutcome > RunTaskOutcomeCallable
Definition: ECSClient.h:171
Aws::Utils::Outcome< StopTaskResult, Aws::Client::AWSError< ECSErrors > > StopTaskOutcome
Definition: ECSClient.h:145
std::future< ListTaskDefinitionFamiliesOutcome > ListTaskDefinitionFamiliesOutcomeCallable
Definition: ECSClient.h:166
std::function< void(const ECSClient *, const Model::SubmitContainerStateChangeRequest &, const Model::SubmitContainerStateChangeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > SubmitContainerStateChangeResponseReceivedHandler
Definition: ECSClient.h:205
Aws::Utils::Outcome< UpdateContainerAgentResult, Aws::Client::AWSError< ECSErrors > > UpdateContainerAgentOutcome
Definition: ECSClient.h:148
std::function< void(const ECSClient *, const Model::DeleteClusterRequest &, const Model::DeleteClusterOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteClusterResponseReceivedHandler
Definition: ECSClient.h:184
Aws::Utils::Outcome< ListServicesResult, Aws::Client::AWSError< ECSErrors > > ListServicesOutcome
Definition: ECSClient.h:137
#define AWS_ECS_API
Definition: ECS_EXPORTS.h:34
std::function< void(const ECSClient *, const Model::ListTasksRequest &, const Model::ListTasksOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTasksResponseReceivedHandler
Definition: ECSClient.h:199
std::future< ListTasksOutcome > ListTasksOutcomeCallable
Definition: ECSClient.h:168
Aws::Utils::Outcome< DescribeTaskDefinitionResult, Aws::Client::AWSError< ECSErrors > > DescribeTaskDefinitionOutcome
Definition: ECSClient.h:132
Aws::Utils::Outcome< DeregisterTaskDefinitionResult, Aws::Client::AWSError< ECSErrors > > DeregisterTaskDefinitionOutcome
Definition: ECSClient.h:128
std::future< DeregisterContainerInstanceOutcome > DeregisterContainerInstanceOutcomeCallable
Definition: ECSClient.h:155
std::future< DeleteClusterOutcome > DeleteClusterOutcomeCallable
Definition: ECSClient.h:153
Aws::Utils::Outcome< RegisterTaskDefinitionResult, Aws::Client::AWSError< ECSErrors > > RegisterTaskDefinitionOutcome
Definition: ECSClient.h:142
std::future< ListTaskDefinitionsOutcome > ListTaskDefinitionsOutcomeCallable
Definition: ECSClient.h:167
std::future< ListServicesOutcome > ListServicesOutcomeCallable
Definition: ECSClient.h:165
std::future< DeleteServiceOutcome > DeleteServiceOutcomeCallable
Definition: ECSClient.h:154
std::function< void(const ECSClient *, const Model::ListContainerInstancesRequest &, const Model::ListContainerInstancesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListContainerInstancesResponseReceivedHandler
Definition: ECSClient.h:195
std::function< void(const ECSClient *, const Model::ListTaskDefinitionsRequest &, const Model::ListTaskDefinitionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTaskDefinitionsResponseReceivedHandler
Definition: ECSClient.h:198
std::function< void(const ECSClient *, const Model::ListTaskDefinitionFamiliesRequest &, const Model::ListTaskDefinitionFamiliesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTaskDefinitionFamiliesResponseReceivedHandler
Definition: ECSClient.h:197
Aws::Utils::Outcome< ListTaskDefinitionFamiliesResult, Aws::Client::AWSError< ECSErrors > > ListTaskDefinitionFamiliesOutcome
Definition: ECSClient.h:138
Aws::Utils::Outcome< DescribeClustersResult, Aws::Client::AWSError< ECSErrors > > DescribeClustersOutcome
Definition: ECSClient.h:129
std::function< void(const ECSClient *, const Model::DescribeClustersRequest &, const Model::DescribeClustersOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeClustersResponseReceivedHandler
Definition: ECSClient.h:188
std::function< void(const ECSClient *, const Model::SubmitTaskStateChangeRequest &, const Model::SubmitTaskStateChangeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > SubmitTaskStateChangeResponseReceivedHandler
Definition: ECSClient.h:206
std::function< void(const ECSClient *, const Model::DeregisterContainerInstanceRequest &, const Model::DeregisterContainerInstanceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeregisterContainerInstanceResponseReceivedHandler
Definition: ECSClient.h:186
Aws::Utils::Outcome< CreateServiceResult, Aws::Client::AWSError< ECSErrors > > CreateServiceOutcome
Definition: ECSClient.h:124
std::future< StopTaskOutcome > StopTaskOutcomeCallable
Definition: ECSClient.h:173
Aws::Utils::Outcome< ListClustersResult, Aws::Client::AWSError< ECSErrors > > ListClustersOutcome
Definition: ECSClient.h:135
std::future< DescribeTaskDefinitionOutcome > DescribeTaskDefinitionOutcomeCallable
Definition: ECSClient.h:160
std::future< UpdateServiceOutcome > UpdateServiceOutcomeCallable
Definition: ECSClient.h:177
std::function< void(const ECSClient *, const Model::DescribeServicesRequest &, const Model::DescribeServicesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeServicesResponseReceivedHandler
Definition: ECSClient.h:190
Aws::Utils::Outcome< DeleteClusterResult, Aws::Client::AWSError< ECSErrors > > DeleteClusterOutcome
Definition: ECSClient.h:125
Aws::Utils::Outcome< SubmitTaskStateChangeResult, Aws::Client::AWSError< ECSErrors > > SubmitTaskStateChangeOutcome
Definition: ECSClient.h:147
std::function< void(const ECSClient *, const Model::RunTaskRequest &, const Model::RunTaskOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RunTaskResponseReceivedHandler
Definition: ECSClient.h:202
Aws::Utils::Outcome< RunTaskResult, Aws::Client::AWSError< ECSErrors > > RunTaskOutcome
Definition: ECSClient.h:143
Aws::Utils::Outcome< SubmitContainerStateChangeResult, Aws::Client::AWSError< ECSErrors > > SubmitContainerStateChangeOutcome
Definition: ECSClient.h:146
std::future< DiscoverPollEndpointOutcome > DiscoverPollEndpointOutcomeCallable
Definition: ECSClient.h:162
std::function< void(const ECSClient *, const Model::DescribeTaskDefinitionRequest &, const Model::DescribeTaskDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeTaskDefinitionResponseReceivedHandler
Definition: ECSClient.h:191
Aws::Utils::Outcome< RegisterContainerInstanceResult, Aws::Client::AWSError< ECSErrors > > RegisterContainerInstanceOutcome
Definition: ECSClient.h:141
std::function< void(const ECSClient *, const Model::CreateClusterRequest &, const Model::CreateClusterOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateClusterResponseReceivedHandler
Definition: ECSClient.h:180
std::function< void(const ECSClient *, const Model::RegisterContainerInstanceRequest &, const Model::RegisterContainerInstanceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RegisterContainerInstanceResponseReceivedHandler
Definition: ECSClient.h:200
std::function< void(const ECSClient *, const Model::DescribeContainerInstancesRequest &, const Model::DescribeContainerInstancesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeContainerInstancesResponseReceivedHandler
Definition: ECSClient.h:189
std::function< void(const ECSClient *, const Model::ListClustersRequest &, const Model::ListClustersOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListClustersResponseReceivedHandler
Definition: ECSClient.h:194
std::future< SubmitContainerStateChangeOutcome > SubmitContainerStateChangeOutcomeCallable
Definition: ECSClient.h:174
std::future< UpdateContainerAgentOutcome > UpdateContainerAgentOutcomeCallable
Definition: ECSClient.h:176
std::function< void(const ECSClient *, const Model::UpdateServiceRequest &, const Model::UpdateServiceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateServiceResponseReceivedHandler
Definition: ECSClient.h:208
Aws::Utils::Outcome< CreateClusterResult, Aws::Client::AWSError< ECSErrors > > CreateClusterOutcome
Definition: ECSClient.h:121
std::future< ListClustersOutcome > ListClustersOutcomeCallable
Definition: ECSClient.h:163
Aws::Utils::Outcome< StartTaskResult, Aws::Client::AWSError< ECSErrors > > StartTaskOutcome
Definition: ECSClient.h:144
std::function< void(const ECSClient *, const Model::CreateServiceRequest &, const Model::CreateServiceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateServiceResponseReceivedHandler
Definition: ECSClient.h:183
std::future< DescribeTasksOutcome > DescribeTasksOutcomeCallable
Definition: ECSClient.h:161
std::future< DescribeServicesOutcome > DescribeServicesOutcomeCallable
Definition: ECSClient.h:159
std::function< void(const ECSClient *, const Model::DescribeTasksRequest &, const Model::DescribeTasksOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeTasksResponseReceivedHandler
Definition: ECSClient.h:192
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::Utils::Outcome< ListTaskDefinitionsResult, Aws::Client::AWSError< ECSErrors > > ListTaskDefinitionsOutcome
Definition: ECSClient.h:139
std::future< CreateClusterOutcome > CreateClusterOutcomeCallable
Definition: ECSClient.h:151
std::future< DescribeContainerInstancesOutcome > DescribeContainerInstancesOutcomeCallable
Definition: ECSClient.h:158
std::future< SubmitTaskStateChangeOutcome > SubmitTaskStateChangeOutcomeCallable
Definition: ECSClient.h:175
Aws::Utils::Outcome< DiscoverPollEndpointResult, Aws::Client::AWSError< ECSErrors > > DiscoverPollEndpointOutcome
Definition: ECSClient.h:134
std::future< ListContainerInstancesOutcome > ListContainerInstancesOutcomeCallable
Definition: ECSClient.h:164
std::function< void(const ECSClient *, const Model::DeleteServiceRequest &, const Model::DeleteServiceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteServiceResponseReceivedHandler
Definition: ECSClient.h:185
std::function< void(const ECSClient *, const Model::DiscoverPollEndpointRequest &, const Model::DiscoverPollEndpointOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DiscoverPollEndpointResponseReceivedHandler
Definition: ECSClient.h:193
Aws::Utils::Outcome< UpdateServiceResult, Aws::Client::AWSError< ECSErrors > > UpdateServiceOutcome
Definition: ECSClient.h:149
Aws::Utils::Outcome< ListTasksResult, Aws::Client::AWSError< ECSErrors > > ListTasksOutcome
Definition: ECSClient.h:140
Aws::Utils::Outcome< DeregisterContainerInstanceResult, Aws::Client::AWSError< ECSErrors > > DeregisterContainerInstanceOutcome
Definition: ECSClient.h:127
std::future< DescribeClustersOutcome > DescribeClustersOutcomeCallable
Definition: ECSClient.h:157
std::future< CreateServiceOutcome > CreateServiceOutcomeCallable
Definition: ECSClient.h:152
std::function< void(const ECSClient *, const Model::StopTaskRequest &, const Model::StopTaskOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StopTaskResponseReceivedHandler
Definition: ECSClient.h:204
std::function< void(const ECSClient *, const Model::DeregisterTaskDefinitionRequest &, const Model::DeregisterTaskDefinitionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeregisterTaskDefinitionResponseReceivedHandler
Definition: ECSClient.h:187
Aws::Client::AWSJsonClient BASECLASS
Definition: ECSClient.h:226
std::future< RegisterContainerInstanceOutcome > RegisterContainerInstanceOutcomeCallable
Definition: ECSClient.h:169
Aws::Utils::Outcome< DescribeContainerInstancesResult, Aws::Client::AWSError< ECSErrors > > DescribeContainerInstancesOutcome
Definition: ECSClient.h:130
Aws::Utils::Outcome< DescribeTasksResult, Aws::Client::AWSError< ECSErrors > > DescribeTasksOutcome
Definition: ECSClient.h:133
JSON (JavaScript Object Notation).
std::function< void(const ECSClient *, const Model::StartTaskRequest &, const Model::StartTaskOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StartTaskResponseReceivedHandler
Definition: ECSClient.h:203
std::future< StartTaskOutcome > StartTaskOutcomeCallable
Definition: ECSClient.h:172
std::future< RegisterTaskDefinitionOutcome > RegisterTaskDefinitionOutcomeCallable
Definition: ECSClient.h:170