AWS SDK for C++  0.14.3
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 
323  virtual Model::CreateServiceOutcome CreateService(const Model::CreateServiceRequest& request) const;
324 
373  virtual Model::CreateServiceOutcomeCallable CreateServiceCallable(const Model::CreateServiceRequest& request) const;
374 
423  virtual void CreateServiceAsync(const Model::CreateServiceRequest& request, const CreateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
424 
431  virtual Model::DeleteClusterOutcome DeleteCluster(const Model::DeleteClusterRequest& request) const;
432 
441  virtual Model::DeleteClusterOutcomeCallable DeleteClusterCallable(const Model::DeleteClusterRequest& request) const;
442 
451  virtual void DeleteClusterAsync(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
452 
470  virtual Model::DeleteServiceOutcome DeleteService(const Model::DeleteServiceRequest& request) const;
471 
491  virtual Model::DeleteServiceOutcomeCallable DeleteServiceCallable(const Model::DeleteServiceRequest& request) const;
492 
512  virtual void DeleteServiceAsync(const Model::DeleteServiceRequest& request, const DeleteServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
513 
528  virtual Model::DeregisterContainerInstanceOutcome DeregisterContainerInstance(const Model::DeregisterContainerInstanceRequest& request) const;
529 
546  virtual Model::DeregisterContainerInstanceOutcomeCallable DeregisterContainerInstanceCallable(const Model::DeregisterContainerInstanceRequest& request) const;
547 
564  virtual void DeregisterContainerInstanceAsync(const Model::DeregisterContainerInstanceRequest& request, const DeregisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
565 
578  virtual Model::DeregisterTaskDefinitionOutcome DeregisterTaskDefinition(const Model::DeregisterTaskDefinitionRequest& request) const;
579 
594  virtual Model::DeregisterTaskDefinitionOutcomeCallable DeregisterTaskDefinitionCallable(const Model::DeregisterTaskDefinitionRequest& request) const;
595 
610  virtual void DeregisterTaskDefinitionAsync(const Model::DeregisterTaskDefinitionRequest& request, const DeregisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
611 
615  virtual Model::DescribeClustersOutcome DescribeClusters(const Model::DescribeClustersRequest& request) const;
616 
622  virtual Model::DescribeClustersOutcomeCallable DescribeClustersCallable(const Model::DescribeClustersRequest& request) const;
623 
629  virtual void DescribeClustersAsync(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
630 
636  virtual Model::DescribeContainerInstancesOutcome DescribeContainerInstances(const Model::DescribeContainerInstancesRequest& request) const;
637 
645  virtual Model::DescribeContainerInstancesOutcomeCallable DescribeContainerInstancesCallable(const Model::DescribeContainerInstancesRequest& request) const;
646 
654  virtual void DescribeContainerInstancesAsync(const Model::DescribeContainerInstancesRequest& request, const DescribeContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
655 
659  virtual Model::DescribeServicesOutcome DescribeServices(const Model::DescribeServicesRequest& request) const;
660 
666  virtual Model::DescribeServicesOutcomeCallable DescribeServicesCallable(const Model::DescribeServicesRequest& request) const;
667 
673  virtual void DescribeServicesAsync(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
674 
683  virtual Model::DescribeTaskDefinitionOutcome DescribeTaskDefinition(const Model::DescribeTaskDefinitionRequest& request) const;
684 
695  virtual Model::DescribeTaskDefinitionOutcomeCallable DescribeTaskDefinitionCallable(const Model::DescribeTaskDefinitionRequest& request) const;
696 
707  virtual void DescribeTaskDefinitionAsync(const Model::DescribeTaskDefinitionRequest& request, const DescribeTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
708 
712  virtual Model::DescribeTasksOutcome DescribeTasks(const Model::DescribeTasksRequest& request) const;
713 
719  virtual Model::DescribeTasksOutcomeCallable DescribeTasksCallable(const Model::DescribeTasksRequest& request) const;
720 
726  virtual void DescribeTasksAsync(const Model::DescribeTasksRequest& request, const DescribeTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
727 
733  virtual Model::DiscoverPollEndpointOutcome DiscoverPollEndpoint(const Model::DiscoverPollEndpointRequest& request) const;
734 
742  virtual Model::DiscoverPollEndpointOutcomeCallable DiscoverPollEndpointCallable(const Model::DiscoverPollEndpointRequest& request) const;
743 
751  virtual void DiscoverPollEndpointAsync(const Model::DiscoverPollEndpointRequest& request, const DiscoverPollEndpointResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
752 
756  virtual Model::ListClustersOutcome ListClusters(const Model::ListClustersRequest& request) const;
757 
763  virtual Model::ListClustersOutcomeCallable ListClustersCallable(const Model::ListClustersRequest& request) const;
764 
770  virtual void ListClustersAsync(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
771 
775  virtual Model::ListContainerInstancesOutcome ListContainerInstances(const Model::ListContainerInstancesRequest& request) const;
776 
782  virtual Model::ListContainerInstancesOutcomeCallable ListContainerInstancesCallable(const Model::ListContainerInstancesRequest& request) const;
783 
789  virtual void ListContainerInstancesAsync(const Model::ListContainerInstancesRequest& request, const ListContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
790 
794  virtual Model::ListServicesOutcome ListServices(const Model::ListServicesRequest& request) const;
795 
801  virtual Model::ListServicesOutcomeCallable ListServicesCallable(const Model::ListServicesRequest& request) const;
802 
808  virtual void ListServicesAsync(const Model::ListServicesRequest& request, const ListServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
809 
819  virtual Model::ListTaskDefinitionFamiliesOutcome ListTaskDefinitionFamilies(const Model::ListTaskDefinitionFamiliesRequest& request) const;
820 
832  virtual Model::ListTaskDefinitionFamiliesOutcomeCallable ListTaskDefinitionFamiliesCallable(const Model::ListTaskDefinitionFamiliesRequest& request) const;
833 
845  virtual void ListTaskDefinitionFamiliesAsync(const Model::ListTaskDefinitionFamiliesRequest& request, const ListTaskDefinitionFamiliesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
846 
852  virtual Model::ListTaskDefinitionsOutcome ListTaskDefinitions(const Model::ListTaskDefinitionsRequest& request) const;
853 
861  virtual Model::ListTaskDefinitionsOutcomeCallable ListTaskDefinitionsCallable(const Model::ListTaskDefinitionsRequest& request) const;
862 
870  virtual void ListTaskDefinitionsAsync(const Model::ListTaskDefinitionsRequest& request, const ListTaskDefinitionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
871 
880  virtual Model::ListTasksOutcome ListTasks(const Model::ListTasksRequest& request) const;
881 
892  virtual Model::ListTasksOutcomeCallable ListTasksCallable(const Model::ListTasksRequest& request) const;
893 
904  virtual void ListTasksAsync(const Model::ListTasksRequest& request, const ListTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
905 
912  virtual Model::RegisterContainerInstanceOutcome RegisterContainerInstance(const Model::RegisterContainerInstanceRequest& request) const;
913 
922  virtual Model::RegisterContainerInstanceOutcomeCallable RegisterContainerInstanceCallable(const Model::RegisterContainerInstanceRequest& request) const;
923 
932  virtual void RegisterContainerInstanceAsync(const Model::RegisterContainerInstanceRequest& request, const RegisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
933 
950  virtual Model::RegisterTaskDefinitionOutcome RegisterTaskDefinition(const Model::RegisterTaskDefinitionRequest& request) const;
951 
970  virtual Model::RegisterTaskDefinitionOutcomeCallable RegisterTaskDefinitionCallable(const Model::RegisterTaskDefinitionRequest& request) const;
971 
990  virtual void RegisterTaskDefinitionAsync(const Model::RegisterTaskDefinitionRequest& request, const RegisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
991 
998  virtual Model::RunTaskOutcome RunTask(const Model::RunTaskRequest& request) const;
999 
1008  virtual Model::RunTaskOutcomeCallable RunTaskCallable(const Model::RunTaskRequest& request) const;
1009 
1018  virtual void RunTaskAsync(const Model::RunTaskRequest& request, const RunTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1019 
1026  virtual Model::StartTaskOutcome StartTask(const Model::StartTaskRequest& request) const;
1027 
1036  virtual Model::StartTaskOutcomeCallable StartTaskCallable(const Model::StartTaskRequest& request) const;
1037 
1046  virtual void StartTaskAsync(const Model::StartTaskRequest& request, const StartTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1047 
1056  virtual Model::StopTaskOutcome StopTask(const Model::StopTaskRequest& request) const;
1057 
1068  virtual Model::StopTaskOutcomeCallable StopTaskCallable(const Model::StopTaskRequest& request) const;
1069 
1080  virtual void StopTaskAsync(const Model::StopTaskRequest& request, const StopTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1081 
1087  virtual Model::SubmitContainerStateChangeOutcome SubmitContainerStateChange(const Model::SubmitContainerStateChangeRequest& request) const;
1088 
1096  virtual Model::SubmitContainerStateChangeOutcomeCallable SubmitContainerStateChangeCallable(const Model::SubmitContainerStateChangeRequest& request) const;
1097 
1105  virtual void SubmitContainerStateChangeAsync(const Model::SubmitContainerStateChangeRequest& request, const SubmitContainerStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1106 
1112  virtual Model::SubmitTaskStateChangeOutcome SubmitTaskStateChange(const Model::SubmitTaskStateChangeRequest& request) const;
1113 
1121  virtual Model::SubmitTaskStateChangeOutcomeCallable SubmitTaskStateChangeCallable(const Model::SubmitTaskStateChangeRequest& request) const;
1122 
1130  virtual void SubmitTaskStateChangeAsync(const Model::SubmitTaskStateChangeRequest& request, const SubmitTaskStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1131 
1145  virtual Model::UpdateContainerAgentOutcome UpdateContainerAgent(const Model::UpdateContainerAgentRequest& request) const;
1146 
1162  virtual Model::UpdateContainerAgentOutcomeCallable UpdateContainerAgentCallable(const Model::UpdateContainerAgentRequest& request) const;
1163 
1179  virtual void UpdateContainerAgentAsync(const Model::UpdateContainerAgentRequest& request, const UpdateContainerAgentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1180 
1226  virtual Model::UpdateServiceOutcome UpdateService(const Model::UpdateServiceRequest& request) const;
1227 
1275  virtual Model::UpdateServiceOutcomeCallable UpdateServiceCallable(const Model::UpdateServiceRequest& request) const;
1276 
1324  virtual void UpdateServiceAsync(const Model::UpdateServiceRequest& request, const UpdateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1325 
1326 
1327  private:
1328  void init(const Client::ClientConfiguration& clientConfiguration);
1329 
1331  void CreateClusterAsyncHelper(const Model::CreateClusterRequest& request, const CreateClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1332  void CreateServiceAsyncHelper(const Model::CreateServiceRequest& request, const CreateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1333  void DeleteClusterAsyncHelper(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1334  void DeleteServiceAsyncHelper(const Model::DeleteServiceRequest& request, const DeleteServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1335  void DeregisterContainerInstanceAsyncHelper(const Model::DeregisterContainerInstanceRequest& request, const DeregisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1336  void DeregisterTaskDefinitionAsyncHelper(const Model::DeregisterTaskDefinitionRequest& request, const DeregisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1337  void DescribeClustersAsyncHelper(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1338  void DescribeContainerInstancesAsyncHelper(const Model::DescribeContainerInstancesRequest& request, const DescribeContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1339  void DescribeServicesAsyncHelper(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1340  void DescribeTaskDefinitionAsyncHelper(const Model::DescribeTaskDefinitionRequest& request, const DescribeTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1341  void DescribeTasksAsyncHelper(const Model::DescribeTasksRequest& request, const DescribeTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1342  void DiscoverPollEndpointAsyncHelper(const Model::DiscoverPollEndpointRequest& request, const DiscoverPollEndpointResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1343  void ListClustersAsyncHelper(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1344  void ListContainerInstancesAsyncHelper(const Model::ListContainerInstancesRequest& request, const ListContainerInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1345  void ListServicesAsyncHelper(const Model::ListServicesRequest& request, const ListServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1346  void ListTaskDefinitionFamiliesAsyncHelper(const Model::ListTaskDefinitionFamiliesRequest& request, const ListTaskDefinitionFamiliesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1347  void ListTaskDefinitionsAsyncHelper(const Model::ListTaskDefinitionsRequest& request, const ListTaskDefinitionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1348  void ListTasksAsyncHelper(const Model::ListTasksRequest& request, const ListTasksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1349  void RegisterContainerInstanceAsyncHelper(const Model::RegisterContainerInstanceRequest& request, const RegisterContainerInstanceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1350  void RegisterTaskDefinitionAsyncHelper(const Model::RegisterTaskDefinitionRequest& request, const RegisterTaskDefinitionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1351  void RunTaskAsyncHelper(const Model::RunTaskRequest& request, const RunTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1352  void StartTaskAsyncHelper(const Model::StartTaskRequest& request, const StartTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1353  void StopTaskAsyncHelper(const Model::StopTaskRequest& request, const StopTaskResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1354  void SubmitContainerStateChangeAsyncHelper(const Model::SubmitContainerStateChangeRequest& request, const SubmitContainerStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1355  void SubmitTaskStateChangeAsyncHelper(const Model::SubmitTaskStateChangeRequest& request, const SubmitTaskStateChangeResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1356  void UpdateContainerAgentAsyncHelper(const Model::UpdateContainerAgentRequest& request, const UpdateContainerAgentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1357  void UpdateServiceAsyncHelper(const Model::UpdateServiceRequest& request, const UpdateServiceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1358 
1359  Aws::String m_uri;
1360  std::shared_ptr<Utils::Threading::Executor> m_executor;
1361  };
1362 
1363 } // namespace ECS
1364 } // 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:37
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