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/elasticmapreduce/EMR_EXPORTS.h> 8 #include <aws/elasticmapreduce/EMRErrors.h> 9 #include <aws/core/client/AWSError.h> 10 #include <aws/core/client/ClientConfiguration.h> 11 #include <aws/core/client/AWSClient.h> 12 #include <aws/core/utils/memory/stl/AWSString.h> 13 #include <aws/core/utils/json/JsonSerializer.h> 14 #include <aws/elasticmapreduce/model/AddInstanceFleetResult.h> 15 #include <aws/elasticmapreduce/model/AddInstanceGroupsResult.h> 16 #include <aws/elasticmapreduce/model/AddJobFlowStepsResult.h> 17 #include <aws/elasticmapreduce/model/AddTagsResult.h> 18 #include <aws/elasticmapreduce/model/CancelStepsResult.h> 19 #include <aws/elasticmapreduce/model/CreateSecurityConfigurationResult.h> 20 #include <aws/elasticmapreduce/model/CreateStudioResult.h> 21 #include <aws/elasticmapreduce/model/DeleteSecurityConfigurationResult.h> 22 #include <aws/elasticmapreduce/model/DescribeClusterResult.h> 23 #include <aws/elasticmapreduce/model/DescribeNotebookExecutionResult.h> 24 #include <aws/elasticmapreduce/model/DescribeReleaseLabelResult.h> 25 #include <aws/elasticmapreduce/model/DescribeSecurityConfigurationResult.h> 26 #include <aws/elasticmapreduce/model/DescribeStepResult.h> 27 #include <aws/elasticmapreduce/model/DescribeStudioResult.h> 28 #include <aws/elasticmapreduce/model/GetAutoTerminationPolicyResult.h> 29 #include <aws/elasticmapreduce/model/GetBlockPublicAccessConfigurationResult.h> 30 #include <aws/elasticmapreduce/model/GetManagedScalingPolicyResult.h> 31 #include <aws/elasticmapreduce/model/GetStudioSessionMappingResult.h> 32 #include <aws/elasticmapreduce/model/ListBootstrapActionsResult.h> 33 #include <aws/elasticmapreduce/model/ListClustersResult.h> 34 #include <aws/elasticmapreduce/model/ListInstanceFleetsResult.h> 35 #include <aws/elasticmapreduce/model/ListInstanceGroupsResult.h> 36 #include <aws/elasticmapreduce/model/ListInstancesResult.h> 37 #include <aws/elasticmapreduce/model/ListNotebookExecutionsResult.h> 38 #include <aws/elasticmapreduce/model/ListReleaseLabelsResult.h> 39 #include <aws/elasticmapreduce/model/ListSecurityConfigurationsResult.h> 40 #include <aws/elasticmapreduce/model/ListStepsResult.h> 41 #include <aws/elasticmapreduce/model/ListStudioSessionMappingsResult.h> 42 #include <aws/elasticmapreduce/model/ListStudiosResult.h> 43 #include <aws/elasticmapreduce/model/ModifyClusterResult.h> 44 #include <aws/elasticmapreduce/model/PutAutoScalingPolicyResult.h> 45 #include <aws/elasticmapreduce/model/PutAutoTerminationPolicyResult.h> 46 #include <aws/elasticmapreduce/model/PutBlockPublicAccessConfigurationResult.h> 47 #include <aws/elasticmapreduce/model/PutManagedScalingPolicyResult.h> 48 #include <aws/elasticmapreduce/model/RemoveAutoScalingPolicyResult.h> 49 #include <aws/elasticmapreduce/model/RemoveAutoTerminationPolicyResult.h> 50 #include <aws/elasticmapreduce/model/RemoveManagedScalingPolicyResult.h> 51 #include <aws/elasticmapreduce/model/RemoveTagsResult.h> 52 #include <aws/elasticmapreduce/model/RunJobFlowResult.h> 53 #include <aws/elasticmapreduce/model/StartNotebookExecutionResult.h> 54 #include <aws/core/NoResult.h> 55 #include <aws/core/client/AsyncCallerContext.h> 56 #include <aws/core/http/HttpTypes.h> 57 #include <future> 58 #include <functional> 59 60 namespace Aws 61 { 62 63 namespace Http 64 { 65 class HttpClient; 66 class HttpClientFactory; 67 } // namespace Http 68 69 namespace Utils 70 { 71 template< typename R, typename E> class Outcome; 72 namespace Threading 73 { 74 class Executor; 75 } // namespace Threading 76 } // namespace Utils 77 78 namespace Auth 79 { 80 class AWSCredentials; 81 class AWSCredentialsProvider; 82 } // namespace Auth 83 84 namespace Client 85 { 86 class RetryStrategy; 87 } // namespace Client 88 89 namespace EMR 90 { 91 92 namespace Model 93 { 94 class AddInstanceFleetRequest; 95 class AddInstanceGroupsRequest; 96 class AddJobFlowStepsRequest; 97 class AddTagsRequest; 98 class CancelStepsRequest; 99 class CreateSecurityConfigurationRequest; 100 class CreateStudioRequest; 101 class CreateStudioSessionMappingRequest; 102 class DeleteSecurityConfigurationRequest; 103 class DeleteStudioRequest; 104 class DeleteStudioSessionMappingRequest; 105 class DescribeClusterRequest; 106 class DescribeNotebookExecutionRequest; 107 class DescribeReleaseLabelRequest; 108 class DescribeSecurityConfigurationRequest; 109 class DescribeStepRequest; 110 class DescribeStudioRequest; 111 class GetAutoTerminationPolicyRequest; 112 class GetBlockPublicAccessConfigurationRequest; 113 class GetManagedScalingPolicyRequest; 114 class GetStudioSessionMappingRequest; 115 class ListBootstrapActionsRequest; 116 class ListClustersRequest; 117 class ListInstanceFleetsRequest; 118 class ListInstanceGroupsRequest; 119 class ListInstancesRequest; 120 class ListNotebookExecutionsRequest; 121 class ListReleaseLabelsRequest; 122 class ListSecurityConfigurationsRequest; 123 class ListStepsRequest; 124 class ListStudioSessionMappingsRequest; 125 class ListStudiosRequest; 126 class ModifyClusterRequest; 127 class ModifyInstanceFleetRequest; 128 class ModifyInstanceGroupsRequest; 129 class PutAutoScalingPolicyRequest; 130 class PutAutoTerminationPolicyRequest; 131 class PutBlockPublicAccessConfigurationRequest; 132 class PutManagedScalingPolicyRequest; 133 class RemoveAutoScalingPolicyRequest; 134 class RemoveAutoTerminationPolicyRequest; 135 class RemoveManagedScalingPolicyRequest; 136 class RemoveTagsRequest; 137 class RunJobFlowRequest; 138 class SetTerminationProtectionRequest; 139 class SetVisibleToAllUsersRequest; 140 class StartNotebookExecutionRequest; 141 class StopNotebookExecutionRequest; 142 class TerminateJobFlowsRequest; 143 class UpdateStudioRequest; 144 class UpdateStudioSessionMappingRequest; 145 146 typedef Aws::Utils::Outcome<AddInstanceFleetResult, EMRError> AddInstanceFleetOutcome; 147 typedef Aws::Utils::Outcome<AddInstanceGroupsResult, EMRError> AddInstanceGroupsOutcome; 148 typedef Aws::Utils::Outcome<AddJobFlowStepsResult, EMRError> AddJobFlowStepsOutcome; 149 typedef Aws::Utils::Outcome<AddTagsResult, EMRError> AddTagsOutcome; 150 typedef Aws::Utils::Outcome<CancelStepsResult, EMRError> CancelStepsOutcome; 151 typedef Aws::Utils::Outcome<CreateSecurityConfigurationResult, EMRError> CreateSecurityConfigurationOutcome; 152 typedef Aws::Utils::Outcome<CreateStudioResult, EMRError> CreateStudioOutcome; 153 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> CreateStudioSessionMappingOutcome; 154 typedef Aws::Utils::Outcome<DeleteSecurityConfigurationResult, EMRError> DeleteSecurityConfigurationOutcome; 155 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> DeleteStudioOutcome; 156 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> DeleteStudioSessionMappingOutcome; 157 typedef Aws::Utils::Outcome<DescribeClusterResult, EMRError> DescribeClusterOutcome; 158 typedef Aws::Utils::Outcome<DescribeNotebookExecutionResult, EMRError> DescribeNotebookExecutionOutcome; 159 typedef Aws::Utils::Outcome<DescribeReleaseLabelResult, EMRError> DescribeReleaseLabelOutcome; 160 typedef Aws::Utils::Outcome<DescribeSecurityConfigurationResult, EMRError> DescribeSecurityConfigurationOutcome; 161 typedef Aws::Utils::Outcome<DescribeStepResult, EMRError> DescribeStepOutcome; 162 typedef Aws::Utils::Outcome<DescribeStudioResult, EMRError> DescribeStudioOutcome; 163 typedef Aws::Utils::Outcome<GetAutoTerminationPolicyResult, EMRError> GetAutoTerminationPolicyOutcome; 164 typedef Aws::Utils::Outcome<GetBlockPublicAccessConfigurationResult, EMRError> GetBlockPublicAccessConfigurationOutcome; 165 typedef Aws::Utils::Outcome<GetManagedScalingPolicyResult, EMRError> GetManagedScalingPolicyOutcome; 166 typedef Aws::Utils::Outcome<GetStudioSessionMappingResult, EMRError> GetStudioSessionMappingOutcome; 167 typedef Aws::Utils::Outcome<ListBootstrapActionsResult, EMRError> ListBootstrapActionsOutcome; 168 typedef Aws::Utils::Outcome<ListClustersResult, EMRError> ListClustersOutcome; 169 typedef Aws::Utils::Outcome<ListInstanceFleetsResult, EMRError> ListInstanceFleetsOutcome; 170 typedef Aws::Utils::Outcome<ListInstanceGroupsResult, EMRError> ListInstanceGroupsOutcome; 171 typedef Aws::Utils::Outcome<ListInstancesResult, EMRError> ListInstancesOutcome; 172 typedef Aws::Utils::Outcome<ListNotebookExecutionsResult, EMRError> ListNotebookExecutionsOutcome; 173 typedef Aws::Utils::Outcome<ListReleaseLabelsResult, EMRError> ListReleaseLabelsOutcome; 174 typedef Aws::Utils::Outcome<ListSecurityConfigurationsResult, EMRError> ListSecurityConfigurationsOutcome; 175 typedef Aws::Utils::Outcome<ListStepsResult, EMRError> ListStepsOutcome; 176 typedef Aws::Utils::Outcome<ListStudioSessionMappingsResult, EMRError> ListStudioSessionMappingsOutcome; 177 typedef Aws::Utils::Outcome<ListStudiosResult, EMRError> ListStudiosOutcome; 178 typedef Aws::Utils::Outcome<ModifyClusterResult, EMRError> ModifyClusterOutcome; 179 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> ModifyInstanceFleetOutcome; 180 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> ModifyInstanceGroupsOutcome; 181 typedef Aws::Utils::Outcome<PutAutoScalingPolicyResult, EMRError> PutAutoScalingPolicyOutcome; 182 typedef Aws::Utils::Outcome<PutAutoTerminationPolicyResult, EMRError> PutAutoTerminationPolicyOutcome; 183 typedef Aws::Utils::Outcome<PutBlockPublicAccessConfigurationResult, EMRError> PutBlockPublicAccessConfigurationOutcome; 184 typedef Aws::Utils::Outcome<PutManagedScalingPolicyResult, EMRError> PutManagedScalingPolicyOutcome; 185 typedef Aws::Utils::Outcome<RemoveAutoScalingPolicyResult, EMRError> RemoveAutoScalingPolicyOutcome; 186 typedef Aws::Utils::Outcome<RemoveAutoTerminationPolicyResult, EMRError> RemoveAutoTerminationPolicyOutcome; 187 typedef Aws::Utils::Outcome<RemoveManagedScalingPolicyResult, EMRError> RemoveManagedScalingPolicyOutcome; 188 typedef Aws::Utils::Outcome<RemoveTagsResult, EMRError> RemoveTagsOutcome; 189 typedef Aws::Utils::Outcome<RunJobFlowResult, EMRError> RunJobFlowOutcome; 190 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> SetTerminationProtectionOutcome; 191 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> SetVisibleToAllUsersOutcome; 192 typedef Aws::Utils::Outcome<StartNotebookExecutionResult, EMRError> StartNotebookExecutionOutcome; 193 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> StopNotebookExecutionOutcome; 194 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> TerminateJobFlowsOutcome; 195 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> UpdateStudioOutcome; 196 typedef Aws::Utils::Outcome<Aws::NoResult, EMRError> UpdateStudioSessionMappingOutcome; 197 198 typedef std::future<AddInstanceFleetOutcome> AddInstanceFleetOutcomeCallable; 199 typedef std::future<AddInstanceGroupsOutcome> AddInstanceGroupsOutcomeCallable; 200 typedef std::future<AddJobFlowStepsOutcome> AddJobFlowStepsOutcomeCallable; 201 typedef std::future<AddTagsOutcome> AddTagsOutcomeCallable; 202 typedef std::future<CancelStepsOutcome> CancelStepsOutcomeCallable; 203 typedef std::future<CreateSecurityConfigurationOutcome> CreateSecurityConfigurationOutcomeCallable; 204 typedef std::future<CreateStudioOutcome> CreateStudioOutcomeCallable; 205 typedef std::future<CreateStudioSessionMappingOutcome> CreateStudioSessionMappingOutcomeCallable; 206 typedef std::future<DeleteSecurityConfigurationOutcome> DeleteSecurityConfigurationOutcomeCallable; 207 typedef std::future<DeleteStudioOutcome> DeleteStudioOutcomeCallable; 208 typedef std::future<DeleteStudioSessionMappingOutcome> DeleteStudioSessionMappingOutcomeCallable; 209 typedef std::future<DescribeClusterOutcome> DescribeClusterOutcomeCallable; 210 typedef std::future<DescribeNotebookExecutionOutcome> DescribeNotebookExecutionOutcomeCallable; 211 typedef std::future<DescribeReleaseLabelOutcome> DescribeReleaseLabelOutcomeCallable; 212 typedef std::future<DescribeSecurityConfigurationOutcome> DescribeSecurityConfigurationOutcomeCallable; 213 typedef std::future<DescribeStepOutcome> DescribeStepOutcomeCallable; 214 typedef std::future<DescribeStudioOutcome> DescribeStudioOutcomeCallable; 215 typedef std::future<GetAutoTerminationPolicyOutcome> GetAutoTerminationPolicyOutcomeCallable; 216 typedef std::future<GetBlockPublicAccessConfigurationOutcome> GetBlockPublicAccessConfigurationOutcomeCallable; 217 typedef std::future<GetManagedScalingPolicyOutcome> GetManagedScalingPolicyOutcomeCallable; 218 typedef std::future<GetStudioSessionMappingOutcome> GetStudioSessionMappingOutcomeCallable; 219 typedef std::future<ListBootstrapActionsOutcome> ListBootstrapActionsOutcomeCallable; 220 typedef std::future<ListClustersOutcome> ListClustersOutcomeCallable; 221 typedef std::future<ListInstanceFleetsOutcome> ListInstanceFleetsOutcomeCallable; 222 typedef std::future<ListInstanceGroupsOutcome> ListInstanceGroupsOutcomeCallable; 223 typedef std::future<ListInstancesOutcome> ListInstancesOutcomeCallable; 224 typedef std::future<ListNotebookExecutionsOutcome> ListNotebookExecutionsOutcomeCallable; 225 typedef std::future<ListReleaseLabelsOutcome> ListReleaseLabelsOutcomeCallable; 226 typedef std::future<ListSecurityConfigurationsOutcome> ListSecurityConfigurationsOutcomeCallable; 227 typedef std::future<ListStepsOutcome> ListStepsOutcomeCallable; 228 typedef std::future<ListStudioSessionMappingsOutcome> ListStudioSessionMappingsOutcomeCallable; 229 typedef std::future<ListStudiosOutcome> ListStudiosOutcomeCallable; 230 typedef std::future<ModifyClusterOutcome> ModifyClusterOutcomeCallable; 231 typedef std::future<ModifyInstanceFleetOutcome> ModifyInstanceFleetOutcomeCallable; 232 typedef std::future<ModifyInstanceGroupsOutcome> ModifyInstanceGroupsOutcomeCallable; 233 typedef std::future<PutAutoScalingPolicyOutcome> PutAutoScalingPolicyOutcomeCallable; 234 typedef std::future<PutAutoTerminationPolicyOutcome> PutAutoTerminationPolicyOutcomeCallable; 235 typedef std::future<PutBlockPublicAccessConfigurationOutcome> PutBlockPublicAccessConfigurationOutcomeCallable; 236 typedef std::future<PutManagedScalingPolicyOutcome> PutManagedScalingPolicyOutcomeCallable; 237 typedef std::future<RemoveAutoScalingPolicyOutcome> RemoveAutoScalingPolicyOutcomeCallable; 238 typedef std::future<RemoveAutoTerminationPolicyOutcome> RemoveAutoTerminationPolicyOutcomeCallable; 239 typedef std::future<RemoveManagedScalingPolicyOutcome> RemoveManagedScalingPolicyOutcomeCallable; 240 typedef std::future<RemoveTagsOutcome> RemoveTagsOutcomeCallable; 241 typedef std::future<RunJobFlowOutcome> RunJobFlowOutcomeCallable; 242 typedef std::future<SetTerminationProtectionOutcome> SetTerminationProtectionOutcomeCallable; 243 typedef std::future<SetVisibleToAllUsersOutcome> SetVisibleToAllUsersOutcomeCallable; 244 typedef std::future<StartNotebookExecutionOutcome> StartNotebookExecutionOutcomeCallable; 245 typedef std::future<StopNotebookExecutionOutcome> StopNotebookExecutionOutcomeCallable; 246 typedef std::future<TerminateJobFlowsOutcome> TerminateJobFlowsOutcomeCallable; 247 typedef std::future<UpdateStudioOutcome> UpdateStudioOutcomeCallable; 248 typedef std::future<UpdateStudioSessionMappingOutcome> UpdateStudioSessionMappingOutcomeCallable; 249 } // namespace Model 250 251 class EMRClient; 252 253 typedef std::function<void(const EMRClient*, const Model::AddInstanceFleetRequest&, const Model::AddInstanceFleetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddInstanceFleetResponseReceivedHandler; 254 typedef std::function<void(const EMRClient*, const Model::AddInstanceGroupsRequest&, const Model::AddInstanceGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddInstanceGroupsResponseReceivedHandler; 255 typedef std::function<void(const EMRClient*, const Model::AddJobFlowStepsRequest&, const Model::AddJobFlowStepsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddJobFlowStepsResponseReceivedHandler; 256 typedef std::function<void(const EMRClient*, const Model::AddTagsRequest&, const Model::AddTagsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddTagsResponseReceivedHandler; 257 typedef std::function<void(const EMRClient*, const Model::CancelStepsRequest&, const Model::CancelStepsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CancelStepsResponseReceivedHandler; 258 typedef std::function<void(const EMRClient*, const Model::CreateSecurityConfigurationRequest&, const Model::CreateSecurityConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateSecurityConfigurationResponseReceivedHandler; 259 typedef std::function<void(const EMRClient*, const Model::CreateStudioRequest&, const Model::CreateStudioOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateStudioResponseReceivedHandler; 260 typedef std::function<void(const EMRClient*, const Model::CreateStudioSessionMappingRequest&, const Model::CreateStudioSessionMappingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateStudioSessionMappingResponseReceivedHandler; 261 typedef std::function<void(const EMRClient*, const Model::DeleteSecurityConfigurationRequest&, const Model::DeleteSecurityConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteSecurityConfigurationResponseReceivedHandler; 262 typedef std::function<void(const EMRClient*, const Model::DeleteStudioRequest&, const Model::DeleteStudioOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteStudioResponseReceivedHandler; 263 typedef std::function<void(const EMRClient*, const Model::DeleteStudioSessionMappingRequest&, const Model::DeleteStudioSessionMappingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteStudioSessionMappingResponseReceivedHandler; 264 typedef std::function<void(const EMRClient*, const Model::DescribeClusterRequest&, const Model::DescribeClusterOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeClusterResponseReceivedHandler; 265 typedef std::function<void(const EMRClient*, const Model::DescribeNotebookExecutionRequest&, const Model::DescribeNotebookExecutionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeNotebookExecutionResponseReceivedHandler; 266 typedef std::function<void(const EMRClient*, const Model::DescribeReleaseLabelRequest&, const Model::DescribeReleaseLabelOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeReleaseLabelResponseReceivedHandler; 267 typedef std::function<void(const EMRClient*, const Model::DescribeSecurityConfigurationRequest&, const Model::DescribeSecurityConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeSecurityConfigurationResponseReceivedHandler; 268 typedef std::function<void(const EMRClient*, const Model::DescribeStepRequest&, const Model::DescribeStepOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeStepResponseReceivedHandler; 269 typedef std::function<void(const EMRClient*, const Model::DescribeStudioRequest&, const Model::DescribeStudioOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeStudioResponseReceivedHandler; 270 typedef std::function<void(const EMRClient*, const Model::GetAutoTerminationPolicyRequest&, const Model::GetAutoTerminationPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetAutoTerminationPolicyResponseReceivedHandler; 271 typedef std::function<void(const EMRClient*, const Model::GetBlockPublicAccessConfigurationRequest&, const Model::GetBlockPublicAccessConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBlockPublicAccessConfigurationResponseReceivedHandler; 272 typedef std::function<void(const EMRClient*, const Model::GetManagedScalingPolicyRequest&, const Model::GetManagedScalingPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetManagedScalingPolicyResponseReceivedHandler; 273 typedef std::function<void(const EMRClient*, const Model::GetStudioSessionMappingRequest&, const Model::GetStudioSessionMappingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetStudioSessionMappingResponseReceivedHandler; 274 typedef std::function<void(const EMRClient*, const Model::ListBootstrapActionsRequest&, const Model::ListBootstrapActionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBootstrapActionsResponseReceivedHandler; 275 typedef std::function<void(const EMRClient*, const Model::ListClustersRequest&, const Model::ListClustersOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListClustersResponseReceivedHandler; 276 typedef std::function<void(const EMRClient*, const Model::ListInstanceFleetsRequest&, const Model::ListInstanceFleetsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListInstanceFleetsResponseReceivedHandler; 277 typedef std::function<void(const EMRClient*, const Model::ListInstanceGroupsRequest&, const Model::ListInstanceGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListInstanceGroupsResponseReceivedHandler; 278 typedef std::function<void(const EMRClient*, const Model::ListInstancesRequest&, const Model::ListInstancesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListInstancesResponseReceivedHandler; 279 typedef std::function<void(const EMRClient*, const Model::ListNotebookExecutionsRequest&, const Model::ListNotebookExecutionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListNotebookExecutionsResponseReceivedHandler; 280 typedef std::function<void(const EMRClient*, const Model::ListReleaseLabelsRequest&, const Model::ListReleaseLabelsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListReleaseLabelsResponseReceivedHandler; 281 typedef std::function<void(const EMRClient*, const Model::ListSecurityConfigurationsRequest&, const Model::ListSecurityConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListSecurityConfigurationsResponseReceivedHandler; 282 typedef std::function<void(const EMRClient*, const Model::ListStepsRequest&, const Model::ListStepsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListStepsResponseReceivedHandler; 283 typedef std::function<void(const EMRClient*, const Model::ListStudioSessionMappingsRequest&, const Model::ListStudioSessionMappingsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListStudioSessionMappingsResponseReceivedHandler; 284 typedef std::function<void(const EMRClient*, const Model::ListStudiosRequest&, const Model::ListStudiosOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListStudiosResponseReceivedHandler; 285 typedef std::function<void(const EMRClient*, const Model::ModifyClusterRequest&, const Model::ModifyClusterOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyClusterResponseReceivedHandler; 286 typedef std::function<void(const EMRClient*, const Model::ModifyInstanceFleetRequest&, const Model::ModifyInstanceFleetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyInstanceFleetResponseReceivedHandler; 287 typedef std::function<void(const EMRClient*, const Model::ModifyInstanceGroupsRequest&, const Model::ModifyInstanceGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyInstanceGroupsResponseReceivedHandler; 288 typedef std::function<void(const EMRClient*, const Model::PutAutoScalingPolicyRequest&, const Model::PutAutoScalingPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutAutoScalingPolicyResponseReceivedHandler; 289 typedef std::function<void(const EMRClient*, const Model::PutAutoTerminationPolicyRequest&, const Model::PutAutoTerminationPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutAutoTerminationPolicyResponseReceivedHandler; 290 typedef std::function<void(const EMRClient*, const Model::PutBlockPublicAccessConfigurationRequest&, const Model::PutBlockPublicAccessConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBlockPublicAccessConfigurationResponseReceivedHandler; 291 typedef std::function<void(const EMRClient*, const Model::PutManagedScalingPolicyRequest&, const Model::PutManagedScalingPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutManagedScalingPolicyResponseReceivedHandler; 292 typedef std::function<void(const EMRClient*, const Model::RemoveAutoScalingPolicyRequest&, const Model::RemoveAutoScalingPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RemoveAutoScalingPolicyResponseReceivedHandler; 293 typedef std::function<void(const EMRClient*, const Model::RemoveAutoTerminationPolicyRequest&, const Model::RemoveAutoTerminationPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RemoveAutoTerminationPolicyResponseReceivedHandler; 294 typedef std::function<void(const EMRClient*, const Model::RemoveManagedScalingPolicyRequest&, const Model::RemoveManagedScalingPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RemoveManagedScalingPolicyResponseReceivedHandler; 295 typedef std::function<void(const EMRClient*, const Model::RemoveTagsRequest&, const Model::RemoveTagsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RemoveTagsResponseReceivedHandler; 296 typedef std::function<void(const EMRClient*, const Model::RunJobFlowRequest&, const Model::RunJobFlowOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RunJobFlowResponseReceivedHandler; 297 typedef std::function<void(const EMRClient*, const Model::SetTerminationProtectionRequest&, const Model::SetTerminationProtectionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SetTerminationProtectionResponseReceivedHandler; 298 typedef std::function<void(const EMRClient*, const Model::SetVisibleToAllUsersRequest&, const Model::SetVisibleToAllUsersOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SetVisibleToAllUsersResponseReceivedHandler; 299 typedef std::function<void(const EMRClient*, const Model::StartNotebookExecutionRequest&, const Model::StartNotebookExecutionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StartNotebookExecutionResponseReceivedHandler; 300 typedef std::function<void(const EMRClient*, const Model::StopNotebookExecutionRequest&, const Model::StopNotebookExecutionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StopNotebookExecutionResponseReceivedHandler; 301 typedef std::function<void(const EMRClient*, const Model::TerminateJobFlowsRequest&, const Model::TerminateJobFlowsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TerminateJobFlowsResponseReceivedHandler; 302 typedef std::function<void(const EMRClient*, const Model::UpdateStudioRequest&, const Model::UpdateStudioOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateStudioResponseReceivedHandler; 303 typedef std::function<void(const EMRClient*, const Model::UpdateStudioSessionMappingRequest&, const Model::UpdateStudioSessionMappingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateStudioSessionMappingResponseReceivedHandler; 304 305 /** 306 * <p>Amazon EMR is a web service that makes it easier to process large amounts of 307 * data efficiently. Amazon EMR uses Hadoop processing combined with several Amazon 308 * Web Services services to do tasks such as web indexing, data mining, log file 309 * analysis, machine learning, scientific simulation, and data warehouse 310 * management.</p> 311 */ 312 class AWS_EMR_API EMRClient : public Aws::Client::AWSJsonClient 313 { 314 public: 315 typedef Aws::Client::AWSJsonClient BASECLASS; 316 317 /** 318 * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config 319 * is not specified, it will be initialized to default values. 320 */ 321 EMRClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 322 323 /** 324 * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config 325 * is not specified, it will be initialized to default values. 326 */ 327 EMRClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 328 329 /** 330 * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, 331 * the default http client factory will be used 332 */ 333 EMRClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider, 334 const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 335 336 virtual ~EMRClient(); 337 338 339 /** 340 * <p>Adds an instance fleet to a running cluster.</p> <p>The instance fleet 341 * configuration is available only in Amazon EMR versions 4.8.0 and later, 342 * excluding 5.0.x.</p> <p><h3>See Also:</h3> <a 343 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet">AWS 344 * API Reference</a></p> 345 */ 346 virtual Model::AddInstanceFleetOutcome AddInstanceFleet(const Model::AddInstanceFleetRequest& request) const; 347 348 /** 349 * <p>Adds an instance fleet to a running cluster.</p> <p>The instance fleet 350 * configuration is available only in Amazon EMR versions 4.8.0 and later, 351 * excluding 5.0.x.</p> <p><h3>See Also:</h3> <a 352 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet">AWS 353 * API Reference</a></p> 354 * 355 * returns a future to the operation so that it can be executed in parallel to other requests. 356 */ 357 virtual Model::AddInstanceFleetOutcomeCallable AddInstanceFleetCallable(const Model::AddInstanceFleetRequest& request) const; 358 359 /** 360 * <p>Adds an instance fleet to a running cluster.</p> <p>The instance fleet 361 * configuration is available only in Amazon EMR versions 4.8.0 and later, 362 * excluding 5.0.x.</p> <p><h3>See Also:</h3> <a 363 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceFleet">AWS 364 * API Reference</a></p> 365 * 366 * Queues the request into a thread executor and triggers associated callback when operation has finished. 367 */ 368 virtual void AddInstanceFleetAsync(const Model::AddInstanceFleetRequest& request, const AddInstanceFleetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 369 370 /** 371 * <p>Adds one or more instance groups to a running cluster.</p><p><h3>See 372 * Also:</h3> <a 373 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups">AWS 374 * API Reference</a></p> 375 */ 376 virtual Model::AddInstanceGroupsOutcome AddInstanceGroups(const Model::AddInstanceGroupsRequest& request) const; 377 378 /** 379 * <p>Adds one or more instance groups to a running cluster.</p><p><h3>See 380 * Also:</h3> <a 381 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups">AWS 382 * API Reference</a></p> 383 * 384 * returns a future to the operation so that it can be executed in parallel to other requests. 385 */ 386 virtual Model::AddInstanceGroupsOutcomeCallable AddInstanceGroupsCallable(const Model::AddInstanceGroupsRequest& request) const; 387 388 /** 389 * <p>Adds one or more instance groups to a running cluster.</p><p><h3>See 390 * Also:</h3> <a 391 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddInstanceGroups">AWS 392 * API Reference</a></p> 393 * 394 * Queues the request into a thread executor and triggers associated callback when operation has finished. 395 */ 396 virtual void AddInstanceGroupsAsync(const Model::AddInstanceGroupsRequest& request, const AddInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 397 398 /** 399 * <p>AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 400 * are allowed in each job flow.</p> <p>If your cluster is long-running (such as a 401 * Hive data warehouse) or complex, you may require more than 256 steps to process 402 * your data. You can bypass the 256-step limitation in various ways, including 403 * using SSH to connect to the master node and submitting queries directly to the 404 * software running on the master node, such as Hive and Hadoop. For more 405 * information on how to do this, see <a 406 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 407 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 408 * Guide</i>.</p> <p>A step specifies the location of a JAR file stored either on 409 * the master node of the cluster or in Amazon S3. Each step is performed by the 410 * main function of the main class of the JAR file. The main class can be specified 411 * either in the manifest of the JAR or by using the MainFunction parameter of the 412 * step.</p> <p>Amazon EMR executes each step in the order listed. For a step to be 413 * considered complete, the main function must exit with a zero exit code and all 414 * Hadoop jobs started while the step was running must have completed and run 415 * successfully.</p> <p>You can only add steps to a cluster that is in one of the 416 * following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.</p><p><h3>See 417 * Also:</h3> <a 418 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps">AWS 419 * API Reference</a></p> 420 */ 421 virtual Model::AddJobFlowStepsOutcome AddJobFlowSteps(const Model::AddJobFlowStepsRequest& request) const; 422 423 /** 424 * <p>AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 425 * are allowed in each job flow.</p> <p>If your cluster is long-running (such as a 426 * Hive data warehouse) or complex, you may require more than 256 steps to process 427 * your data. You can bypass the 256-step limitation in various ways, including 428 * using SSH to connect to the master node and submitting queries directly to the 429 * software running on the master node, such as Hive and Hadoop. For more 430 * information on how to do this, see <a 431 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 432 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 433 * Guide</i>.</p> <p>A step specifies the location of a JAR file stored either on 434 * the master node of the cluster or in Amazon S3. Each step is performed by the 435 * main function of the main class of the JAR file. The main class can be specified 436 * either in the manifest of the JAR or by using the MainFunction parameter of the 437 * step.</p> <p>Amazon EMR executes each step in the order listed. For a step to be 438 * considered complete, the main function must exit with a zero exit code and all 439 * Hadoop jobs started while the step was running must have completed and run 440 * successfully.</p> <p>You can only add steps to a cluster that is in one of the 441 * following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.</p><p><h3>See 442 * Also:</h3> <a 443 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps">AWS 444 * API Reference</a></p> 445 * 446 * returns a future to the operation so that it can be executed in parallel to other requests. 447 */ 448 virtual Model::AddJobFlowStepsOutcomeCallable AddJobFlowStepsCallable(const Model::AddJobFlowStepsRequest& request) const; 449 450 /** 451 * <p>AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps 452 * are allowed in each job flow.</p> <p>If your cluster is long-running (such as a 453 * Hive data warehouse) or complex, you may require more than 256 steps to process 454 * your data. You can bypass the 256-step limitation in various ways, including 455 * using SSH to connect to the master node and submitting queries directly to the 456 * software running on the master node, such as Hive and Hadoop. For more 457 * information on how to do this, see <a 458 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 459 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 460 * Guide</i>.</p> <p>A step specifies the location of a JAR file stored either on 461 * the master node of the cluster or in Amazon S3. Each step is performed by the 462 * main function of the main class of the JAR file. The main class can be specified 463 * either in the manifest of the JAR or by using the MainFunction parameter of the 464 * step.</p> <p>Amazon EMR executes each step in the order listed. For a step to be 465 * considered complete, the main function must exit with a zero exit code and all 466 * Hadoop jobs started while the step was running must have completed and run 467 * successfully.</p> <p>You can only add steps to a cluster that is in one of the 468 * following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.</p><p><h3>See 469 * Also:</h3> <a 470 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddJobFlowSteps">AWS 471 * API Reference</a></p> 472 * 473 * Queues the request into a thread executor and triggers associated callback when operation has finished. 474 */ 475 virtual void AddJobFlowStepsAsync(const Model::AddJobFlowStepsRequest& request, const AddJobFlowStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 476 477 /** 478 * <p>Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR 479 * Studio. Tags make it easier to associate resources in various ways, such as 480 * grouping clusters to track your Amazon EMR resource allocation costs. For more 481 * information, see <a 482 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 483 * Clusters</a>. </p><p><h3>See Also:</h3> <a 484 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags">AWS 485 * API Reference</a></p> 486 */ 487 virtual Model::AddTagsOutcome AddTags(const Model::AddTagsRequest& request) const; 488 489 /** 490 * <p>Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR 491 * Studio. Tags make it easier to associate resources in various ways, such as 492 * grouping clusters to track your Amazon EMR resource allocation costs. For more 493 * information, see <a 494 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 495 * Clusters</a>. </p><p><h3>See Also:</h3> <a 496 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags">AWS 497 * API Reference</a></p> 498 * 499 * returns a future to the operation so that it can be executed in parallel to other requests. 500 */ 501 virtual Model::AddTagsOutcomeCallable AddTagsCallable(const Model::AddTagsRequest& request) const; 502 503 /** 504 * <p>Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR 505 * Studio. Tags make it easier to associate resources in various ways, such as 506 * grouping clusters to track your Amazon EMR resource allocation costs. For more 507 * information, see <a 508 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 509 * Clusters</a>. </p><p><h3>See Also:</h3> <a 510 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/AddTags">AWS 511 * API Reference</a></p> 512 * 513 * Queues the request into a thread executor and triggers associated callback when operation has finished. 514 */ 515 virtual void AddTagsAsync(const Model::AddTagsRequest& request, const AddTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 516 517 /** 518 * <p>Cancels a pending step or steps in a running cluster. Available only in 519 * Amazon EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 520 * steps are allowed in each CancelSteps request. CancelSteps is idempotent but 521 * asynchronous; it does not guarantee that a step will be canceled, even if the 522 * request is successfully submitted. When you use Amazon EMR versions 5.28.0 and 523 * later, you can cancel steps that are in a <code>PENDING</code> or 524 * <code>RUNNING</code> state. In earlier versions of Amazon EMR, you can only 525 * cancel steps that are in a <code>PENDING</code> state. </p><p><h3>See Also:</h3> 526 * <a 527 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps">AWS 528 * API Reference</a></p> 529 */ 530 virtual Model::CancelStepsOutcome CancelSteps(const Model::CancelStepsRequest& request) const; 531 532 /** 533 * <p>Cancels a pending step or steps in a running cluster. Available only in 534 * Amazon EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 535 * steps are allowed in each CancelSteps request. CancelSteps is idempotent but 536 * asynchronous; it does not guarantee that a step will be canceled, even if the 537 * request is successfully submitted. When you use Amazon EMR versions 5.28.0 and 538 * later, you can cancel steps that are in a <code>PENDING</code> or 539 * <code>RUNNING</code> state. In earlier versions of Amazon EMR, you can only 540 * cancel steps that are in a <code>PENDING</code> state. </p><p><h3>See Also:</h3> 541 * <a 542 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps">AWS 543 * API Reference</a></p> 544 * 545 * returns a future to the operation so that it can be executed in parallel to other requests. 546 */ 547 virtual Model::CancelStepsOutcomeCallable CancelStepsCallable(const Model::CancelStepsRequest& request) const; 548 549 /** 550 * <p>Cancels a pending step or steps in a running cluster. Available only in 551 * Amazon EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 552 * steps are allowed in each CancelSteps request. CancelSteps is idempotent but 553 * asynchronous; it does not guarantee that a step will be canceled, even if the 554 * request is successfully submitted. When you use Amazon EMR versions 5.28.0 and 555 * later, you can cancel steps that are in a <code>PENDING</code> or 556 * <code>RUNNING</code> state. In earlier versions of Amazon EMR, you can only 557 * cancel steps that are in a <code>PENDING</code> state. </p><p><h3>See Also:</h3> 558 * <a 559 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CancelSteps">AWS 560 * API Reference</a></p> 561 * 562 * Queues the request into a thread executor and triggers associated callback when operation has finished. 563 */ 564 virtual void CancelStepsAsync(const Model::CancelStepsRequest& request, const CancelStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 565 566 /** 567 * <p>Creates a security configuration, which is stored in the service and can be 568 * specified when a cluster is created.</p><p><h3>See Also:</h3> <a 569 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration">AWS 570 * API Reference</a></p> 571 */ 572 virtual Model::CreateSecurityConfigurationOutcome CreateSecurityConfiguration(const Model::CreateSecurityConfigurationRequest& request) const; 573 574 /** 575 * <p>Creates a security configuration, which is stored in the service and can be 576 * specified when a cluster is created.</p><p><h3>See Also:</h3> <a 577 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration">AWS 578 * API Reference</a></p> 579 * 580 * returns a future to the operation so that it can be executed in parallel to other requests. 581 */ 582 virtual Model::CreateSecurityConfigurationOutcomeCallable CreateSecurityConfigurationCallable(const Model::CreateSecurityConfigurationRequest& request) const; 583 584 /** 585 * <p>Creates a security configuration, which is stored in the service and can be 586 * specified when a cluster is created.</p><p><h3>See Also:</h3> <a 587 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateSecurityConfiguration">AWS 588 * API Reference</a></p> 589 * 590 * Queues the request into a thread executor and triggers associated callback when operation has finished. 591 */ 592 virtual void CreateSecurityConfigurationAsync(const Model::CreateSecurityConfigurationRequest& request, const CreateSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 593 594 /** 595 * <p>Creates a new Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 596 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio">AWS 597 * API Reference</a></p> 598 */ 599 virtual Model::CreateStudioOutcome CreateStudio(const Model::CreateStudioRequest& request) const; 600 601 /** 602 * <p>Creates a new Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 603 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio">AWS 604 * API Reference</a></p> 605 * 606 * returns a future to the operation so that it can be executed in parallel to other requests. 607 */ 608 virtual Model::CreateStudioOutcomeCallable CreateStudioCallable(const Model::CreateStudioRequest& request) const; 609 610 /** 611 * <p>Creates a new Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 612 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudio">AWS 613 * API Reference</a></p> 614 * 615 * Queues the request into a thread executor and triggers associated callback when operation has finished. 616 */ 617 virtual void CreateStudioAsync(const Model::CreateStudioRequest& request, const CreateStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 618 619 /** 620 * <p>Maps a user or group to the Amazon EMR Studio specified by 621 * <code>StudioId</code>, and applies a session policy to refine Studio permissions 622 * for that user or group. Use <code>CreateStudioSessionMapping</code> to assign 623 * users to a Studio when you use Amazon Web Services SSO authentication. For 624 * instructions on how to assign users to a Studio when you use IAM authentication, 625 * see <a 626 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-manage-users.html#emr-studio-assign-users-groups">Assign 627 * a user or group to your EMR Studio</a>.</p><p><h3>See Also:</h3> <a 628 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping">AWS 629 * API Reference</a></p> 630 */ 631 virtual Model::CreateStudioSessionMappingOutcome CreateStudioSessionMapping(const Model::CreateStudioSessionMappingRequest& request) const; 632 633 /** 634 * <p>Maps a user or group to the Amazon EMR Studio specified by 635 * <code>StudioId</code>, and applies a session policy to refine Studio permissions 636 * for that user or group. Use <code>CreateStudioSessionMapping</code> to assign 637 * users to a Studio when you use Amazon Web Services SSO authentication. For 638 * instructions on how to assign users to a Studio when you use IAM authentication, 639 * see <a 640 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-manage-users.html#emr-studio-assign-users-groups">Assign 641 * a user or group to your EMR Studio</a>.</p><p><h3>See Also:</h3> <a 642 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping">AWS 643 * API Reference</a></p> 644 * 645 * returns a future to the operation so that it can be executed in parallel to other requests. 646 */ 647 virtual Model::CreateStudioSessionMappingOutcomeCallable CreateStudioSessionMappingCallable(const Model::CreateStudioSessionMappingRequest& request) const; 648 649 /** 650 * <p>Maps a user or group to the Amazon EMR Studio specified by 651 * <code>StudioId</code>, and applies a session policy to refine Studio permissions 652 * for that user or group. Use <code>CreateStudioSessionMapping</code> to assign 653 * users to a Studio when you use Amazon Web Services SSO authentication. For 654 * instructions on how to assign users to a Studio when you use IAM authentication, 655 * see <a 656 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-manage-users.html#emr-studio-assign-users-groups">Assign 657 * a user or group to your EMR Studio</a>.</p><p><h3>See Also:</h3> <a 658 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMapping">AWS 659 * API Reference</a></p> 660 * 661 * Queues the request into a thread executor and triggers associated callback when operation has finished. 662 */ 663 virtual void CreateStudioSessionMappingAsync(const Model::CreateStudioSessionMappingRequest& request, const CreateStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 664 665 /** 666 * <p>Deletes a security configuration.</p><p><h3>See Also:</h3> <a 667 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration">AWS 668 * API Reference</a></p> 669 */ 670 virtual Model::DeleteSecurityConfigurationOutcome DeleteSecurityConfiguration(const Model::DeleteSecurityConfigurationRequest& request) const; 671 672 /** 673 * <p>Deletes a security configuration.</p><p><h3>See Also:</h3> <a 674 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration">AWS 675 * API Reference</a></p> 676 * 677 * returns a future to the operation so that it can be executed in parallel to other requests. 678 */ 679 virtual Model::DeleteSecurityConfigurationOutcomeCallable DeleteSecurityConfigurationCallable(const Model::DeleteSecurityConfigurationRequest& request) const; 680 681 /** 682 * <p>Deletes a security configuration.</p><p><h3>See Also:</h3> <a 683 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteSecurityConfiguration">AWS 684 * API Reference</a></p> 685 * 686 * Queues the request into a thread executor and triggers associated callback when operation has finished. 687 */ 688 virtual void DeleteSecurityConfigurationAsync(const Model::DeleteSecurityConfigurationRequest& request, const DeleteSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 689 690 /** 691 * <p>Removes an Amazon EMR Studio from the Studio metadata store.</p><p><h3>See 692 * Also:</h3> <a 693 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio">AWS 694 * API Reference</a></p> 695 */ 696 virtual Model::DeleteStudioOutcome DeleteStudio(const Model::DeleteStudioRequest& request) const; 697 698 /** 699 * <p>Removes an Amazon EMR Studio from the Studio metadata store.</p><p><h3>See 700 * Also:</h3> <a 701 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio">AWS 702 * API Reference</a></p> 703 * 704 * returns a future to the operation so that it can be executed in parallel to other requests. 705 */ 706 virtual Model::DeleteStudioOutcomeCallable DeleteStudioCallable(const Model::DeleteStudioRequest& request) const; 707 708 /** 709 * <p>Removes an Amazon EMR Studio from the Studio metadata store.</p><p><h3>See 710 * Also:</h3> <a 711 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudio">AWS 712 * API Reference</a></p> 713 * 714 * Queues the request into a thread executor and triggers associated callback when operation has finished. 715 */ 716 virtual void DeleteStudioAsync(const Model::DeleteStudioRequest& request, const DeleteStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 717 718 /** 719 * <p>Removes a user or group from an Amazon EMR Studio.</p><p><h3>See Also:</h3> 720 * <a 721 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping">AWS 722 * API Reference</a></p> 723 */ 724 virtual Model::DeleteStudioSessionMappingOutcome DeleteStudioSessionMapping(const Model::DeleteStudioSessionMappingRequest& request) const; 725 726 /** 727 * <p>Removes a user or group from an Amazon EMR Studio.</p><p><h3>See Also:</h3> 728 * <a 729 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping">AWS 730 * API Reference</a></p> 731 * 732 * returns a future to the operation so that it can be executed in parallel to other requests. 733 */ 734 virtual Model::DeleteStudioSessionMappingOutcomeCallable DeleteStudioSessionMappingCallable(const Model::DeleteStudioSessionMappingRequest& request) const; 735 736 /** 737 * <p>Removes a user or group from an Amazon EMR Studio.</p><p><h3>See Also:</h3> 738 * <a 739 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMapping">AWS 740 * API Reference</a></p> 741 * 742 * Queues the request into a thread executor and triggers associated callback when operation has finished. 743 */ 744 virtual void DeleteStudioSessionMappingAsync(const Model::DeleteStudioSessionMappingRequest& request, const DeleteStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 745 746 /** 747 * <p>Provides cluster-level details including status, hardware and software 748 * configuration, VPC settings, and so on.</p><p><h3>See Also:</h3> <a 749 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster">AWS 750 * API Reference</a></p> 751 */ 752 virtual Model::DescribeClusterOutcome DescribeCluster(const Model::DescribeClusterRequest& request) const; 753 754 /** 755 * <p>Provides cluster-level details including status, hardware and software 756 * configuration, VPC settings, and so on.</p><p><h3>See Also:</h3> <a 757 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster">AWS 758 * API Reference</a></p> 759 * 760 * returns a future to the operation so that it can be executed in parallel to other requests. 761 */ 762 virtual Model::DescribeClusterOutcomeCallable DescribeClusterCallable(const Model::DescribeClusterRequest& request) const; 763 764 /** 765 * <p>Provides cluster-level details including status, hardware and software 766 * configuration, VPC settings, and so on.</p><p><h3>See Also:</h3> <a 767 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeCluster">AWS 768 * API Reference</a></p> 769 * 770 * Queues the request into a thread executor and triggers associated callback when operation has finished. 771 */ 772 virtual void DescribeClusterAsync(const Model::DescribeClusterRequest& request, const DescribeClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 773 774 /** 775 * <p>Provides details of a notebook execution.</p><p><h3>See Also:</h3> <a 776 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution">AWS 777 * API Reference</a></p> 778 */ 779 virtual Model::DescribeNotebookExecutionOutcome DescribeNotebookExecution(const Model::DescribeNotebookExecutionRequest& request) const; 780 781 /** 782 * <p>Provides details of a notebook execution.</p><p><h3>See Also:</h3> <a 783 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution">AWS 784 * API Reference</a></p> 785 * 786 * returns a future to the operation so that it can be executed in parallel to other requests. 787 */ 788 virtual Model::DescribeNotebookExecutionOutcomeCallable DescribeNotebookExecutionCallable(const Model::DescribeNotebookExecutionRequest& request) const; 789 790 /** 791 * <p>Provides details of a notebook execution.</p><p><h3>See Also:</h3> <a 792 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeNotebookExecution">AWS 793 * API Reference</a></p> 794 * 795 * Queues the request into a thread executor and triggers associated callback when operation has finished. 796 */ 797 virtual void DescribeNotebookExecutionAsync(const Model::DescribeNotebookExecutionRequest& request, const DescribeNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 798 799 /** 800 * <p>Provides EMR release label details, such as releases available the region 801 * where the API request is run, and the available applications for a specific EMR 802 * release label. Can also list EMR release versions that support a specified 803 * version of Spark.</p><p><h3>See Also:</h3> <a 804 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel">AWS 805 * API Reference</a></p> 806 */ 807 virtual Model::DescribeReleaseLabelOutcome DescribeReleaseLabel(const Model::DescribeReleaseLabelRequest& request) const; 808 809 /** 810 * <p>Provides EMR release label details, such as releases available the region 811 * where the API request is run, and the available applications for a specific EMR 812 * release label. Can also list EMR release versions that support a specified 813 * version of Spark.</p><p><h3>See Also:</h3> <a 814 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel">AWS 815 * API Reference</a></p> 816 * 817 * returns a future to the operation so that it can be executed in parallel to other requests. 818 */ 819 virtual Model::DescribeReleaseLabelOutcomeCallable DescribeReleaseLabelCallable(const Model::DescribeReleaseLabelRequest& request) const; 820 821 /** 822 * <p>Provides EMR release label details, such as releases available the region 823 * where the API request is run, and the available applications for a specific EMR 824 * release label. Can also list EMR release versions that support a specified 825 * version of Spark.</p><p><h3>See Also:</h3> <a 826 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeReleaseLabel">AWS 827 * API Reference</a></p> 828 * 829 * Queues the request into a thread executor and triggers associated callback when operation has finished. 830 */ 831 virtual void DescribeReleaseLabelAsync(const Model::DescribeReleaseLabelRequest& request, const DescribeReleaseLabelResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 832 833 /** 834 * <p>Provides the details of a security configuration by returning the 835 * configuration JSON.</p><p><h3>See Also:</h3> <a 836 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration">AWS 837 * API Reference</a></p> 838 */ 839 virtual Model::DescribeSecurityConfigurationOutcome DescribeSecurityConfiguration(const Model::DescribeSecurityConfigurationRequest& request) const; 840 841 /** 842 * <p>Provides the details of a security configuration by returning the 843 * configuration JSON.</p><p><h3>See Also:</h3> <a 844 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration">AWS 845 * API Reference</a></p> 846 * 847 * returns a future to the operation so that it can be executed in parallel to other requests. 848 */ 849 virtual Model::DescribeSecurityConfigurationOutcomeCallable DescribeSecurityConfigurationCallable(const Model::DescribeSecurityConfigurationRequest& request) const; 850 851 /** 852 * <p>Provides the details of a security configuration by returning the 853 * configuration JSON.</p><p><h3>See Also:</h3> <a 854 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeSecurityConfiguration">AWS 855 * API Reference</a></p> 856 * 857 * Queues the request into a thread executor and triggers associated callback when operation has finished. 858 */ 859 virtual void DescribeSecurityConfigurationAsync(const Model::DescribeSecurityConfigurationRequest& request, const DescribeSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 860 861 /** 862 * <p>Provides more detail about the cluster step.</p><p><h3>See Also:</h3> <a 863 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep">AWS 864 * API Reference</a></p> 865 */ 866 virtual Model::DescribeStepOutcome DescribeStep(const Model::DescribeStepRequest& request) const; 867 868 /** 869 * <p>Provides more detail about the cluster step.</p><p><h3>See Also:</h3> <a 870 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep">AWS 871 * API Reference</a></p> 872 * 873 * returns a future to the operation so that it can be executed in parallel to other requests. 874 */ 875 virtual Model::DescribeStepOutcomeCallable DescribeStepCallable(const Model::DescribeStepRequest& request) const; 876 877 /** 878 * <p>Provides more detail about the cluster step.</p><p><h3>See Also:</h3> <a 879 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStep">AWS 880 * API Reference</a></p> 881 * 882 * Queues the request into a thread executor and triggers associated callback when operation has finished. 883 */ 884 virtual void DescribeStepAsync(const Model::DescribeStepRequest& request, const DescribeStepResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 885 886 /** 887 * <p>Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 888 * Studio access URL, and so on.</p><p><h3>See Also:</h3> <a 889 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio">AWS 890 * API Reference</a></p> 891 */ 892 virtual Model::DescribeStudioOutcome DescribeStudio(const Model::DescribeStudioRequest& request) const; 893 894 /** 895 * <p>Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 896 * Studio access URL, and so on.</p><p><h3>See Also:</h3> <a 897 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio">AWS 898 * API Reference</a></p> 899 * 900 * returns a future to the operation so that it can be executed in parallel to other requests. 901 */ 902 virtual Model::DescribeStudioOutcomeCallable DescribeStudioCallable(const Model::DescribeStudioRequest& request) const; 903 904 /** 905 * <p>Returns details for the specified Amazon EMR Studio including ID, Name, VPC, 906 * Studio access URL, and so on.</p><p><h3>See Also:</h3> <a 907 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudio">AWS 908 * API Reference</a></p> 909 * 910 * Queues the request into a thread executor and triggers associated callback when operation has finished. 911 */ 912 virtual void DescribeStudioAsync(const Model::DescribeStudioRequest& request, const DescribeStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 913 914 /** 915 * <p>Returns the auto-termination policy for an Amazon EMR cluster.</p><p><h3>See 916 * Also:</h3> <a 917 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy">AWS 918 * API Reference</a></p> 919 */ 920 virtual Model::GetAutoTerminationPolicyOutcome GetAutoTerminationPolicy(const Model::GetAutoTerminationPolicyRequest& request) const; 921 922 /** 923 * <p>Returns the auto-termination policy for an Amazon EMR cluster.</p><p><h3>See 924 * Also:</h3> <a 925 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy">AWS 926 * API Reference</a></p> 927 * 928 * returns a future to the operation so that it can be executed in parallel to other requests. 929 */ 930 virtual Model::GetAutoTerminationPolicyOutcomeCallable GetAutoTerminationPolicyCallable(const Model::GetAutoTerminationPolicyRequest& request) const; 931 932 /** 933 * <p>Returns the auto-termination policy for an Amazon EMR cluster.</p><p><h3>See 934 * Also:</h3> <a 935 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetAutoTerminationPolicy">AWS 936 * API Reference</a></p> 937 * 938 * Queues the request into a thread executor and triggers associated callback when operation has finished. 939 */ 940 virtual void GetAutoTerminationPolicyAsync(const Model::GetAutoTerminationPolicyRequest& request, const GetAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 941 942 /** 943 * <p>Returns the Amazon EMR block public access configuration for your Amazon Web 944 * Services account in the current Region. For more information see <a 945 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 946 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 947 * Guide</i>.</p><p><h3>See Also:</h3> <a 948 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration">AWS 949 * API Reference</a></p> 950 */ 951 virtual Model::GetBlockPublicAccessConfigurationOutcome GetBlockPublicAccessConfiguration(const Model::GetBlockPublicAccessConfigurationRequest& request) const; 952 953 /** 954 * <p>Returns the Amazon EMR block public access configuration for your Amazon Web 955 * Services account in the current Region. For more information see <a 956 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 957 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 958 * Guide</i>.</p><p><h3>See Also:</h3> <a 959 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration">AWS 960 * API Reference</a></p> 961 * 962 * returns a future to the operation so that it can be executed in parallel to other requests. 963 */ 964 virtual Model::GetBlockPublicAccessConfigurationOutcomeCallable GetBlockPublicAccessConfigurationCallable(const Model::GetBlockPublicAccessConfigurationRequest& request) const; 965 966 /** 967 * <p>Returns the Amazon EMR block public access configuration for your Amazon Web 968 * Services account in the current Region. For more information see <a 969 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 970 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 971 * Guide</i>.</p><p><h3>See Also:</h3> <a 972 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetBlockPublicAccessConfiguration">AWS 973 * API Reference</a></p> 974 * 975 * Queues the request into a thread executor and triggers associated callback when operation has finished. 976 */ 977 virtual void GetBlockPublicAccessConfigurationAsync(const Model::GetBlockPublicAccessConfigurationRequest& request, const GetBlockPublicAccessConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 978 979 /** 980 * <p>Fetches the attached managed scaling policy for an Amazon EMR cluster. 981 * </p><p><h3>See Also:</h3> <a 982 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy">AWS 983 * API Reference</a></p> 984 */ 985 virtual Model::GetManagedScalingPolicyOutcome GetManagedScalingPolicy(const Model::GetManagedScalingPolicyRequest& request) const; 986 987 /** 988 * <p>Fetches the attached managed scaling policy for an Amazon EMR cluster. 989 * </p><p><h3>See Also:</h3> <a 990 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy">AWS 991 * API Reference</a></p> 992 * 993 * returns a future to the operation so that it can be executed in parallel to other requests. 994 */ 995 virtual Model::GetManagedScalingPolicyOutcomeCallable GetManagedScalingPolicyCallable(const Model::GetManagedScalingPolicyRequest& request) const; 996 997 /** 998 * <p>Fetches the attached managed scaling policy for an Amazon EMR cluster. 999 * </p><p><h3>See Also:</h3> <a 1000 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetManagedScalingPolicy">AWS 1001 * API Reference</a></p> 1002 * 1003 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1004 */ 1005 virtual void GetManagedScalingPolicyAsync(const Model::GetManagedScalingPolicyRequest& request, const GetManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1006 1007 /** 1008 * <p>Fetches mapping details for the specified Amazon EMR Studio and identity 1009 * (user or group).</p><p><h3>See Also:</h3> <a 1010 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping">AWS 1011 * API Reference</a></p> 1012 */ 1013 virtual Model::GetStudioSessionMappingOutcome GetStudioSessionMapping(const Model::GetStudioSessionMappingRequest& request) const; 1014 1015 /** 1016 * <p>Fetches mapping details for the specified Amazon EMR Studio and identity 1017 * (user or group).</p><p><h3>See Also:</h3> <a 1018 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping">AWS 1019 * API Reference</a></p> 1020 * 1021 * returns a future to the operation so that it can be executed in parallel to other requests. 1022 */ 1023 virtual Model::GetStudioSessionMappingOutcomeCallable GetStudioSessionMappingCallable(const Model::GetStudioSessionMappingRequest& request) const; 1024 1025 /** 1026 * <p>Fetches mapping details for the specified Amazon EMR Studio and identity 1027 * (user or group).</p><p><h3>See Also:</h3> <a 1028 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMapping">AWS 1029 * API Reference</a></p> 1030 * 1031 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1032 */ 1033 virtual void GetStudioSessionMappingAsync(const Model::GetStudioSessionMappingRequest& request, const GetStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1034 1035 /** 1036 * <p>Provides information about the bootstrap actions associated with a 1037 * cluster.</p><p><h3>See Also:</h3> <a 1038 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions">AWS 1039 * API Reference</a></p> 1040 */ 1041 virtual Model::ListBootstrapActionsOutcome ListBootstrapActions(const Model::ListBootstrapActionsRequest& request) const; 1042 1043 /** 1044 * <p>Provides information about the bootstrap actions associated with a 1045 * cluster.</p><p><h3>See Also:</h3> <a 1046 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions">AWS 1047 * API Reference</a></p> 1048 * 1049 * returns a future to the operation so that it can be executed in parallel to other requests. 1050 */ 1051 virtual Model::ListBootstrapActionsOutcomeCallable ListBootstrapActionsCallable(const Model::ListBootstrapActionsRequest& request) const; 1052 1053 /** 1054 * <p>Provides information about the bootstrap actions associated with a 1055 * cluster.</p><p><h3>See Also:</h3> <a 1056 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListBootstrapActions">AWS 1057 * API Reference</a></p> 1058 * 1059 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1060 */ 1061 virtual void ListBootstrapActionsAsync(const Model::ListBootstrapActionsRequest& request, const ListBootstrapActionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1062 1063 /** 1064 * <p>Provides the status of all clusters visible to this Amazon Web Services 1065 * account. Allows you to filter the list of clusters based on certain criteria; 1066 * for example, filtering by cluster creation date and time or by status. This call 1067 * returns a maximum of 50 clusters in unsorted order per call, but returns a 1068 * marker to track the paging of the cluster list across multiple ListClusters 1069 * calls.</p><p><h3>See Also:</h3> <a 1070 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters">AWS 1071 * API Reference</a></p> 1072 */ 1073 virtual Model::ListClustersOutcome ListClusters(const Model::ListClustersRequest& request) const; 1074 1075 /** 1076 * <p>Provides the status of all clusters visible to this Amazon Web Services 1077 * account. Allows you to filter the list of clusters based on certain criteria; 1078 * for example, filtering by cluster creation date and time or by status. This call 1079 * returns a maximum of 50 clusters in unsorted order per call, but returns a 1080 * marker to track the paging of the cluster list across multiple ListClusters 1081 * calls.</p><p><h3>See Also:</h3> <a 1082 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters">AWS 1083 * API Reference</a></p> 1084 * 1085 * returns a future to the operation so that it can be executed in parallel to other requests. 1086 */ 1087 virtual Model::ListClustersOutcomeCallable ListClustersCallable(const Model::ListClustersRequest& request) const; 1088 1089 /** 1090 * <p>Provides the status of all clusters visible to this Amazon Web Services 1091 * account. Allows you to filter the list of clusters based on certain criteria; 1092 * for example, filtering by cluster creation date and time or by status. This call 1093 * returns a maximum of 50 clusters in unsorted order per call, but returns a 1094 * marker to track the paging of the cluster list across multiple ListClusters 1095 * calls.</p><p><h3>See Also:</h3> <a 1096 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListClusters">AWS 1097 * API Reference</a></p> 1098 * 1099 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1100 */ 1101 virtual void ListClustersAsync(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1102 1103 /** 1104 * <p>Lists all available details about the instance fleets in a cluster.</p> 1105 * <p>The instance fleet configuration is available only in Amazon EMR 1106 * versions 4.8.0 and later, excluding 5.0.x versions.</p> <p><h3>See 1107 * Also:</h3> <a 1108 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets">AWS 1109 * API Reference</a></p> 1110 */ 1111 virtual Model::ListInstanceFleetsOutcome ListInstanceFleets(const Model::ListInstanceFleetsRequest& request) const; 1112 1113 /** 1114 * <p>Lists all available details about the instance fleets in a cluster.</p> 1115 * <p>The instance fleet configuration is available only in Amazon EMR 1116 * versions 4.8.0 and later, excluding 5.0.x versions.</p> <p><h3>See 1117 * Also:</h3> <a 1118 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets">AWS 1119 * API Reference</a></p> 1120 * 1121 * returns a future to the operation so that it can be executed in parallel to other requests. 1122 */ 1123 virtual Model::ListInstanceFleetsOutcomeCallable ListInstanceFleetsCallable(const Model::ListInstanceFleetsRequest& request) const; 1124 1125 /** 1126 * <p>Lists all available details about the instance fleets in a cluster.</p> 1127 * <p>The instance fleet configuration is available only in Amazon EMR 1128 * versions 4.8.0 and later, excluding 5.0.x versions.</p> <p><h3>See 1129 * Also:</h3> <a 1130 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceFleets">AWS 1131 * API Reference</a></p> 1132 * 1133 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1134 */ 1135 virtual void ListInstanceFleetsAsync(const Model::ListInstanceFleetsRequest& request, const ListInstanceFleetsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1136 1137 /** 1138 * <p>Provides all available details about the instance groups in a 1139 * cluster.</p><p><h3>See Also:</h3> <a 1140 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups">AWS 1141 * API Reference</a></p> 1142 */ 1143 virtual Model::ListInstanceGroupsOutcome ListInstanceGroups(const Model::ListInstanceGroupsRequest& request) const; 1144 1145 /** 1146 * <p>Provides all available details about the instance groups in a 1147 * cluster.</p><p><h3>See Also:</h3> <a 1148 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups">AWS 1149 * API Reference</a></p> 1150 * 1151 * returns a future to the operation so that it can be executed in parallel to other requests. 1152 */ 1153 virtual Model::ListInstanceGroupsOutcomeCallable ListInstanceGroupsCallable(const Model::ListInstanceGroupsRequest& request) const; 1154 1155 /** 1156 * <p>Provides all available details about the instance groups in a 1157 * cluster.</p><p><h3>See Also:</h3> <a 1158 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstanceGroups">AWS 1159 * API Reference</a></p> 1160 * 1161 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1162 */ 1163 virtual void ListInstanceGroupsAsync(const Model::ListInstanceGroupsRequest& request, const ListInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1164 1165 /** 1166 * <p>Provides information for all active EC2 instances and EC2 instances 1167 * terminated in the last 30 days, up to a maximum of 2,000. EC2 instances in any 1168 * of the following states are considered active: AWAITING_FULFILLMENT, 1169 * PROVISIONING, BOOTSTRAPPING, RUNNING.</p><p><h3>See Also:</h3> <a 1170 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances">AWS 1171 * API Reference</a></p> 1172 */ 1173 virtual Model::ListInstancesOutcome ListInstances(const Model::ListInstancesRequest& request) const; 1174 1175 /** 1176 * <p>Provides information for all active EC2 instances and EC2 instances 1177 * terminated in the last 30 days, up to a maximum of 2,000. EC2 instances in any 1178 * of the following states are considered active: AWAITING_FULFILLMENT, 1179 * PROVISIONING, BOOTSTRAPPING, RUNNING.</p><p><h3>See Also:</h3> <a 1180 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances">AWS 1181 * API Reference</a></p> 1182 * 1183 * returns a future to the operation so that it can be executed in parallel to other requests. 1184 */ 1185 virtual Model::ListInstancesOutcomeCallable ListInstancesCallable(const Model::ListInstancesRequest& request) const; 1186 1187 /** 1188 * <p>Provides information for all active EC2 instances and EC2 instances 1189 * terminated in the last 30 days, up to a maximum of 2,000. EC2 instances in any 1190 * of the following states are considered active: AWAITING_FULFILLMENT, 1191 * PROVISIONING, BOOTSTRAPPING, RUNNING.</p><p><h3>See Also:</h3> <a 1192 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListInstances">AWS 1193 * API Reference</a></p> 1194 * 1195 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1196 */ 1197 virtual void ListInstancesAsync(const Model::ListInstancesRequest& request, const ListInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1198 1199 /** 1200 * <p>Provides summaries of all notebook executions. You can filter the list based 1201 * on multiple criteria such as status, time range, and editor id. Returns a 1202 * maximum of 50 notebook executions and a marker to track the paging of a longer 1203 * notebook execution list across multiple <code>ListNotebookExecution</code> 1204 * calls.</p><p><h3>See Also:</h3> <a 1205 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions">AWS 1206 * API Reference</a></p> 1207 */ 1208 virtual Model::ListNotebookExecutionsOutcome ListNotebookExecutions(const Model::ListNotebookExecutionsRequest& request) const; 1209 1210 /** 1211 * <p>Provides summaries of all notebook executions. You can filter the list based 1212 * on multiple criteria such as status, time range, and editor id. Returns a 1213 * maximum of 50 notebook executions and a marker to track the paging of a longer 1214 * notebook execution list across multiple <code>ListNotebookExecution</code> 1215 * calls.</p><p><h3>See Also:</h3> <a 1216 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions">AWS 1217 * API Reference</a></p> 1218 * 1219 * returns a future to the operation so that it can be executed in parallel to other requests. 1220 */ 1221 virtual Model::ListNotebookExecutionsOutcomeCallable ListNotebookExecutionsCallable(const Model::ListNotebookExecutionsRequest& request) const; 1222 1223 /** 1224 * <p>Provides summaries of all notebook executions. You can filter the list based 1225 * on multiple criteria such as status, time range, and editor id. Returns a 1226 * maximum of 50 notebook executions and a marker to track the paging of a longer 1227 * notebook execution list across multiple <code>ListNotebookExecution</code> 1228 * calls.</p><p><h3>See Also:</h3> <a 1229 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListNotebookExecutions">AWS 1230 * API Reference</a></p> 1231 * 1232 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1233 */ 1234 virtual void ListNotebookExecutionsAsync(const Model::ListNotebookExecutionsRequest& request, const ListNotebookExecutionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1235 1236 /** 1237 * <p>Retrieves release labels of EMR services in the region where the API is 1238 * called.</p><p><h3>See Also:</h3> <a 1239 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels">AWS 1240 * API Reference</a></p> 1241 */ 1242 virtual Model::ListReleaseLabelsOutcome ListReleaseLabels(const Model::ListReleaseLabelsRequest& request) const; 1243 1244 /** 1245 * <p>Retrieves release labels of EMR services in the region where the API is 1246 * called.</p><p><h3>See Also:</h3> <a 1247 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels">AWS 1248 * API Reference</a></p> 1249 * 1250 * returns a future to the operation so that it can be executed in parallel to other requests. 1251 */ 1252 virtual Model::ListReleaseLabelsOutcomeCallable ListReleaseLabelsCallable(const Model::ListReleaseLabelsRequest& request) const; 1253 1254 /** 1255 * <p>Retrieves release labels of EMR services in the region where the API is 1256 * called.</p><p><h3>See Also:</h3> <a 1257 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListReleaseLabels">AWS 1258 * API Reference</a></p> 1259 * 1260 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1261 */ 1262 virtual void ListReleaseLabelsAsync(const Model::ListReleaseLabelsRequest& request, const ListReleaseLabelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1263 1264 /** 1265 * <p>Lists all the security configurations visible to this account, providing 1266 * their creation dates and times, and their names. This call returns a maximum of 1267 * 50 clusters per call, but returns a marker to track the paging of the cluster 1268 * list across multiple ListSecurityConfigurations calls.</p><p><h3>See Also:</h3> 1269 * <a 1270 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations">AWS 1271 * API Reference</a></p> 1272 */ 1273 virtual Model::ListSecurityConfigurationsOutcome ListSecurityConfigurations(const Model::ListSecurityConfigurationsRequest& request) const; 1274 1275 /** 1276 * <p>Lists all the security configurations visible to this account, providing 1277 * their creation dates and times, and their names. This call returns a maximum of 1278 * 50 clusters per call, but returns a marker to track the paging of the cluster 1279 * list across multiple ListSecurityConfigurations calls.</p><p><h3>See Also:</h3> 1280 * <a 1281 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations">AWS 1282 * API Reference</a></p> 1283 * 1284 * returns a future to the operation so that it can be executed in parallel to other requests. 1285 */ 1286 virtual Model::ListSecurityConfigurationsOutcomeCallable ListSecurityConfigurationsCallable(const Model::ListSecurityConfigurationsRequest& request) const; 1287 1288 /** 1289 * <p>Lists all the security configurations visible to this account, providing 1290 * their creation dates and times, and their names. This call returns a maximum of 1291 * 50 clusters per call, but returns a marker to track the paging of the cluster 1292 * list across multiple ListSecurityConfigurations calls.</p><p><h3>See Also:</h3> 1293 * <a 1294 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSecurityConfigurations">AWS 1295 * API Reference</a></p> 1296 * 1297 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1298 */ 1299 virtual void ListSecurityConfigurationsAsync(const Model::ListSecurityConfigurationsRequest& request, const ListSecurityConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1300 1301 /** 1302 * <p>Provides a list of steps for the cluster in reverse order unless you specify 1303 * <code>stepIds</code> with the request or filter by <code>StepStates</code>. You 1304 * can specify a maximum of 10 <code>stepIDs</code>. The CLI automatically 1305 * paginates results to return a list greater than 50 steps. To return more than 50 1306 * steps using the CLI, specify a <code>Marker</code>, which is a pagination token 1307 * that indicates the next set of steps to retrieve.</p><p><h3>See Also:</h3> <a 1308 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps">AWS 1309 * API Reference</a></p> 1310 */ 1311 virtual Model::ListStepsOutcome ListSteps(const Model::ListStepsRequest& request) const; 1312 1313 /** 1314 * <p>Provides a list of steps for the cluster in reverse order unless you specify 1315 * <code>stepIds</code> with the request or filter by <code>StepStates</code>. You 1316 * can specify a maximum of 10 <code>stepIDs</code>. The CLI automatically 1317 * paginates results to return a list greater than 50 steps. To return more than 50 1318 * steps using the CLI, specify a <code>Marker</code>, which is a pagination token 1319 * that indicates the next set of steps to retrieve.</p><p><h3>See Also:</h3> <a 1320 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps">AWS 1321 * API Reference</a></p> 1322 * 1323 * returns a future to the operation so that it can be executed in parallel to other requests. 1324 */ 1325 virtual Model::ListStepsOutcomeCallable ListStepsCallable(const Model::ListStepsRequest& request) const; 1326 1327 /** 1328 * <p>Provides a list of steps for the cluster in reverse order unless you specify 1329 * <code>stepIds</code> with the request or filter by <code>StepStates</code>. You 1330 * can specify a maximum of 10 <code>stepIDs</code>. The CLI automatically 1331 * paginates results to return a list greater than 50 steps. To return more than 50 1332 * steps using the CLI, specify a <code>Marker</code>, which is a pagination token 1333 * that indicates the next set of steps to retrieve.</p><p><h3>See Also:</h3> <a 1334 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListSteps">AWS 1335 * API Reference</a></p> 1336 * 1337 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1338 */ 1339 virtual void ListStepsAsync(const Model::ListStepsRequest& request, const ListStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1340 1341 /** 1342 * <p>Returns a list of all user or group session mappings for the Amazon EMR 1343 * Studio specified by <code>StudioId</code>.</p><p><h3>See Also:</h3> <a 1344 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings">AWS 1345 * API Reference</a></p> 1346 */ 1347 virtual Model::ListStudioSessionMappingsOutcome ListStudioSessionMappings(const Model::ListStudioSessionMappingsRequest& request) const; 1348 1349 /** 1350 * <p>Returns a list of all user or group session mappings for the Amazon EMR 1351 * Studio specified by <code>StudioId</code>.</p><p><h3>See Also:</h3> <a 1352 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings">AWS 1353 * API Reference</a></p> 1354 * 1355 * returns a future to the operation so that it can be executed in parallel to other requests. 1356 */ 1357 virtual Model::ListStudioSessionMappingsOutcomeCallable ListStudioSessionMappingsCallable(const Model::ListStudioSessionMappingsRequest& request) const; 1358 1359 /** 1360 * <p>Returns a list of all user or group session mappings for the Amazon EMR 1361 * Studio specified by <code>StudioId</code>.</p><p><h3>See Also:</h3> <a 1362 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappings">AWS 1363 * API Reference</a></p> 1364 * 1365 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1366 */ 1367 virtual void ListStudioSessionMappingsAsync(const Model::ListStudioSessionMappingsRequest& request, const ListStudioSessionMappingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1368 1369 /** 1370 * <p>Returns a list of all Amazon EMR Studios associated with the Amazon Web 1371 * Services account. The list includes details such as ID, Studio Access URL, and 1372 * creation time for each Studio.</p><p><h3>See Also:</h3> <a 1373 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios">AWS 1374 * API Reference</a></p> 1375 */ 1376 virtual Model::ListStudiosOutcome ListStudios(const Model::ListStudiosRequest& request) const; 1377 1378 /** 1379 * <p>Returns a list of all Amazon EMR Studios associated with the Amazon Web 1380 * Services account. The list includes details such as ID, Studio Access URL, and 1381 * creation time for each Studio.</p><p><h3>See Also:</h3> <a 1382 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios">AWS 1383 * API Reference</a></p> 1384 * 1385 * returns a future to the operation so that it can be executed in parallel to other requests. 1386 */ 1387 virtual Model::ListStudiosOutcomeCallable ListStudiosCallable(const Model::ListStudiosRequest& request) const; 1388 1389 /** 1390 * <p>Returns a list of all Amazon EMR Studios associated with the Amazon Web 1391 * Services account. The list includes details such as ID, Studio Access URL, and 1392 * creation time for each Studio.</p><p><h3>See Also:</h3> <a 1393 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudios">AWS 1394 * API Reference</a></p> 1395 * 1396 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1397 */ 1398 virtual void ListStudiosAsync(const Model::ListStudiosRequest& request, const ListStudiosResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1399 1400 /** 1401 * <p>Modifies the number of steps that can be executed concurrently for the 1402 * cluster specified using ClusterID.</p><p><h3>See Also:</h3> <a 1403 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster">AWS 1404 * API Reference</a></p> 1405 */ 1406 virtual Model::ModifyClusterOutcome ModifyCluster(const Model::ModifyClusterRequest& request) const; 1407 1408 /** 1409 * <p>Modifies the number of steps that can be executed concurrently for the 1410 * cluster specified using ClusterID.</p><p><h3>See Also:</h3> <a 1411 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster">AWS 1412 * API Reference</a></p> 1413 * 1414 * returns a future to the operation so that it can be executed in parallel to other requests. 1415 */ 1416 virtual Model::ModifyClusterOutcomeCallable ModifyClusterCallable(const Model::ModifyClusterRequest& request) const; 1417 1418 /** 1419 * <p>Modifies the number of steps that can be executed concurrently for the 1420 * cluster specified using ClusterID.</p><p><h3>See Also:</h3> <a 1421 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyCluster">AWS 1422 * API Reference</a></p> 1423 * 1424 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1425 */ 1426 virtual void ModifyClusterAsync(const Model::ModifyClusterRequest& request, const ModifyClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1427 1428 /** 1429 * <p>Modifies the target On-Demand and target Spot capacities for the instance 1430 * fleet with the specified InstanceFleetID within the cluster specified using 1431 * ClusterID. The call either succeeds or fails atomically.</p> <p>The 1432 * instance fleet configuration is available only in Amazon EMR versions 4.8.0 and 1433 * later, excluding 5.0.x versions.</p> <p><h3>See Also:</h3> <a 1434 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet">AWS 1435 * API Reference</a></p> 1436 */ 1437 virtual Model::ModifyInstanceFleetOutcome ModifyInstanceFleet(const Model::ModifyInstanceFleetRequest& request) const; 1438 1439 /** 1440 * <p>Modifies the target On-Demand and target Spot capacities for the instance 1441 * fleet with the specified InstanceFleetID within the cluster specified using 1442 * ClusterID. The call either succeeds or fails atomically.</p> <p>The 1443 * instance fleet configuration is available only in Amazon EMR versions 4.8.0 and 1444 * later, excluding 5.0.x versions.</p> <p><h3>See Also:</h3> <a 1445 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet">AWS 1446 * API Reference</a></p> 1447 * 1448 * returns a future to the operation so that it can be executed in parallel to other requests. 1449 */ 1450 virtual Model::ModifyInstanceFleetOutcomeCallable ModifyInstanceFleetCallable(const Model::ModifyInstanceFleetRequest& request) const; 1451 1452 /** 1453 * <p>Modifies the target On-Demand and target Spot capacities for the instance 1454 * fleet with the specified InstanceFleetID within the cluster specified using 1455 * ClusterID. The call either succeeds or fails atomically.</p> <p>The 1456 * instance fleet configuration is available only in Amazon EMR versions 4.8.0 and 1457 * later, excluding 5.0.x versions.</p> <p><h3>See Also:</h3> <a 1458 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceFleet">AWS 1459 * API Reference</a></p> 1460 * 1461 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1462 */ 1463 virtual void ModifyInstanceFleetAsync(const Model::ModifyInstanceFleetRequest& request, const ModifyInstanceFleetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1464 1465 /** 1466 * <p>ModifyInstanceGroups modifies the number of nodes and configuration settings 1467 * of an instance group. The input parameters include the new target instance count 1468 * for the group and the instance group ID. The call will either succeed or fail 1469 * atomically.</p><p><h3>See Also:</h3> <a 1470 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups">AWS 1471 * API Reference</a></p> 1472 */ 1473 virtual Model::ModifyInstanceGroupsOutcome ModifyInstanceGroups(const Model::ModifyInstanceGroupsRequest& request) const; 1474 1475 /** 1476 * <p>ModifyInstanceGroups modifies the number of nodes and configuration settings 1477 * of an instance group. The input parameters include the new target instance count 1478 * for the group and the instance group ID. The call will either succeed or fail 1479 * atomically.</p><p><h3>See Also:</h3> <a 1480 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups">AWS 1481 * API Reference</a></p> 1482 * 1483 * returns a future to the operation so that it can be executed in parallel to other requests. 1484 */ 1485 virtual Model::ModifyInstanceGroupsOutcomeCallable ModifyInstanceGroupsCallable(const Model::ModifyInstanceGroupsRequest& request) const; 1486 1487 /** 1488 * <p>ModifyInstanceGroups modifies the number of nodes and configuration settings 1489 * of an instance group. The input parameters include the new target instance count 1490 * for the group and the instance group ID. The call will either succeed or fail 1491 * atomically.</p><p><h3>See Also:</h3> <a 1492 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyInstanceGroups">AWS 1493 * API Reference</a></p> 1494 * 1495 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1496 */ 1497 virtual void ModifyInstanceGroupsAsync(const Model::ModifyInstanceGroupsRequest& request, const ModifyInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1498 1499 /** 1500 * <p>Creates or updates an automatic scaling policy for a core instance group or 1501 * task instance group in an Amazon EMR cluster. The automatic scaling policy 1502 * defines how an instance group dynamically adds and terminates EC2 instances in 1503 * response to the value of a CloudWatch metric.</p><p><h3>See Also:</h3> <a 1504 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy">AWS 1505 * API Reference</a></p> 1506 */ 1507 virtual Model::PutAutoScalingPolicyOutcome PutAutoScalingPolicy(const Model::PutAutoScalingPolicyRequest& request) const; 1508 1509 /** 1510 * <p>Creates or updates an automatic scaling policy for a core instance group or 1511 * task instance group in an Amazon EMR cluster. The automatic scaling policy 1512 * defines how an instance group dynamically adds and terminates EC2 instances in 1513 * response to the value of a CloudWatch metric.</p><p><h3>See Also:</h3> <a 1514 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy">AWS 1515 * API Reference</a></p> 1516 * 1517 * returns a future to the operation so that it can be executed in parallel to other requests. 1518 */ 1519 virtual Model::PutAutoScalingPolicyOutcomeCallable PutAutoScalingPolicyCallable(const Model::PutAutoScalingPolicyRequest& request) const; 1520 1521 /** 1522 * <p>Creates or updates an automatic scaling policy for a core instance group or 1523 * task instance group in an Amazon EMR cluster. The automatic scaling policy 1524 * defines how an instance group dynamically adds and terminates EC2 instances in 1525 * response to the value of a CloudWatch metric.</p><p><h3>See Also:</h3> <a 1526 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicy">AWS 1527 * API Reference</a></p> 1528 * 1529 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1530 */ 1531 virtual void PutAutoScalingPolicyAsync(const Model::PutAutoScalingPolicyRequest& request, const PutAutoScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1532 1533 /** 1534 * <p>Creates or updates an auto-termination policy for an Amazon EMR cluster. An 1535 * auto-termination policy defines the amount of idle time in seconds after which a 1536 * cluster automatically terminates. For alternative cluster termination options, 1537 * see <a 1538 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html">Control 1539 * cluster termination</a>.</p><p><h3>See Also:</h3> <a 1540 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy">AWS 1541 * API Reference</a></p> 1542 */ 1543 virtual Model::PutAutoTerminationPolicyOutcome PutAutoTerminationPolicy(const Model::PutAutoTerminationPolicyRequest& request) const; 1544 1545 /** 1546 * <p>Creates or updates an auto-termination policy for an Amazon EMR cluster. An 1547 * auto-termination policy defines the amount of idle time in seconds after which a 1548 * cluster automatically terminates. For alternative cluster termination options, 1549 * see <a 1550 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html">Control 1551 * cluster termination</a>.</p><p><h3>See Also:</h3> <a 1552 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy">AWS 1553 * API Reference</a></p> 1554 * 1555 * returns a future to the operation so that it can be executed in parallel to other requests. 1556 */ 1557 virtual Model::PutAutoTerminationPolicyOutcomeCallable PutAutoTerminationPolicyCallable(const Model::PutAutoTerminationPolicyRequest& request) const; 1558 1559 /** 1560 * <p>Creates or updates an auto-termination policy for an Amazon EMR cluster. An 1561 * auto-termination policy defines the amount of idle time in seconds after which a 1562 * cluster automatically terminates. For alternative cluster termination options, 1563 * see <a 1564 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-termination.html">Control 1565 * cluster termination</a>.</p><p><h3>See Also:</h3> <a 1566 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoTerminationPolicy">AWS 1567 * API Reference</a></p> 1568 * 1569 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1570 */ 1571 virtual void PutAutoTerminationPolicyAsync(const Model::PutAutoTerminationPolicyRequest& request, const PutAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1572 1573 /** 1574 * <p>Creates or updates an Amazon EMR block public access configuration for your 1575 * Amazon Web Services account in the current Region. For more information see <a 1576 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 1577 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 1578 * Guide</i>.</p><p><h3>See Also:</h3> <a 1579 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration">AWS 1580 * API Reference</a></p> 1581 */ 1582 virtual Model::PutBlockPublicAccessConfigurationOutcome PutBlockPublicAccessConfiguration(const Model::PutBlockPublicAccessConfigurationRequest& request) const; 1583 1584 /** 1585 * <p>Creates or updates an Amazon EMR block public access configuration for your 1586 * Amazon Web Services account in the current Region. For more information see <a 1587 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 1588 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 1589 * Guide</i>.</p><p><h3>See Also:</h3> <a 1590 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration">AWS 1591 * API Reference</a></p> 1592 * 1593 * returns a future to the operation so that it can be executed in parallel to other requests. 1594 */ 1595 virtual Model::PutBlockPublicAccessConfigurationOutcomeCallable PutBlockPublicAccessConfigurationCallable(const Model::PutBlockPublicAccessConfigurationRequest& request) const; 1596 1597 /** 1598 * <p>Creates or updates an Amazon EMR block public access configuration for your 1599 * Amazon Web Services account in the current Region. For more information see <a 1600 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/configure-block-public-access.html">Configure 1601 * Block Public Access for Amazon EMR</a> in the <i>Amazon EMR Management 1602 * Guide</i>.</p><p><h3>See Also:</h3> <a 1603 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutBlockPublicAccessConfiguration">AWS 1604 * API Reference</a></p> 1605 * 1606 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1607 */ 1608 virtual void PutBlockPublicAccessConfigurationAsync(const Model::PutBlockPublicAccessConfigurationRequest& request, const PutBlockPublicAccessConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1609 1610 /** 1611 * <p>Creates or updates a managed scaling policy for an Amazon EMR cluster. The 1612 * managed scaling policy defines the limits for resources, such as EC2 instances 1613 * that can be added or terminated from a cluster. The policy only applies to the 1614 * core and task nodes. The master node cannot be scaled after initial 1615 * configuration. </p><p><h3>See Also:</h3> <a 1616 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy">AWS 1617 * API Reference</a></p> 1618 */ 1619 virtual Model::PutManagedScalingPolicyOutcome PutManagedScalingPolicy(const Model::PutManagedScalingPolicyRequest& request) const; 1620 1621 /** 1622 * <p>Creates or updates a managed scaling policy for an Amazon EMR cluster. The 1623 * managed scaling policy defines the limits for resources, such as EC2 instances 1624 * that can be added or terminated from a cluster. The policy only applies to the 1625 * core and task nodes. The master node cannot be scaled after initial 1626 * configuration. </p><p><h3>See Also:</h3> <a 1627 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy">AWS 1628 * API Reference</a></p> 1629 * 1630 * returns a future to the operation so that it can be executed in parallel to other requests. 1631 */ 1632 virtual Model::PutManagedScalingPolicyOutcomeCallable PutManagedScalingPolicyCallable(const Model::PutManagedScalingPolicyRequest& request) const; 1633 1634 /** 1635 * <p>Creates or updates a managed scaling policy for an Amazon EMR cluster. The 1636 * managed scaling policy defines the limits for resources, such as EC2 instances 1637 * that can be added or terminated from a cluster. The policy only applies to the 1638 * core and task nodes. The master node cannot be scaled after initial 1639 * configuration. </p><p><h3>See Also:</h3> <a 1640 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutManagedScalingPolicy">AWS 1641 * API Reference</a></p> 1642 * 1643 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1644 */ 1645 virtual void PutManagedScalingPolicyAsync(const Model::PutManagedScalingPolicyRequest& request, const PutManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1646 1647 /** 1648 * <p>Removes an automatic scaling policy from a specified instance group within an 1649 * EMR cluster.</p><p><h3>See Also:</h3> <a 1650 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy">AWS 1651 * API Reference</a></p> 1652 */ 1653 virtual Model::RemoveAutoScalingPolicyOutcome RemoveAutoScalingPolicy(const Model::RemoveAutoScalingPolicyRequest& request) const; 1654 1655 /** 1656 * <p>Removes an automatic scaling policy from a specified instance group within an 1657 * EMR cluster.</p><p><h3>See Also:</h3> <a 1658 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy">AWS 1659 * API Reference</a></p> 1660 * 1661 * returns a future to the operation so that it can be executed in parallel to other requests. 1662 */ 1663 virtual Model::RemoveAutoScalingPolicyOutcomeCallable RemoveAutoScalingPolicyCallable(const Model::RemoveAutoScalingPolicyRequest& request) const; 1664 1665 /** 1666 * <p>Removes an automatic scaling policy from a specified instance group within an 1667 * EMR cluster.</p><p><h3>See Also:</h3> <a 1668 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoScalingPolicy">AWS 1669 * API Reference</a></p> 1670 * 1671 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1672 */ 1673 virtual void RemoveAutoScalingPolicyAsync(const Model::RemoveAutoScalingPolicyRequest& request, const RemoveAutoScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1674 1675 /** 1676 * <p>Removes an auto-termination policy from an Amazon EMR cluster.</p><p><h3>See 1677 * Also:</h3> <a 1678 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy">AWS 1679 * API Reference</a></p> 1680 */ 1681 virtual Model::RemoveAutoTerminationPolicyOutcome RemoveAutoTerminationPolicy(const Model::RemoveAutoTerminationPolicyRequest& request) const; 1682 1683 /** 1684 * <p>Removes an auto-termination policy from an Amazon EMR cluster.</p><p><h3>See 1685 * Also:</h3> <a 1686 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy">AWS 1687 * API Reference</a></p> 1688 * 1689 * returns a future to the operation so that it can be executed in parallel to other requests. 1690 */ 1691 virtual Model::RemoveAutoTerminationPolicyOutcomeCallable RemoveAutoTerminationPolicyCallable(const Model::RemoveAutoTerminationPolicyRequest& request) const; 1692 1693 /** 1694 * <p>Removes an auto-termination policy from an Amazon EMR cluster.</p><p><h3>See 1695 * Also:</h3> <a 1696 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveAutoTerminationPolicy">AWS 1697 * API Reference</a></p> 1698 * 1699 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1700 */ 1701 virtual void RemoveAutoTerminationPolicyAsync(const Model::RemoveAutoTerminationPolicyRequest& request, const RemoveAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1702 1703 /** 1704 * <p> Removes a managed scaling policy from a specified EMR cluster. 1705 * </p><p><h3>See Also:</h3> <a 1706 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy">AWS 1707 * API Reference</a></p> 1708 */ 1709 virtual Model::RemoveManagedScalingPolicyOutcome RemoveManagedScalingPolicy(const Model::RemoveManagedScalingPolicyRequest& request) const; 1710 1711 /** 1712 * <p> Removes a managed scaling policy from a specified EMR cluster. 1713 * </p><p><h3>See Also:</h3> <a 1714 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy">AWS 1715 * API Reference</a></p> 1716 * 1717 * returns a future to the operation so that it can be executed in parallel to other requests. 1718 */ 1719 virtual Model::RemoveManagedScalingPolicyOutcomeCallable RemoveManagedScalingPolicyCallable(const Model::RemoveManagedScalingPolicyRequest& request) const; 1720 1721 /** 1722 * <p> Removes a managed scaling policy from a specified EMR cluster. 1723 * </p><p><h3>See Also:</h3> <a 1724 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveManagedScalingPolicy">AWS 1725 * API Reference</a></p> 1726 * 1727 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1728 */ 1729 virtual void RemoveManagedScalingPolicyAsync(const Model::RemoveManagedScalingPolicyRequest& request, const RemoveManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1730 1731 /** 1732 * <p>Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR 1733 * Studio. Tags make it easier to associate resources in various ways, such as 1734 * grouping clusters to track your Amazon EMR resource allocation costs. For more 1735 * information, see <a 1736 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 1737 * Clusters</a>. </p> <p>The following example removes the stack tag with value 1738 * Prod from a cluster:</p><p><h3>See Also:</h3> <a 1739 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags">AWS 1740 * API Reference</a></p> 1741 */ 1742 virtual Model::RemoveTagsOutcome RemoveTags(const Model::RemoveTagsRequest& request) const; 1743 1744 /** 1745 * <p>Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR 1746 * Studio. Tags make it easier to associate resources in various ways, such as 1747 * grouping clusters to track your Amazon EMR resource allocation costs. For more 1748 * information, see <a 1749 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 1750 * Clusters</a>. </p> <p>The following example removes the stack tag with value 1751 * Prod from a cluster:</p><p><h3>See Also:</h3> <a 1752 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags">AWS 1753 * API Reference</a></p> 1754 * 1755 * returns a future to the operation so that it can be executed in parallel to other requests. 1756 */ 1757 virtual Model::RemoveTagsOutcomeCallable RemoveTagsCallable(const Model::RemoveTagsRequest& request) const; 1758 1759 /** 1760 * <p>Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR 1761 * Studio. Tags make it easier to associate resources in various ways, such as 1762 * grouping clusters to track your Amazon EMR resource allocation costs. For more 1763 * information, see <a 1764 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag 1765 * Clusters</a>. </p> <p>The following example removes the stack tag with value 1766 * Prod from a cluster:</p><p><h3>See Also:</h3> <a 1767 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RemoveTags">AWS 1768 * API Reference</a></p> 1769 * 1770 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1771 */ 1772 virtual void RemoveTagsAsync(const Model::RemoveTagsRequest& request, const RemoveTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1773 1774 /** 1775 * <p>RunJobFlow creates and starts running a new cluster (job flow). The cluster 1776 * runs the steps specified. After the steps complete, the cluster stops and the 1777 * HDFS partition is lost. To prevent loss of data, configure the last step of the 1778 * job flow to store results in Amazon S3. If the <a>JobFlowInstancesConfig</a> 1779 * <code>KeepJobFlowAliveWhenNoSteps</code> parameter is set to <code>TRUE</code>, 1780 * the cluster transitions to the WAITING state rather than shutting down after the 1781 * steps have completed. </p> <p>For additional protection, you can set the 1782 * <a>JobFlowInstancesConfig</a> <code>TerminationProtected</code> parameter to 1783 * <code>TRUE</code> to lock the cluster and prevent it from being terminated by 1784 * API call, user intervention, or in the event of a job flow error.</p> <p>A 1785 * maximum of 256 steps are allowed in each job flow.</p> <p>If your cluster is 1786 * long-running (such as a Hive data warehouse) or complex, you may require more 1787 * than 256 steps to process your data. You can bypass the 256-step limitation in 1788 * various ways, including using the SSH shell to connect to the master node and 1789 * submitting queries directly to the software running on the master node, such as 1790 * Hive and Hadoop. For more information on how to do this, see <a 1791 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 1792 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 1793 * Guide</i>.</p> <p>For long running clusters, we recommend that you periodically 1794 * store your results.</p> <p>The instance fleets configuration is available 1795 * only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. The 1796 * RunJobFlow request can contain InstanceFleets parameters or InstanceGroups 1797 * parameters, but not both.</p> <p><h3>See Also:</h3> <a 1798 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow">AWS 1799 * API Reference</a></p> 1800 */ 1801 virtual Model::RunJobFlowOutcome RunJobFlow(const Model::RunJobFlowRequest& request) const; 1802 1803 /** 1804 * <p>RunJobFlow creates and starts running a new cluster (job flow). The cluster 1805 * runs the steps specified. After the steps complete, the cluster stops and the 1806 * HDFS partition is lost. To prevent loss of data, configure the last step of the 1807 * job flow to store results in Amazon S3. If the <a>JobFlowInstancesConfig</a> 1808 * <code>KeepJobFlowAliveWhenNoSteps</code> parameter is set to <code>TRUE</code>, 1809 * the cluster transitions to the WAITING state rather than shutting down after the 1810 * steps have completed. </p> <p>For additional protection, you can set the 1811 * <a>JobFlowInstancesConfig</a> <code>TerminationProtected</code> parameter to 1812 * <code>TRUE</code> to lock the cluster and prevent it from being terminated by 1813 * API call, user intervention, or in the event of a job flow error.</p> <p>A 1814 * maximum of 256 steps are allowed in each job flow.</p> <p>If your cluster is 1815 * long-running (such as a Hive data warehouse) or complex, you may require more 1816 * than 256 steps to process your data. You can bypass the 256-step limitation in 1817 * various ways, including using the SSH shell to connect to the master node and 1818 * submitting queries directly to the software running on the master node, such as 1819 * Hive and Hadoop. For more information on how to do this, see <a 1820 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 1821 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 1822 * Guide</i>.</p> <p>For long running clusters, we recommend that you periodically 1823 * store your results.</p> <p>The instance fleets configuration is available 1824 * only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. The 1825 * RunJobFlow request can contain InstanceFleets parameters or InstanceGroups 1826 * parameters, but not both.</p> <p><h3>See Also:</h3> <a 1827 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow">AWS 1828 * API Reference</a></p> 1829 * 1830 * returns a future to the operation so that it can be executed in parallel to other requests. 1831 */ 1832 virtual Model::RunJobFlowOutcomeCallable RunJobFlowCallable(const Model::RunJobFlowRequest& request) const; 1833 1834 /** 1835 * <p>RunJobFlow creates and starts running a new cluster (job flow). The cluster 1836 * runs the steps specified. After the steps complete, the cluster stops and the 1837 * HDFS partition is lost. To prevent loss of data, configure the last step of the 1838 * job flow to store results in Amazon S3. If the <a>JobFlowInstancesConfig</a> 1839 * <code>KeepJobFlowAliveWhenNoSteps</code> parameter is set to <code>TRUE</code>, 1840 * the cluster transitions to the WAITING state rather than shutting down after the 1841 * steps have completed. </p> <p>For additional protection, you can set the 1842 * <a>JobFlowInstancesConfig</a> <code>TerminationProtected</code> parameter to 1843 * <code>TRUE</code> to lock the cluster and prevent it from being terminated by 1844 * API call, user intervention, or in the event of a job flow error.</p> <p>A 1845 * maximum of 256 steps are allowed in each job flow.</p> <p>If your cluster is 1846 * long-running (such as a Hive data warehouse) or complex, you may require more 1847 * than 256 steps to process your data. You can bypass the 256-step limitation in 1848 * various ways, including using the SSH shell to connect to the master node and 1849 * submitting queries directly to the software running on the master node, such as 1850 * Hive and Hadoop. For more information on how to do this, see <a 1851 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/AddMoreThan256Steps.html">Add 1852 * More than 256 Steps to a Cluster</a> in the <i>Amazon EMR Management 1853 * Guide</i>.</p> <p>For long running clusters, we recommend that you periodically 1854 * store your results.</p> <p>The instance fleets configuration is available 1855 * only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. The 1856 * RunJobFlow request can contain InstanceFleets parameters or InstanceGroups 1857 * parameters, but not both.</p> <p><h3>See Also:</h3> <a 1858 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlow">AWS 1859 * API Reference</a></p> 1860 * 1861 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1862 */ 1863 virtual void RunJobFlowAsync(const Model::RunJobFlowRequest& request, const RunJobFlowResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1864 1865 /** 1866 * <p>SetTerminationProtection locks a cluster (job flow) so the EC2 instances in 1867 * the cluster cannot be terminated by user intervention, an API call, or in the 1868 * event of a job-flow error. The cluster still terminates upon successful 1869 * completion of the job flow. Calling <code>SetTerminationProtection</code> on a 1870 * cluster is similar to calling the Amazon EC2 <code>DisableAPITermination</code> 1871 * API on all EC2 instances in a cluster.</p> <p> 1872 * <code>SetTerminationProtection</code> is used to prevent accidental termination 1873 * of a cluster and to ensure that in the event of an error, the instances persist 1874 * so that you can recover any data stored in their ephemeral instance storage.</p> 1875 * <p> To terminate a cluster that has been locked by setting 1876 * <code>SetTerminationProtection</code> to <code>true</code>, you must first 1877 * unlock the job flow by a subsequent call to 1878 * <code>SetTerminationProtection</code> in which you set the value to 1879 * <code>false</code>. </p> <p> For more information, see<a 1880 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html">Managing 1881 * Cluster Termination</a> in the <i>Amazon EMR Management Guide</i>. 1882 * </p><p><h3>See Also:</h3> <a 1883 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection">AWS 1884 * API Reference</a></p> 1885 */ 1886 virtual Model::SetTerminationProtectionOutcome SetTerminationProtection(const Model::SetTerminationProtectionRequest& request) const; 1887 1888 /** 1889 * <p>SetTerminationProtection locks a cluster (job flow) so the EC2 instances in 1890 * the cluster cannot be terminated by user intervention, an API call, or in the 1891 * event of a job-flow error. The cluster still terminates upon successful 1892 * completion of the job flow. Calling <code>SetTerminationProtection</code> on a 1893 * cluster is similar to calling the Amazon EC2 <code>DisableAPITermination</code> 1894 * API on all EC2 instances in a cluster.</p> <p> 1895 * <code>SetTerminationProtection</code> is used to prevent accidental termination 1896 * of a cluster and to ensure that in the event of an error, the instances persist 1897 * so that you can recover any data stored in their ephemeral instance storage.</p> 1898 * <p> To terminate a cluster that has been locked by setting 1899 * <code>SetTerminationProtection</code> to <code>true</code>, you must first 1900 * unlock the job flow by a subsequent call to 1901 * <code>SetTerminationProtection</code> in which you set the value to 1902 * <code>false</code>. </p> <p> For more information, see<a 1903 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html">Managing 1904 * Cluster Termination</a> in the <i>Amazon EMR Management Guide</i>. 1905 * </p><p><h3>See Also:</h3> <a 1906 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection">AWS 1907 * API Reference</a></p> 1908 * 1909 * returns a future to the operation so that it can be executed in parallel to other requests. 1910 */ 1911 virtual Model::SetTerminationProtectionOutcomeCallable SetTerminationProtectionCallable(const Model::SetTerminationProtectionRequest& request) const; 1912 1913 /** 1914 * <p>SetTerminationProtection locks a cluster (job flow) so the EC2 instances in 1915 * the cluster cannot be terminated by user intervention, an API call, or in the 1916 * event of a job-flow error. The cluster still terminates upon successful 1917 * completion of the job flow. Calling <code>SetTerminationProtection</code> on a 1918 * cluster is similar to calling the Amazon EC2 <code>DisableAPITermination</code> 1919 * API on all EC2 instances in a cluster.</p> <p> 1920 * <code>SetTerminationProtection</code> is used to prevent accidental termination 1921 * of a cluster and to ensure that in the event of an error, the instances persist 1922 * so that you can recover any data stored in their ephemeral instance storage.</p> 1923 * <p> To terminate a cluster that has been locked by setting 1924 * <code>SetTerminationProtection</code> to <code>true</code>, you must first 1925 * unlock the job flow by a subsequent call to 1926 * <code>SetTerminationProtection</code> in which you set the value to 1927 * <code>false</code>. </p> <p> For more information, see<a 1928 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/UsingEMR_TerminationProtection.html">Managing 1929 * Cluster Termination</a> in the <i>Amazon EMR Management Guide</i>. 1930 * </p><p><h3>See Also:</h3> <a 1931 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetTerminationProtection">AWS 1932 * API Reference</a></p> 1933 * 1934 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1935 */ 1936 virtual void SetTerminationProtectionAsync(const Model::SetTerminationProtectionRequest& request, const SetTerminationProtectionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1937 1938 /** 1939 * <p>Sets the <a>Cluster$VisibleToAllUsers</a> value for an EMR cluster. When 1940 * <code>true</code>, IAM principals in the Amazon Web Services account can perform 1941 * EMR cluster actions that their IAM policies allow. When <code>false</code>, only 1942 * the IAM principal that created the cluster and the Amazon Web Services account 1943 * root user can perform EMR actions on the cluster, regardless of IAM permissions 1944 * policies attached to other IAM principals.</p> <p>This action works on running 1945 * clusters. When you create a cluster, use the 1946 * <a>RunJobFlowInput$VisibleToAllUsers</a> parameter.</p> <p>For more information, 1947 * see <a 1948 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users">Understanding 1949 * the EMR Cluster VisibleToAllUsers Setting</a> in the <i>Amazon EMRManagement 1950 * Guide</i>.</p><p><h3>See Also:</h3> <a 1951 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers">AWS 1952 * API Reference</a></p> 1953 */ 1954 virtual Model::SetVisibleToAllUsersOutcome SetVisibleToAllUsers(const Model::SetVisibleToAllUsersRequest& request) const; 1955 1956 /** 1957 * <p>Sets the <a>Cluster$VisibleToAllUsers</a> value for an EMR cluster. When 1958 * <code>true</code>, IAM principals in the Amazon Web Services account can perform 1959 * EMR cluster actions that their IAM policies allow. When <code>false</code>, only 1960 * the IAM principal that created the cluster and the Amazon Web Services account 1961 * root user can perform EMR actions on the cluster, regardless of IAM permissions 1962 * policies attached to other IAM principals.</p> <p>This action works on running 1963 * clusters. When you create a cluster, use the 1964 * <a>RunJobFlowInput$VisibleToAllUsers</a> parameter.</p> <p>For more information, 1965 * see <a 1966 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users">Understanding 1967 * the EMR Cluster VisibleToAllUsers Setting</a> in the <i>Amazon EMRManagement 1968 * Guide</i>.</p><p><h3>See Also:</h3> <a 1969 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers">AWS 1970 * API Reference</a></p> 1971 * 1972 * returns a future to the operation so that it can be executed in parallel to other requests. 1973 */ 1974 virtual Model::SetVisibleToAllUsersOutcomeCallable SetVisibleToAllUsersCallable(const Model::SetVisibleToAllUsersRequest& request) const; 1975 1976 /** 1977 * <p>Sets the <a>Cluster$VisibleToAllUsers</a> value for an EMR cluster. When 1978 * <code>true</code>, IAM principals in the Amazon Web Services account can perform 1979 * EMR cluster actions that their IAM policies allow. When <code>false</code>, only 1980 * the IAM principal that created the cluster and the Amazon Web Services account 1981 * root user can perform EMR actions on the cluster, regardless of IAM permissions 1982 * policies attached to other IAM principals.</p> <p>This action works on running 1983 * clusters. When you create a cluster, use the 1984 * <a>RunJobFlowInput$VisibleToAllUsers</a> parameter.</p> <p>For more information, 1985 * see <a 1986 * href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users">Understanding 1987 * the EMR Cluster VisibleToAllUsers Setting</a> in the <i>Amazon EMRManagement 1988 * Guide</i>.</p><p><h3>See Also:</h3> <a 1989 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SetVisibleToAllUsers">AWS 1990 * API Reference</a></p> 1991 * 1992 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1993 */ 1994 virtual void SetVisibleToAllUsersAsync(const Model::SetVisibleToAllUsersRequest& request, const SetVisibleToAllUsersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1995 1996 /** 1997 * <p>Starts a notebook execution.</p><p><h3>See Also:</h3> <a 1998 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution">AWS 1999 * API Reference</a></p> 2000 */ 2001 virtual Model::StartNotebookExecutionOutcome StartNotebookExecution(const Model::StartNotebookExecutionRequest& request) const; 2002 2003 /** 2004 * <p>Starts a notebook execution.</p><p><h3>See Also:</h3> <a 2005 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution">AWS 2006 * API Reference</a></p> 2007 * 2008 * returns a future to the operation so that it can be executed in parallel to other requests. 2009 */ 2010 virtual Model::StartNotebookExecutionOutcomeCallable StartNotebookExecutionCallable(const Model::StartNotebookExecutionRequest& request) const; 2011 2012 /** 2013 * <p>Starts a notebook execution.</p><p><h3>See Also:</h3> <a 2014 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StartNotebookExecution">AWS 2015 * API Reference</a></p> 2016 * 2017 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2018 */ 2019 virtual void StartNotebookExecutionAsync(const Model::StartNotebookExecutionRequest& request, const StartNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2020 2021 /** 2022 * <p>Stops a notebook execution.</p><p><h3>See Also:</h3> <a 2023 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution">AWS 2024 * API Reference</a></p> 2025 */ 2026 virtual Model::StopNotebookExecutionOutcome StopNotebookExecution(const Model::StopNotebookExecutionRequest& request) const; 2027 2028 /** 2029 * <p>Stops a notebook execution.</p><p><h3>See Also:</h3> <a 2030 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution">AWS 2031 * API Reference</a></p> 2032 * 2033 * returns a future to the operation so that it can be executed in parallel to other requests. 2034 */ 2035 virtual Model::StopNotebookExecutionOutcomeCallable StopNotebookExecutionCallable(const Model::StopNotebookExecutionRequest& request) const; 2036 2037 /** 2038 * <p>Stops a notebook execution.</p><p><h3>See Also:</h3> <a 2039 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StopNotebookExecution">AWS 2040 * API Reference</a></p> 2041 * 2042 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2043 */ 2044 virtual void StopNotebookExecutionAsync(const Model::StopNotebookExecutionRequest& request, const StopNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2045 2046 /** 2047 * <p>TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 2048 * is shut down, any step not yet completed is canceled and the EC2 instances on 2049 * which the cluster is running are stopped. Any log files not already saved are 2050 * uploaded to Amazon S3 if a LogUri was specified when the cluster was 2051 * created.</p> <p>The maximum number of clusters allowed is 10. The call to 2052 * <code>TerminateJobFlows</code> is asynchronous. Depending on the configuration 2053 * of the cluster, it may take up to 1-5 minutes for the cluster to completely 2054 * terminate and release allocated resources, such as Amazon EC2 2055 * instances.</p><p><h3>See Also:</h3> <a 2056 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows">AWS 2057 * API Reference</a></p> 2058 */ 2059 virtual Model::TerminateJobFlowsOutcome TerminateJobFlows(const Model::TerminateJobFlowsRequest& request) const; 2060 2061 /** 2062 * <p>TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 2063 * is shut down, any step not yet completed is canceled and the EC2 instances on 2064 * which the cluster is running are stopped. Any log files not already saved are 2065 * uploaded to Amazon S3 if a LogUri was specified when the cluster was 2066 * created.</p> <p>The maximum number of clusters allowed is 10. The call to 2067 * <code>TerminateJobFlows</code> is asynchronous. Depending on the configuration 2068 * of the cluster, it may take up to 1-5 minutes for the cluster to completely 2069 * terminate and release allocated resources, such as Amazon EC2 2070 * instances.</p><p><h3>See Also:</h3> <a 2071 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows">AWS 2072 * API Reference</a></p> 2073 * 2074 * returns a future to the operation so that it can be executed in parallel to other requests. 2075 */ 2076 virtual Model::TerminateJobFlowsOutcomeCallable TerminateJobFlowsCallable(const Model::TerminateJobFlowsRequest& request) const; 2077 2078 /** 2079 * <p>TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow 2080 * is shut down, any step not yet completed is canceled and the EC2 instances on 2081 * which the cluster is running are stopped. Any log files not already saved are 2082 * uploaded to Amazon S3 if a LogUri was specified when the cluster was 2083 * created.</p> <p>The maximum number of clusters allowed is 10. The call to 2084 * <code>TerminateJobFlows</code> is asynchronous. Depending on the configuration 2085 * of the cluster, it may take up to 1-5 minutes for the cluster to completely 2086 * terminate and release allocated resources, such as Amazon EC2 2087 * instances.</p><p><h3>See Also:</h3> <a 2088 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlows">AWS 2089 * API Reference</a></p> 2090 * 2091 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2092 */ 2093 virtual void TerminateJobFlowsAsync(const Model::TerminateJobFlowsRequest& request, const TerminateJobFlowsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2094 2095 /** 2096 * <p>Updates an Amazon EMR Studio configuration, including attributes such as 2097 * name, description, and subnets.</p><p><h3>See Also:</h3> <a 2098 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio">AWS 2099 * API Reference</a></p> 2100 */ 2101 virtual Model::UpdateStudioOutcome UpdateStudio(const Model::UpdateStudioRequest& request) const; 2102 2103 /** 2104 * <p>Updates an Amazon EMR Studio configuration, including attributes such as 2105 * name, description, and subnets.</p><p><h3>See Also:</h3> <a 2106 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio">AWS 2107 * API Reference</a></p> 2108 * 2109 * returns a future to the operation so that it can be executed in parallel to other requests. 2110 */ 2111 virtual Model::UpdateStudioOutcomeCallable UpdateStudioCallable(const Model::UpdateStudioRequest& request) const; 2112 2113 /** 2114 * <p>Updates an Amazon EMR Studio configuration, including attributes such as 2115 * name, description, and subnets.</p><p><h3>See Also:</h3> <a 2116 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudio">AWS 2117 * API Reference</a></p> 2118 * 2119 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2120 */ 2121 virtual void UpdateStudioAsync(const Model::UpdateStudioRequest& request, const UpdateStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2122 2123 /** 2124 * <p>Updates the session policy attached to the user or group for the specified 2125 * Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 2126 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping">AWS 2127 * API Reference</a></p> 2128 */ 2129 virtual Model::UpdateStudioSessionMappingOutcome UpdateStudioSessionMapping(const Model::UpdateStudioSessionMappingRequest& request) const; 2130 2131 /** 2132 * <p>Updates the session policy attached to the user or group for the specified 2133 * Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 2134 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping">AWS 2135 * API Reference</a></p> 2136 * 2137 * returns a future to the operation so that it can be executed in parallel to other requests. 2138 */ 2139 virtual Model::UpdateStudioSessionMappingOutcomeCallable UpdateStudioSessionMappingCallable(const Model::UpdateStudioSessionMappingRequest& request) const; 2140 2141 /** 2142 * <p>Updates the session policy attached to the user or group for the specified 2143 * Amazon EMR Studio.</p><p><h3>See Also:</h3> <a 2144 * href="http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMapping">AWS 2145 * API Reference</a></p> 2146 * 2147 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2148 */ 2149 virtual void UpdateStudioSessionMappingAsync(const Model::UpdateStudioSessionMappingRequest& request, const UpdateStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2150 2151 2152 void OverrideEndpoint(const Aws::String& endpoint); 2153 private: 2154 void init(const Aws::Client::ClientConfiguration& clientConfiguration); 2155 void AddInstanceFleetAsyncHelper(const Model::AddInstanceFleetRequest& request, const AddInstanceFleetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2156 void AddInstanceGroupsAsyncHelper(const Model::AddInstanceGroupsRequest& request, const AddInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2157 void AddJobFlowStepsAsyncHelper(const Model::AddJobFlowStepsRequest& request, const AddJobFlowStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2158 void AddTagsAsyncHelper(const Model::AddTagsRequest& request, const AddTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2159 void CancelStepsAsyncHelper(const Model::CancelStepsRequest& request, const CancelStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2160 void CreateSecurityConfigurationAsyncHelper(const Model::CreateSecurityConfigurationRequest& request, const CreateSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2161 void CreateStudioAsyncHelper(const Model::CreateStudioRequest& request, const CreateStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2162 void CreateStudioSessionMappingAsyncHelper(const Model::CreateStudioSessionMappingRequest& request, const CreateStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2163 void DeleteSecurityConfigurationAsyncHelper(const Model::DeleteSecurityConfigurationRequest& request, const DeleteSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2164 void DeleteStudioAsyncHelper(const Model::DeleteStudioRequest& request, const DeleteStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2165 void DeleteStudioSessionMappingAsyncHelper(const Model::DeleteStudioSessionMappingRequest& request, const DeleteStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2166 void DescribeClusterAsyncHelper(const Model::DescribeClusterRequest& request, const DescribeClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2167 void DescribeNotebookExecutionAsyncHelper(const Model::DescribeNotebookExecutionRequest& request, const DescribeNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2168 void DescribeReleaseLabelAsyncHelper(const Model::DescribeReleaseLabelRequest& request, const DescribeReleaseLabelResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2169 void DescribeSecurityConfigurationAsyncHelper(const Model::DescribeSecurityConfigurationRequest& request, const DescribeSecurityConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2170 void DescribeStepAsyncHelper(const Model::DescribeStepRequest& request, const DescribeStepResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2171 void DescribeStudioAsyncHelper(const Model::DescribeStudioRequest& request, const DescribeStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2172 void GetAutoTerminationPolicyAsyncHelper(const Model::GetAutoTerminationPolicyRequest& request, const GetAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2173 void GetBlockPublicAccessConfigurationAsyncHelper(const Model::GetBlockPublicAccessConfigurationRequest& request, const GetBlockPublicAccessConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2174 void GetManagedScalingPolicyAsyncHelper(const Model::GetManagedScalingPolicyRequest& request, const GetManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2175 void GetStudioSessionMappingAsyncHelper(const Model::GetStudioSessionMappingRequest& request, const GetStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2176 void ListBootstrapActionsAsyncHelper(const Model::ListBootstrapActionsRequest& request, const ListBootstrapActionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2177 void ListClustersAsyncHelper(const Model::ListClustersRequest& request, const ListClustersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2178 void ListInstanceFleetsAsyncHelper(const Model::ListInstanceFleetsRequest& request, const ListInstanceFleetsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2179 void ListInstanceGroupsAsyncHelper(const Model::ListInstanceGroupsRequest& request, const ListInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2180 void ListInstancesAsyncHelper(const Model::ListInstancesRequest& request, const ListInstancesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2181 void ListNotebookExecutionsAsyncHelper(const Model::ListNotebookExecutionsRequest& request, const ListNotebookExecutionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2182 void ListReleaseLabelsAsyncHelper(const Model::ListReleaseLabelsRequest& request, const ListReleaseLabelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2183 void ListSecurityConfigurationsAsyncHelper(const Model::ListSecurityConfigurationsRequest& request, const ListSecurityConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2184 void ListStepsAsyncHelper(const Model::ListStepsRequest& request, const ListStepsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2185 void ListStudioSessionMappingsAsyncHelper(const Model::ListStudioSessionMappingsRequest& request, const ListStudioSessionMappingsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2186 void ListStudiosAsyncHelper(const Model::ListStudiosRequest& request, const ListStudiosResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2187 void ModifyClusterAsyncHelper(const Model::ModifyClusterRequest& request, const ModifyClusterResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2188 void ModifyInstanceFleetAsyncHelper(const Model::ModifyInstanceFleetRequest& request, const ModifyInstanceFleetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2189 void ModifyInstanceGroupsAsyncHelper(const Model::ModifyInstanceGroupsRequest& request, const ModifyInstanceGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2190 void PutAutoScalingPolicyAsyncHelper(const Model::PutAutoScalingPolicyRequest& request, const PutAutoScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2191 void PutAutoTerminationPolicyAsyncHelper(const Model::PutAutoTerminationPolicyRequest& request, const PutAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2192 void PutBlockPublicAccessConfigurationAsyncHelper(const Model::PutBlockPublicAccessConfigurationRequest& request, const PutBlockPublicAccessConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2193 void PutManagedScalingPolicyAsyncHelper(const Model::PutManagedScalingPolicyRequest& request, const PutManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2194 void RemoveAutoScalingPolicyAsyncHelper(const Model::RemoveAutoScalingPolicyRequest& request, const RemoveAutoScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2195 void RemoveAutoTerminationPolicyAsyncHelper(const Model::RemoveAutoTerminationPolicyRequest& request, const RemoveAutoTerminationPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2196 void RemoveManagedScalingPolicyAsyncHelper(const Model::RemoveManagedScalingPolicyRequest& request, const RemoveManagedScalingPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2197 void RemoveTagsAsyncHelper(const Model::RemoveTagsRequest& request, const RemoveTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2198 void RunJobFlowAsyncHelper(const Model::RunJobFlowRequest& request, const RunJobFlowResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2199 void SetTerminationProtectionAsyncHelper(const Model::SetTerminationProtectionRequest& request, const SetTerminationProtectionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2200 void SetVisibleToAllUsersAsyncHelper(const Model::SetVisibleToAllUsersRequest& request, const SetVisibleToAllUsersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2201 void StartNotebookExecutionAsyncHelper(const Model::StartNotebookExecutionRequest& request, const StartNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2202 void StopNotebookExecutionAsyncHelper(const Model::StopNotebookExecutionRequest& request, const StopNotebookExecutionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2203 void TerminateJobFlowsAsyncHelper(const Model::TerminateJobFlowsRequest& request, const TerminateJobFlowsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2204 void UpdateStudioAsyncHelper(const Model::UpdateStudioRequest& request, const UpdateStudioResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2205 void UpdateStudioSessionMappingAsyncHelper(const Model::UpdateStudioSessionMappingRequest& request, const UpdateStudioSessionMappingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2206 2207 Aws::String m_uri; 2208 Aws::String m_configScheme; 2209 std::shared_ptr<Aws::Utils::Threading::Executor> m_executor; 2210 }; 2211 2212 } // namespace EMR 2213 } // namespace Aws 2214