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/workspaces/WorkSpaces_EXPORTS.h> 8 #include <aws/workspaces/WorkSpacesErrors.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/workspaces/model/AssociateConnectionAliasResult.h> 15 #include <aws/workspaces/model/AssociateIpGroupsResult.h> 16 #include <aws/workspaces/model/AuthorizeIpRulesResult.h> 17 #include <aws/workspaces/model/CopyWorkspaceImageResult.h> 18 #include <aws/workspaces/model/CreateConnectionAliasResult.h> 19 #include <aws/workspaces/model/CreateIpGroupResult.h> 20 #include <aws/workspaces/model/CreateTagsResult.h> 21 #include <aws/workspaces/model/CreateUpdatedWorkspaceImageResult.h> 22 #include <aws/workspaces/model/CreateWorkspaceBundleResult.h> 23 #include <aws/workspaces/model/CreateWorkspacesResult.h> 24 #include <aws/workspaces/model/DeleteConnectionAliasResult.h> 25 #include <aws/workspaces/model/DeleteIpGroupResult.h> 26 #include <aws/workspaces/model/DeleteTagsResult.h> 27 #include <aws/workspaces/model/DeleteWorkspaceBundleResult.h> 28 #include <aws/workspaces/model/DeleteWorkspaceImageResult.h> 29 #include <aws/workspaces/model/DeregisterWorkspaceDirectoryResult.h> 30 #include <aws/workspaces/model/DescribeAccountResult.h> 31 #include <aws/workspaces/model/DescribeAccountModificationsResult.h> 32 #include <aws/workspaces/model/DescribeClientPropertiesResult.h> 33 #include <aws/workspaces/model/DescribeConnectionAliasPermissionsResult.h> 34 #include <aws/workspaces/model/DescribeConnectionAliasesResult.h> 35 #include <aws/workspaces/model/DescribeIpGroupsResult.h> 36 #include <aws/workspaces/model/DescribeTagsResult.h> 37 #include <aws/workspaces/model/DescribeWorkspaceBundlesResult.h> 38 #include <aws/workspaces/model/DescribeWorkspaceDirectoriesResult.h> 39 #include <aws/workspaces/model/DescribeWorkspaceImagePermissionsResult.h> 40 #include <aws/workspaces/model/DescribeWorkspaceImagesResult.h> 41 #include <aws/workspaces/model/DescribeWorkspaceSnapshotsResult.h> 42 #include <aws/workspaces/model/DescribeWorkspacesResult.h> 43 #include <aws/workspaces/model/DescribeWorkspacesConnectionStatusResult.h> 44 #include <aws/workspaces/model/DisassociateConnectionAliasResult.h> 45 #include <aws/workspaces/model/DisassociateIpGroupsResult.h> 46 #include <aws/workspaces/model/ImportWorkspaceImageResult.h> 47 #include <aws/workspaces/model/ListAvailableManagementCidrRangesResult.h> 48 #include <aws/workspaces/model/MigrateWorkspaceResult.h> 49 #include <aws/workspaces/model/ModifyAccountResult.h> 50 #include <aws/workspaces/model/ModifyClientPropertiesResult.h> 51 #include <aws/workspaces/model/ModifySelfservicePermissionsResult.h> 52 #include <aws/workspaces/model/ModifyWorkspaceAccessPropertiesResult.h> 53 #include <aws/workspaces/model/ModifyWorkspaceCreationPropertiesResult.h> 54 #include <aws/workspaces/model/ModifyWorkspacePropertiesResult.h> 55 #include <aws/workspaces/model/ModifyWorkspaceStateResult.h> 56 #include <aws/workspaces/model/RebootWorkspacesResult.h> 57 #include <aws/workspaces/model/RebuildWorkspacesResult.h> 58 #include <aws/workspaces/model/RegisterWorkspaceDirectoryResult.h> 59 #include <aws/workspaces/model/RestoreWorkspaceResult.h> 60 #include <aws/workspaces/model/RevokeIpRulesResult.h> 61 #include <aws/workspaces/model/StartWorkspacesResult.h> 62 #include <aws/workspaces/model/StopWorkspacesResult.h> 63 #include <aws/workspaces/model/TerminateWorkspacesResult.h> 64 #include <aws/workspaces/model/UpdateConnectionAliasPermissionResult.h> 65 #include <aws/workspaces/model/UpdateRulesOfIpGroupResult.h> 66 #include <aws/workspaces/model/UpdateWorkspaceBundleResult.h> 67 #include <aws/workspaces/model/UpdateWorkspaceImagePermissionResult.h> 68 #include <aws/core/client/AsyncCallerContext.h> 69 #include <aws/core/http/HttpTypes.h> 70 #include <future> 71 #include <functional> 72 73 namespace Aws 74 { 75 76 namespace Http 77 { 78 class HttpClient; 79 class HttpClientFactory; 80 } // namespace Http 81 82 namespace Utils 83 { 84 template< typename R, typename E> class Outcome; 85 namespace Threading 86 { 87 class Executor; 88 } // namespace Threading 89 } // namespace Utils 90 91 namespace Auth 92 { 93 class AWSCredentials; 94 class AWSCredentialsProvider; 95 } // namespace Auth 96 97 namespace Client 98 { 99 class RetryStrategy; 100 } // namespace Client 101 102 namespace WorkSpaces 103 { 104 105 namespace Model 106 { 107 class AssociateConnectionAliasRequest; 108 class AssociateIpGroupsRequest; 109 class AuthorizeIpRulesRequest; 110 class CopyWorkspaceImageRequest; 111 class CreateConnectionAliasRequest; 112 class CreateIpGroupRequest; 113 class CreateTagsRequest; 114 class CreateUpdatedWorkspaceImageRequest; 115 class CreateWorkspaceBundleRequest; 116 class CreateWorkspacesRequest; 117 class DeleteConnectionAliasRequest; 118 class DeleteIpGroupRequest; 119 class DeleteTagsRequest; 120 class DeleteWorkspaceBundleRequest; 121 class DeleteWorkspaceImageRequest; 122 class DeregisterWorkspaceDirectoryRequest; 123 class DescribeAccountRequest; 124 class DescribeAccountModificationsRequest; 125 class DescribeClientPropertiesRequest; 126 class DescribeConnectionAliasPermissionsRequest; 127 class DescribeConnectionAliasesRequest; 128 class DescribeIpGroupsRequest; 129 class DescribeTagsRequest; 130 class DescribeWorkspaceBundlesRequest; 131 class DescribeWorkspaceDirectoriesRequest; 132 class DescribeWorkspaceImagePermissionsRequest; 133 class DescribeWorkspaceImagesRequest; 134 class DescribeWorkspaceSnapshotsRequest; 135 class DescribeWorkspacesRequest; 136 class DescribeWorkspacesConnectionStatusRequest; 137 class DisassociateConnectionAliasRequest; 138 class DisassociateIpGroupsRequest; 139 class ImportWorkspaceImageRequest; 140 class ListAvailableManagementCidrRangesRequest; 141 class MigrateWorkspaceRequest; 142 class ModifyAccountRequest; 143 class ModifyClientPropertiesRequest; 144 class ModifySelfservicePermissionsRequest; 145 class ModifyWorkspaceAccessPropertiesRequest; 146 class ModifyWorkspaceCreationPropertiesRequest; 147 class ModifyWorkspacePropertiesRequest; 148 class ModifyWorkspaceStateRequest; 149 class RebootWorkspacesRequest; 150 class RebuildWorkspacesRequest; 151 class RegisterWorkspaceDirectoryRequest; 152 class RestoreWorkspaceRequest; 153 class RevokeIpRulesRequest; 154 class StartWorkspacesRequest; 155 class StopWorkspacesRequest; 156 class TerminateWorkspacesRequest; 157 class UpdateConnectionAliasPermissionRequest; 158 class UpdateRulesOfIpGroupRequest; 159 class UpdateWorkspaceBundleRequest; 160 class UpdateWorkspaceImagePermissionRequest; 161 162 typedef Aws::Utils::Outcome<AssociateConnectionAliasResult, WorkSpacesError> AssociateConnectionAliasOutcome; 163 typedef Aws::Utils::Outcome<AssociateIpGroupsResult, WorkSpacesError> AssociateIpGroupsOutcome; 164 typedef Aws::Utils::Outcome<AuthorizeIpRulesResult, WorkSpacesError> AuthorizeIpRulesOutcome; 165 typedef Aws::Utils::Outcome<CopyWorkspaceImageResult, WorkSpacesError> CopyWorkspaceImageOutcome; 166 typedef Aws::Utils::Outcome<CreateConnectionAliasResult, WorkSpacesError> CreateConnectionAliasOutcome; 167 typedef Aws::Utils::Outcome<CreateIpGroupResult, WorkSpacesError> CreateIpGroupOutcome; 168 typedef Aws::Utils::Outcome<CreateTagsResult, WorkSpacesError> CreateTagsOutcome; 169 typedef Aws::Utils::Outcome<CreateUpdatedWorkspaceImageResult, WorkSpacesError> CreateUpdatedWorkspaceImageOutcome; 170 typedef Aws::Utils::Outcome<CreateWorkspaceBundleResult, WorkSpacesError> CreateWorkspaceBundleOutcome; 171 typedef Aws::Utils::Outcome<CreateWorkspacesResult, WorkSpacesError> CreateWorkspacesOutcome; 172 typedef Aws::Utils::Outcome<DeleteConnectionAliasResult, WorkSpacesError> DeleteConnectionAliasOutcome; 173 typedef Aws::Utils::Outcome<DeleteIpGroupResult, WorkSpacesError> DeleteIpGroupOutcome; 174 typedef Aws::Utils::Outcome<DeleteTagsResult, WorkSpacesError> DeleteTagsOutcome; 175 typedef Aws::Utils::Outcome<DeleteWorkspaceBundleResult, WorkSpacesError> DeleteWorkspaceBundleOutcome; 176 typedef Aws::Utils::Outcome<DeleteWorkspaceImageResult, WorkSpacesError> DeleteWorkspaceImageOutcome; 177 typedef Aws::Utils::Outcome<DeregisterWorkspaceDirectoryResult, WorkSpacesError> DeregisterWorkspaceDirectoryOutcome; 178 typedef Aws::Utils::Outcome<DescribeAccountResult, WorkSpacesError> DescribeAccountOutcome; 179 typedef Aws::Utils::Outcome<DescribeAccountModificationsResult, WorkSpacesError> DescribeAccountModificationsOutcome; 180 typedef Aws::Utils::Outcome<DescribeClientPropertiesResult, WorkSpacesError> DescribeClientPropertiesOutcome; 181 typedef Aws::Utils::Outcome<DescribeConnectionAliasPermissionsResult, WorkSpacesError> DescribeConnectionAliasPermissionsOutcome; 182 typedef Aws::Utils::Outcome<DescribeConnectionAliasesResult, WorkSpacesError> DescribeConnectionAliasesOutcome; 183 typedef Aws::Utils::Outcome<DescribeIpGroupsResult, WorkSpacesError> DescribeIpGroupsOutcome; 184 typedef Aws::Utils::Outcome<DescribeTagsResult, WorkSpacesError> DescribeTagsOutcome; 185 typedef Aws::Utils::Outcome<DescribeWorkspaceBundlesResult, WorkSpacesError> DescribeWorkspaceBundlesOutcome; 186 typedef Aws::Utils::Outcome<DescribeWorkspaceDirectoriesResult, WorkSpacesError> DescribeWorkspaceDirectoriesOutcome; 187 typedef Aws::Utils::Outcome<DescribeWorkspaceImagePermissionsResult, WorkSpacesError> DescribeWorkspaceImagePermissionsOutcome; 188 typedef Aws::Utils::Outcome<DescribeWorkspaceImagesResult, WorkSpacesError> DescribeWorkspaceImagesOutcome; 189 typedef Aws::Utils::Outcome<DescribeWorkspaceSnapshotsResult, WorkSpacesError> DescribeWorkspaceSnapshotsOutcome; 190 typedef Aws::Utils::Outcome<DescribeWorkspacesResult, WorkSpacesError> DescribeWorkspacesOutcome; 191 typedef Aws::Utils::Outcome<DescribeWorkspacesConnectionStatusResult, WorkSpacesError> DescribeWorkspacesConnectionStatusOutcome; 192 typedef Aws::Utils::Outcome<DisassociateConnectionAliasResult, WorkSpacesError> DisassociateConnectionAliasOutcome; 193 typedef Aws::Utils::Outcome<DisassociateIpGroupsResult, WorkSpacesError> DisassociateIpGroupsOutcome; 194 typedef Aws::Utils::Outcome<ImportWorkspaceImageResult, WorkSpacesError> ImportWorkspaceImageOutcome; 195 typedef Aws::Utils::Outcome<ListAvailableManagementCidrRangesResult, WorkSpacesError> ListAvailableManagementCidrRangesOutcome; 196 typedef Aws::Utils::Outcome<MigrateWorkspaceResult, WorkSpacesError> MigrateWorkspaceOutcome; 197 typedef Aws::Utils::Outcome<ModifyAccountResult, WorkSpacesError> ModifyAccountOutcome; 198 typedef Aws::Utils::Outcome<ModifyClientPropertiesResult, WorkSpacesError> ModifyClientPropertiesOutcome; 199 typedef Aws::Utils::Outcome<ModifySelfservicePermissionsResult, WorkSpacesError> ModifySelfservicePermissionsOutcome; 200 typedef Aws::Utils::Outcome<ModifyWorkspaceAccessPropertiesResult, WorkSpacesError> ModifyWorkspaceAccessPropertiesOutcome; 201 typedef Aws::Utils::Outcome<ModifyWorkspaceCreationPropertiesResult, WorkSpacesError> ModifyWorkspaceCreationPropertiesOutcome; 202 typedef Aws::Utils::Outcome<ModifyWorkspacePropertiesResult, WorkSpacesError> ModifyWorkspacePropertiesOutcome; 203 typedef Aws::Utils::Outcome<ModifyWorkspaceStateResult, WorkSpacesError> ModifyWorkspaceStateOutcome; 204 typedef Aws::Utils::Outcome<RebootWorkspacesResult, WorkSpacesError> RebootWorkspacesOutcome; 205 typedef Aws::Utils::Outcome<RebuildWorkspacesResult, WorkSpacesError> RebuildWorkspacesOutcome; 206 typedef Aws::Utils::Outcome<RegisterWorkspaceDirectoryResult, WorkSpacesError> RegisterWorkspaceDirectoryOutcome; 207 typedef Aws::Utils::Outcome<RestoreWorkspaceResult, WorkSpacesError> RestoreWorkspaceOutcome; 208 typedef Aws::Utils::Outcome<RevokeIpRulesResult, WorkSpacesError> RevokeIpRulesOutcome; 209 typedef Aws::Utils::Outcome<StartWorkspacesResult, WorkSpacesError> StartWorkspacesOutcome; 210 typedef Aws::Utils::Outcome<StopWorkspacesResult, WorkSpacesError> StopWorkspacesOutcome; 211 typedef Aws::Utils::Outcome<TerminateWorkspacesResult, WorkSpacesError> TerminateWorkspacesOutcome; 212 typedef Aws::Utils::Outcome<UpdateConnectionAliasPermissionResult, WorkSpacesError> UpdateConnectionAliasPermissionOutcome; 213 typedef Aws::Utils::Outcome<UpdateRulesOfIpGroupResult, WorkSpacesError> UpdateRulesOfIpGroupOutcome; 214 typedef Aws::Utils::Outcome<UpdateWorkspaceBundleResult, WorkSpacesError> UpdateWorkspaceBundleOutcome; 215 typedef Aws::Utils::Outcome<UpdateWorkspaceImagePermissionResult, WorkSpacesError> UpdateWorkspaceImagePermissionOutcome; 216 217 typedef std::future<AssociateConnectionAliasOutcome> AssociateConnectionAliasOutcomeCallable; 218 typedef std::future<AssociateIpGroupsOutcome> AssociateIpGroupsOutcomeCallable; 219 typedef std::future<AuthorizeIpRulesOutcome> AuthorizeIpRulesOutcomeCallable; 220 typedef std::future<CopyWorkspaceImageOutcome> CopyWorkspaceImageOutcomeCallable; 221 typedef std::future<CreateConnectionAliasOutcome> CreateConnectionAliasOutcomeCallable; 222 typedef std::future<CreateIpGroupOutcome> CreateIpGroupOutcomeCallable; 223 typedef std::future<CreateTagsOutcome> CreateTagsOutcomeCallable; 224 typedef std::future<CreateUpdatedWorkspaceImageOutcome> CreateUpdatedWorkspaceImageOutcomeCallable; 225 typedef std::future<CreateWorkspaceBundleOutcome> CreateWorkspaceBundleOutcomeCallable; 226 typedef std::future<CreateWorkspacesOutcome> CreateWorkspacesOutcomeCallable; 227 typedef std::future<DeleteConnectionAliasOutcome> DeleteConnectionAliasOutcomeCallable; 228 typedef std::future<DeleteIpGroupOutcome> DeleteIpGroupOutcomeCallable; 229 typedef std::future<DeleteTagsOutcome> DeleteTagsOutcomeCallable; 230 typedef std::future<DeleteWorkspaceBundleOutcome> DeleteWorkspaceBundleOutcomeCallable; 231 typedef std::future<DeleteWorkspaceImageOutcome> DeleteWorkspaceImageOutcomeCallable; 232 typedef std::future<DeregisterWorkspaceDirectoryOutcome> DeregisterWorkspaceDirectoryOutcomeCallable; 233 typedef std::future<DescribeAccountOutcome> DescribeAccountOutcomeCallable; 234 typedef std::future<DescribeAccountModificationsOutcome> DescribeAccountModificationsOutcomeCallable; 235 typedef std::future<DescribeClientPropertiesOutcome> DescribeClientPropertiesOutcomeCallable; 236 typedef std::future<DescribeConnectionAliasPermissionsOutcome> DescribeConnectionAliasPermissionsOutcomeCallable; 237 typedef std::future<DescribeConnectionAliasesOutcome> DescribeConnectionAliasesOutcomeCallable; 238 typedef std::future<DescribeIpGroupsOutcome> DescribeIpGroupsOutcomeCallable; 239 typedef std::future<DescribeTagsOutcome> DescribeTagsOutcomeCallable; 240 typedef std::future<DescribeWorkspaceBundlesOutcome> DescribeWorkspaceBundlesOutcomeCallable; 241 typedef std::future<DescribeWorkspaceDirectoriesOutcome> DescribeWorkspaceDirectoriesOutcomeCallable; 242 typedef std::future<DescribeWorkspaceImagePermissionsOutcome> DescribeWorkspaceImagePermissionsOutcomeCallable; 243 typedef std::future<DescribeWorkspaceImagesOutcome> DescribeWorkspaceImagesOutcomeCallable; 244 typedef std::future<DescribeWorkspaceSnapshotsOutcome> DescribeWorkspaceSnapshotsOutcomeCallable; 245 typedef std::future<DescribeWorkspacesOutcome> DescribeWorkspacesOutcomeCallable; 246 typedef std::future<DescribeWorkspacesConnectionStatusOutcome> DescribeWorkspacesConnectionStatusOutcomeCallable; 247 typedef std::future<DisassociateConnectionAliasOutcome> DisassociateConnectionAliasOutcomeCallable; 248 typedef std::future<DisassociateIpGroupsOutcome> DisassociateIpGroupsOutcomeCallable; 249 typedef std::future<ImportWorkspaceImageOutcome> ImportWorkspaceImageOutcomeCallable; 250 typedef std::future<ListAvailableManagementCidrRangesOutcome> ListAvailableManagementCidrRangesOutcomeCallable; 251 typedef std::future<MigrateWorkspaceOutcome> MigrateWorkspaceOutcomeCallable; 252 typedef std::future<ModifyAccountOutcome> ModifyAccountOutcomeCallable; 253 typedef std::future<ModifyClientPropertiesOutcome> ModifyClientPropertiesOutcomeCallable; 254 typedef std::future<ModifySelfservicePermissionsOutcome> ModifySelfservicePermissionsOutcomeCallable; 255 typedef std::future<ModifyWorkspaceAccessPropertiesOutcome> ModifyWorkspaceAccessPropertiesOutcomeCallable; 256 typedef std::future<ModifyWorkspaceCreationPropertiesOutcome> ModifyWorkspaceCreationPropertiesOutcomeCallable; 257 typedef std::future<ModifyWorkspacePropertiesOutcome> ModifyWorkspacePropertiesOutcomeCallable; 258 typedef std::future<ModifyWorkspaceStateOutcome> ModifyWorkspaceStateOutcomeCallable; 259 typedef std::future<RebootWorkspacesOutcome> RebootWorkspacesOutcomeCallable; 260 typedef std::future<RebuildWorkspacesOutcome> RebuildWorkspacesOutcomeCallable; 261 typedef std::future<RegisterWorkspaceDirectoryOutcome> RegisterWorkspaceDirectoryOutcomeCallable; 262 typedef std::future<RestoreWorkspaceOutcome> RestoreWorkspaceOutcomeCallable; 263 typedef std::future<RevokeIpRulesOutcome> RevokeIpRulesOutcomeCallable; 264 typedef std::future<StartWorkspacesOutcome> StartWorkspacesOutcomeCallable; 265 typedef std::future<StopWorkspacesOutcome> StopWorkspacesOutcomeCallable; 266 typedef std::future<TerminateWorkspacesOutcome> TerminateWorkspacesOutcomeCallable; 267 typedef std::future<UpdateConnectionAliasPermissionOutcome> UpdateConnectionAliasPermissionOutcomeCallable; 268 typedef std::future<UpdateRulesOfIpGroupOutcome> UpdateRulesOfIpGroupOutcomeCallable; 269 typedef std::future<UpdateWorkspaceBundleOutcome> UpdateWorkspaceBundleOutcomeCallable; 270 typedef std::future<UpdateWorkspaceImagePermissionOutcome> UpdateWorkspaceImagePermissionOutcomeCallable; 271 } // namespace Model 272 273 class WorkSpacesClient; 274 275 typedef std::function<void(const WorkSpacesClient*, const Model::AssociateConnectionAliasRequest&, const Model::AssociateConnectionAliasOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AssociateConnectionAliasResponseReceivedHandler; 276 typedef std::function<void(const WorkSpacesClient*, const Model::AssociateIpGroupsRequest&, const Model::AssociateIpGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AssociateIpGroupsResponseReceivedHandler; 277 typedef std::function<void(const WorkSpacesClient*, const Model::AuthorizeIpRulesRequest&, const Model::AuthorizeIpRulesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AuthorizeIpRulesResponseReceivedHandler; 278 typedef std::function<void(const WorkSpacesClient*, const Model::CopyWorkspaceImageRequest&, const Model::CopyWorkspaceImageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CopyWorkspaceImageResponseReceivedHandler; 279 typedef std::function<void(const WorkSpacesClient*, const Model::CreateConnectionAliasRequest&, const Model::CreateConnectionAliasOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateConnectionAliasResponseReceivedHandler; 280 typedef std::function<void(const WorkSpacesClient*, const Model::CreateIpGroupRequest&, const Model::CreateIpGroupOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateIpGroupResponseReceivedHandler; 281 typedef std::function<void(const WorkSpacesClient*, const Model::CreateTagsRequest&, const Model::CreateTagsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateTagsResponseReceivedHandler; 282 typedef std::function<void(const WorkSpacesClient*, const Model::CreateUpdatedWorkspaceImageRequest&, const Model::CreateUpdatedWorkspaceImageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateUpdatedWorkspaceImageResponseReceivedHandler; 283 typedef std::function<void(const WorkSpacesClient*, const Model::CreateWorkspaceBundleRequest&, const Model::CreateWorkspaceBundleOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateWorkspaceBundleResponseReceivedHandler; 284 typedef std::function<void(const WorkSpacesClient*, const Model::CreateWorkspacesRequest&, const Model::CreateWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateWorkspacesResponseReceivedHandler; 285 typedef std::function<void(const WorkSpacesClient*, const Model::DeleteConnectionAliasRequest&, const Model::DeleteConnectionAliasOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteConnectionAliasResponseReceivedHandler; 286 typedef std::function<void(const WorkSpacesClient*, const Model::DeleteIpGroupRequest&, const Model::DeleteIpGroupOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteIpGroupResponseReceivedHandler; 287 typedef std::function<void(const WorkSpacesClient*, const Model::DeleteTagsRequest&, const Model::DeleteTagsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteTagsResponseReceivedHandler; 288 typedef std::function<void(const WorkSpacesClient*, const Model::DeleteWorkspaceBundleRequest&, const Model::DeleteWorkspaceBundleOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteWorkspaceBundleResponseReceivedHandler; 289 typedef std::function<void(const WorkSpacesClient*, const Model::DeleteWorkspaceImageRequest&, const Model::DeleteWorkspaceImageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteWorkspaceImageResponseReceivedHandler; 290 typedef std::function<void(const WorkSpacesClient*, const Model::DeregisterWorkspaceDirectoryRequest&, const Model::DeregisterWorkspaceDirectoryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeregisterWorkspaceDirectoryResponseReceivedHandler; 291 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeAccountRequest&, const Model::DescribeAccountOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeAccountResponseReceivedHandler; 292 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeAccountModificationsRequest&, const Model::DescribeAccountModificationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeAccountModificationsResponseReceivedHandler; 293 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeClientPropertiesRequest&, const Model::DescribeClientPropertiesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeClientPropertiesResponseReceivedHandler; 294 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeConnectionAliasPermissionsRequest&, const Model::DescribeConnectionAliasPermissionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeConnectionAliasPermissionsResponseReceivedHandler; 295 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeConnectionAliasesRequest&, const Model::DescribeConnectionAliasesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeConnectionAliasesResponseReceivedHandler; 296 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeIpGroupsRequest&, const Model::DescribeIpGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeIpGroupsResponseReceivedHandler; 297 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeTagsRequest&, const Model::DescribeTagsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTagsResponseReceivedHandler; 298 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspaceBundlesRequest&, const Model::DescribeWorkspaceBundlesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspaceBundlesResponseReceivedHandler; 299 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspaceDirectoriesRequest&, const Model::DescribeWorkspaceDirectoriesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspaceDirectoriesResponseReceivedHandler; 300 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspaceImagePermissionsRequest&, const Model::DescribeWorkspaceImagePermissionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspaceImagePermissionsResponseReceivedHandler; 301 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspaceImagesRequest&, const Model::DescribeWorkspaceImagesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspaceImagesResponseReceivedHandler; 302 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspaceSnapshotsRequest&, const Model::DescribeWorkspaceSnapshotsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspaceSnapshotsResponseReceivedHandler; 303 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspacesRequest&, const Model::DescribeWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspacesResponseReceivedHandler; 304 typedef std::function<void(const WorkSpacesClient*, const Model::DescribeWorkspacesConnectionStatusRequest&, const Model::DescribeWorkspacesConnectionStatusOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeWorkspacesConnectionStatusResponseReceivedHandler; 305 typedef std::function<void(const WorkSpacesClient*, const Model::DisassociateConnectionAliasRequest&, const Model::DisassociateConnectionAliasOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DisassociateConnectionAliasResponseReceivedHandler; 306 typedef std::function<void(const WorkSpacesClient*, const Model::DisassociateIpGroupsRequest&, const Model::DisassociateIpGroupsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DisassociateIpGroupsResponseReceivedHandler; 307 typedef std::function<void(const WorkSpacesClient*, const Model::ImportWorkspaceImageRequest&, const Model::ImportWorkspaceImageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ImportWorkspaceImageResponseReceivedHandler; 308 typedef std::function<void(const WorkSpacesClient*, const Model::ListAvailableManagementCidrRangesRequest&, const Model::ListAvailableManagementCidrRangesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListAvailableManagementCidrRangesResponseReceivedHandler; 309 typedef std::function<void(const WorkSpacesClient*, const Model::MigrateWorkspaceRequest&, const Model::MigrateWorkspaceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > MigrateWorkspaceResponseReceivedHandler; 310 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyAccountRequest&, const Model::ModifyAccountOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyAccountResponseReceivedHandler; 311 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyClientPropertiesRequest&, const Model::ModifyClientPropertiesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyClientPropertiesResponseReceivedHandler; 312 typedef std::function<void(const WorkSpacesClient*, const Model::ModifySelfservicePermissionsRequest&, const Model::ModifySelfservicePermissionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifySelfservicePermissionsResponseReceivedHandler; 313 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyWorkspaceAccessPropertiesRequest&, const Model::ModifyWorkspaceAccessPropertiesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyWorkspaceAccessPropertiesResponseReceivedHandler; 314 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyWorkspaceCreationPropertiesRequest&, const Model::ModifyWorkspaceCreationPropertiesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyWorkspaceCreationPropertiesResponseReceivedHandler; 315 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyWorkspacePropertiesRequest&, const Model::ModifyWorkspacePropertiesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyWorkspacePropertiesResponseReceivedHandler; 316 typedef std::function<void(const WorkSpacesClient*, const Model::ModifyWorkspaceStateRequest&, const Model::ModifyWorkspaceStateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ModifyWorkspaceStateResponseReceivedHandler; 317 typedef std::function<void(const WorkSpacesClient*, const Model::RebootWorkspacesRequest&, const Model::RebootWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RebootWorkspacesResponseReceivedHandler; 318 typedef std::function<void(const WorkSpacesClient*, const Model::RebuildWorkspacesRequest&, const Model::RebuildWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RebuildWorkspacesResponseReceivedHandler; 319 typedef std::function<void(const WorkSpacesClient*, const Model::RegisterWorkspaceDirectoryRequest&, const Model::RegisterWorkspaceDirectoryOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RegisterWorkspaceDirectoryResponseReceivedHandler; 320 typedef std::function<void(const WorkSpacesClient*, const Model::RestoreWorkspaceRequest&, const Model::RestoreWorkspaceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RestoreWorkspaceResponseReceivedHandler; 321 typedef std::function<void(const WorkSpacesClient*, const Model::RevokeIpRulesRequest&, const Model::RevokeIpRulesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RevokeIpRulesResponseReceivedHandler; 322 typedef std::function<void(const WorkSpacesClient*, const Model::StartWorkspacesRequest&, const Model::StartWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StartWorkspacesResponseReceivedHandler; 323 typedef std::function<void(const WorkSpacesClient*, const Model::StopWorkspacesRequest&, const Model::StopWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StopWorkspacesResponseReceivedHandler; 324 typedef std::function<void(const WorkSpacesClient*, const Model::TerminateWorkspacesRequest&, const Model::TerminateWorkspacesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TerminateWorkspacesResponseReceivedHandler; 325 typedef std::function<void(const WorkSpacesClient*, const Model::UpdateConnectionAliasPermissionRequest&, const Model::UpdateConnectionAliasPermissionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateConnectionAliasPermissionResponseReceivedHandler; 326 typedef std::function<void(const WorkSpacesClient*, const Model::UpdateRulesOfIpGroupRequest&, const Model::UpdateRulesOfIpGroupOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateRulesOfIpGroupResponseReceivedHandler; 327 typedef std::function<void(const WorkSpacesClient*, const Model::UpdateWorkspaceBundleRequest&, const Model::UpdateWorkspaceBundleOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateWorkspaceBundleResponseReceivedHandler; 328 typedef std::function<void(const WorkSpacesClient*, const Model::UpdateWorkspaceImagePermissionRequest&, const Model::UpdateWorkspaceImagePermissionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateWorkspaceImagePermissionResponseReceivedHandler; 329 330 /** 331 * <fullname>Amazon WorkSpaces Service</fullname> <p>Amazon WorkSpaces enables you 332 * to provision virtual, cloud-based Microsoft Windows and Amazon Linux desktops 333 * for your users.</p> 334 */ 335 class AWS_WORKSPACES_API WorkSpacesClient : public Aws::Client::AWSJsonClient 336 { 337 public: 338 typedef Aws::Client::AWSJsonClient BASECLASS; 339 340 /** 341 * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config 342 * is not specified, it will be initialized to default values. 343 */ 344 WorkSpacesClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 345 346 /** 347 * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config 348 * is not specified, it will be initialized to default values. 349 */ 350 WorkSpacesClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 351 352 /** 353 * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, 354 * the default http client factory will be used 355 */ 356 WorkSpacesClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider, 357 const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); 358 359 virtual ~WorkSpacesClient(); 360 361 362 /** 363 * <p>Associates the specified connection alias with the specified directory to 364 * enable cross-Region redirection. For more information, see <a 365 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 366 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 367 * performing this operation, call <a 368 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 369 * DescribeConnectionAliases</a> to make sure that the current state of the 370 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 371 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAlias">AWS 372 * API Reference</a></p> 373 */ 374 virtual Model::AssociateConnectionAliasOutcome AssociateConnectionAlias(const Model::AssociateConnectionAliasRequest& request) const; 375 376 /** 377 * <p>Associates the specified connection alias with the specified directory to 378 * enable cross-Region redirection. For more information, see <a 379 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 380 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 381 * performing this operation, call <a 382 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 383 * DescribeConnectionAliases</a> to make sure that the current state of the 384 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 385 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAlias">AWS 386 * API Reference</a></p> 387 * 388 * returns a future to the operation so that it can be executed in parallel to other requests. 389 */ 390 virtual Model::AssociateConnectionAliasOutcomeCallable AssociateConnectionAliasCallable(const Model::AssociateConnectionAliasRequest& request) const; 391 392 /** 393 * <p>Associates the specified connection alias with the specified directory to 394 * enable cross-Region redirection. For more information, see <a 395 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 396 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 397 * performing this operation, call <a 398 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 399 * DescribeConnectionAliases</a> to make sure that the current state of the 400 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 401 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateConnectionAlias">AWS 402 * API Reference</a></p> 403 * 404 * Queues the request into a thread executor and triggers associated callback when operation has finished. 405 */ 406 virtual void AssociateConnectionAliasAsync(const Model::AssociateConnectionAliasRequest& request, const AssociateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 407 408 /** 409 * <p>Associates the specified IP access control group with the specified 410 * directory.</p><p><h3>See Also:</h3> <a 411 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups">AWS 412 * API Reference</a></p> 413 */ 414 virtual Model::AssociateIpGroupsOutcome AssociateIpGroups(const Model::AssociateIpGroupsRequest& request) const; 415 416 /** 417 * <p>Associates the specified IP access control group with the specified 418 * directory.</p><p><h3>See Also:</h3> <a 419 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups">AWS 420 * API Reference</a></p> 421 * 422 * returns a future to the operation so that it can be executed in parallel to other requests. 423 */ 424 virtual Model::AssociateIpGroupsOutcomeCallable AssociateIpGroupsCallable(const Model::AssociateIpGroupsRequest& request) const; 425 426 /** 427 * <p>Associates the specified IP access control group with the specified 428 * directory.</p><p><h3>See Also:</h3> <a 429 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups">AWS 430 * API Reference</a></p> 431 * 432 * Queues the request into a thread executor and triggers associated callback when operation has finished. 433 */ 434 virtual void AssociateIpGroupsAsync(const Model::AssociateIpGroupsRequest& request, const AssociateIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 435 436 /** 437 * <p>Adds one or more rules to the specified IP access control group.</p> <p>This 438 * action gives users permission to access their WorkSpaces from the CIDR address 439 * ranges specified in the rules.</p><p><h3>See Also:</h3> <a 440 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules">AWS 441 * API Reference</a></p> 442 */ 443 virtual Model::AuthorizeIpRulesOutcome AuthorizeIpRules(const Model::AuthorizeIpRulesRequest& request) const; 444 445 /** 446 * <p>Adds one or more rules to the specified IP access control group.</p> <p>This 447 * action gives users permission to access their WorkSpaces from the CIDR address 448 * ranges specified in the rules.</p><p><h3>See Also:</h3> <a 449 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules">AWS 450 * API Reference</a></p> 451 * 452 * returns a future to the operation so that it can be executed in parallel to other requests. 453 */ 454 virtual Model::AuthorizeIpRulesOutcomeCallable AuthorizeIpRulesCallable(const Model::AuthorizeIpRulesRequest& request) const; 455 456 /** 457 * <p>Adds one or more rules to the specified IP access control group.</p> <p>This 458 * action gives users permission to access their WorkSpaces from the CIDR address 459 * ranges specified in the rules.</p><p><h3>See Also:</h3> <a 460 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules">AWS 461 * API Reference</a></p> 462 * 463 * Queues the request into a thread executor and triggers associated callback when operation has finished. 464 */ 465 virtual void AuthorizeIpRulesAsync(const Model::AuthorizeIpRulesRequest& request, const AuthorizeIpRulesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 466 467 /** 468 * <p>Copies the specified image from the specified Region to the current Region. 469 * For more information about copying images, see <a 470 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/copy-custom-image.html"> 471 * Copy a Custom WorkSpaces Image</a>.</p> <p>In the China (Ningxia) Region, you 472 * can copy images only within the same Region.</p> <p>In Amazon Web Services 473 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 474 * Services Support.</p> <p>Before copying a shared image, be sure to 475 * verify that it has been shared from the correct Amazon Web Services account. To 476 * determine if an image has been shared and to see the ID of the Amazon Web 477 * Services account that owns an image, use the <a 478 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html">DescribeWorkSpaceImages</a> 479 * and <a 480 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImagePermissions.html">DescribeWorkspaceImagePermissions</a> 481 * API operations. </p> <p><h3>See Also:</h3> <a 482 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CopyWorkspaceImage">AWS 483 * API Reference</a></p> 484 */ 485 virtual Model::CopyWorkspaceImageOutcome CopyWorkspaceImage(const Model::CopyWorkspaceImageRequest& request) const; 486 487 /** 488 * <p>Copies the specified image from the specified Region to the current Region. 489 * For more information about copying images, see <a 490 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/copy-custom-image.html"> 491 * Copy a Custom WorkSpaces Image</a>.</p> <p>In the China (Ningxia) Region, you 492 * can copy images only within the same Region.</p> <p>In Amazon Web Services 493 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 494 * Services Support.</p> <p>Before copying a shared image, be sure to 495 * verify that it has been shared from the correct Amazon Web Services account. To 496 * determine if an image has been shared and to see the ID of the Amazon Web 497 * Services account that owns an image, use the <a 498 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html">DescribeWorkSpaceImages</a> 499 * and <a 500 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImagePermissions.html">DescribeWorkspaceImagePermissions</a> 501 * API operations. </p> <p><h3>See Also:</h3> <a 502 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CopyWorkspaceImage">AWS 503 * API Reference</a></p> 504 * 505 * returns a future to the operation so that it can be executed in parallel to other requests. 506 */ 507 virtual Model::CopyWorkspaceImageOutcomeCallable CopyWorkspaceImageCallable(const Model::CopyWorkspaceImageRequest& request) const; 508 509 /** 510 * <p>Copies the specified image from the specified Region to the current Region. 511 * For more information about copying images, see <a 512 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/copy-custom-image.html"> 513 * Copy a Custom WorkSpaces Image</a>.</p> <p>In the China (Ningxia) Region, you 514 * can copy images only within the same Region.</p> <p>In Amazon Web Services 515 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 516 * Services Support.</p> <p>Before copying a shared image, be sure to 517 * verify that it has been shared from the correct Amazon Web Services account. To 518 * determine if an image has been shared and to see the ID of the Amazon Web 519 * Services account that owns an image, use the <a 520 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html">DescribeWorkSpaceImages</a> 521 * and <a 522 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImagePermissions.html">DescribeWorkspaceImagePermissions</a> 523 * API operations. </p> <p><h3>See Also:</h3> <a 524 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CopyWorkspaceImage">AWS 525 * API Reference</a></p> 526 * 527 * Queues the request into a thread executor and triggers associated callback when operation has finished. 528 */ 529 virtual void CopyWorkspaceImageAsync(const Model::CopyWorkspaceImageRequest& request, const CopyWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 530 531 /** 532 * <p>Creates the specified connection alias for use with cross-Region redirection. 533 * For more information, see <a 534 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 535 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 536 * <a 537 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAlias">AWS 538 * API Reference</a></p> 539 */ 540 virtual Model::CreateConnectionAliasOutcome CreateConnectionAlias(const Model::CreateConnectionAliasRequest& request) const; 541 542 /** 543 * <p>Creates the specified connection alias for use with cross-Region redirection. 544 * For more information, see <a 545 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 546 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 547 * <a 548 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAlias">AWS 549 * API Reference</a></p> 550 * 551 * returns a future to the operation so that it can be executed in parallel to other requests. 552 */ 553 virtual Model::CreateConnectionAliasOutcomeCallable CreateConnectionAliasCallable(const Model::CreateConnectionAliasRequest& request) const; 554 555 /** 556 * <p>Creates the specified connection alias for use with cross-Region redirection. 557 * For more information, see <a 558 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 559 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 560 * <a 561 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateConnectionAlias">AWS 562 * API Reference</a></p> 563 * 564 * Queues the request into a thread executor and triggers associated callback when operation has finished. 565 */ 566 virtual void CreateConnectionAliasAsync(const Model::CreateConnectionAliasRequest& request, const CreateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 567 568 /** 569 * <p>Creates an IP access control group.</p> <p>An IP access control group 570 * provides you with the ability to control the IP addresses from which users are 571 * allowed to access their WorkSpaces. To specify the CIDR address ranges, add 572 * rules to your IP access control group and then associate the group with your 573 * directory. You can add rules when you create the group or at any time using 574 * <a>AuthorizeIpRules</a>.</p> <p>There is a default IP access control group 575 * associated with your directory. If you don't associate an IP access control 576 * group with your directory, the default group is used. The default group includes 577 * a default rule that allows users to access their WorkSpaces from anywhere. You 578 * cannot modify the default IP access control group for your 579 * directory.</p><p><h3>See Also:</h3> <a 580 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup">AWS 581 * API Reference</a></p> 582 */ 583 virtual Model::CreateIpGroupOutcome CreateIpGroup(const Model::CreateIpGroupRequest& request) const; 584 585 /** 586 * <p>Creates an IP access control group.</p> <p>An IP access control group 587 * provides you with the ability to control the IP addresses from which users are 588 * allowed to access their WorkSpaces. To specify the CIDR address ranges, add 589 * rules to your IP access control group and then associate the group with your 590 * directory. You can add rules when you create the group or at any time using 591 * <a>AuthorizeIpRules</a>.</p> <p>There is a default IP access control group 592 * associated with your directory. If you don't associate an IP access control 593 * group with your directory, the default group is used. The default group includes 594 * a default rule that allows users to access their WorkSpaces from anywhere. You 595 * cannot modify the default IP access control group for your 596 * directory.</p><p><h3>See Also:</h3> <a 597 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup">AWS 598 * API Reference</a></p> 599 * 600 * returns a future to the operation so that it can be executed in parallel to other requests. 601 */ 602 virtual Model::CreateIpGroupOutcomeCallable CreateIpGroupCallable(const Model::CreateIpGroupRequest& request) const; 603 604 /** 605 * <p>Creates an IP access control group.</p> <p>An IP access control group 606 * provides you with the ability to control the IP addresses from which users are 607 * allowed to access their WorkSpaces. To specify the CIDR address ranges, add 608 * rules to your IP access control group and then associate the group with your 609 * directory. You can add rules when you create the group or at any time using 610 * <a>AuthorizeIpRules</a>.</p> <p>There is a default IP access control group 611 * associated with your directory. If you don't associate an IP access control 612 * group with your directory, the default group is used. The default group includes 613 * a default rule that allows users to access their WorkSpaces from anywhere. You 614 * cannot modify the default IP access control group for your 615 * directory.</p><p><h3>See Also:</h3> <a 616 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup">AWS 617 * API Reference</a></p> 618 * 619 * Queues the request into a thread executor and triggers associated callback when operation has finished. 620 */ 621 virtual void CreateIpGroupAsync(const Model::CreateIpGroupRequest& request, const CreateIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 622 623 /** 624 * <p>Creates the specified tags for the specified WorkSpaces 625 * resource.</p><p><h3>See Also:</h3> <a 626 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags">AWS 627 * API Reference</a></p> 628 */ 629 virtual Model::CreateTagsOutcome CreateTags(const Model::CreateTagsRequest& request) const; 630 631 /** 632 * <p>Creates the specified tags for the specified WorkSpaces 633 * resource.</p><p><h3>See Also:</h3> <a 634 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags">AWS 635 * API Reference</a></p> 636 * 637 * returns a future to the operation so that it can be executed in parallel to other requests. 638 */ 639 virtual Model::CreateTagsOutcomeCallable CreateTagsCallable(const Model::CreateTagsRequest& request) const; 640 641 /** 642 * <p>Creates the specified tags for the specified WorkSpaces 643 * resource.</p><p><h3>See Also:</h3> <a 644 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags">AWS 645 * API Reference</a></p> 646 * 647 * Queues the request into a thread executor and triggers associated callback when operation has finished. 648 */ 649 virtual void CreateTagsAsync(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 650 651 /** 652 * <p>Creates a new updated WorkSpace image based on the specified source image. 653 * The new updated WorkSpace image has the latest drivers and other updates 654 * required by the Amazon WorkSpaces components.</p> <p>To determine which 655 * WorkSpace images need to be updated with the latest Amazon WorkSpaces 656 * requirements, use <a 657 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html"> 658 * DescribeWorkspaceImages</a>.</p> <ul> <li> <p>Only Windows 10 WorkSpace 659 * images can be programmatically updated at this time.</p> </li> <li> <p>Microsoft 660 * Windows updates and other application updates are not included in the update 661 * process.</p> </li> <li> <p>The source WorkSpace image is not deleted. You can 662 * delete the source image after you've verified your new updated image and created 663 * a new bundle. </p> </li> </ul> <p><h3>See Also:</h3> <a 664 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateUpdatedWorkspaceImage">AWS 665 * API Reference</a></p> 666 */ 667 virtual Model::CreateUpdatedWorkspaceImageOutcome CreateUpdatedWorkspaceImage(const Model::CreateUpdatedWorkspaceImageRequest& request) const; 668 669 /** 670 * <p>Creates a new updated WorkSpace image based on the specified source image. 671 * The new updated WorkSpace image has the latest drivers and other updates 672 * required by the Amazon WorkSpaces components.</p> <p>To determine which 673 * WorkSpace images need to be updated with the latest Amazon WorkSpaces 674 * requirements, use <a 675 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html"> 676 * DescribeWorkspaceImages</a>.</p> <ul> <li> <p>Only Windows 10 WorkSpace 677 * images can be programmatically updated at this time.</p> </li> <li> <p>Microsoft 678 * Windows updates and other application updates are not included in the update 679 * process.</p> </li> <li> <p>The source WorkSpace image is not deleted. You can 680 * delete the source image after you've verified your new updated image and created 681 * a new bundle. </p> </li> </ul> <p><h3>See Also:</h3> <a 682 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateUpdatedWorkspaceImage">AWS 683 * API Reference</a></p> 684 * 685 * returns a future to the operation so that it can be executed in parallel to other requests. 686 */ 687 virtual Model::CreateUpdatedWorkspaceImageOutcomeCallable CreateUpdatedWorkspaceImageCallable(const Model::CreateUpdatedWorkspaceImageRequest& request) const; 688 689 /** 690 * <p>Creates a new updated WorkSpace image based on the specified source image. 691 * The new updated WorkSpace image has the latest drivers and other updates 692 * required by the Amazon WorkSpaces components.</p> <p>To determine which 693 * WorkSpace images need to be updated with the latest Amazon WorkSpaces 694 * requirements, use <a 695 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaceImages.html"> 696 * DescribeWorkspaceImages</a>.</p> <ul> <li> <p>Only Windows 10 WorkSpace 697 * images can be programmatically updated at this time.</p> </li> <li> <p>Microsoft 698 * Windows updates and other application updates are not included in the update 699 * process.</p> </li> <li> <p>The source WorkSpace image is not deleted. You can 700 * delete the source image after you've verified your new updated image and created 701 * a new bundle. </p> </li> </ul> <p><h3>See Also:</h3> <a 702 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateUpdatedWorkspaceImage">AWS 703 * API Reference</a></p> 704 * 705 * Queues the request into a thread executor and triggers associated callback when operation has finished. 706 */ 707 virtual void CreateUpdatedWorkspaceImageAsync(const Model::CreateUpdatedWorkspaceImageRequest& request, const CreateUpdatedWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 708 709 /** 710 * <p>Creates the specified WorkSpace bundle. For more information about creating 711 * WorkSpace bundles, see <a 712 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/create-custom-bundle.html"> 713 * Create a Custom WorkSpaces Image and Bundle</a>.</p><p><h3>See Also:</h3> <a 714 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaceBundle">AWS 715 * API Reference</a></p> 716 */ 717 virtual Model::CreateWorkspaceBundleOutcome CreateWorkspaceBundle(const Model::CreateWorkspaceBundleRequest& request) const; 718 719 /** 720 * <p>Creates the specified WorkSpace bundle. For more information about creating 721 * WorkSpace bundles, see <a 722 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/create-custom-bundle.html"> 723 * Create a Custom WorkSpaces Image and Bundle</a>.</p><p><h3>See Also:</h3> <a 724 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaceBundle">AWS 725 * API Reference</a></p> 726 * 727 * returns a future to the operation so that it can be executed in parallel to other requests. 728 */ 729 virtual Model::CreateWorkspaceBundleOutcomeCallable CreateWorkspaceBundleCallable(const Model::CreateWorkspaceBundleRequest& request) const; 730 731 /** 732 * <p>Creates the specified WorkSpace bundle. For more information about creating 733 * WorkSpace bundles, see <a 734 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/create-custom-bundle.html"> 735 * Create a Custom WorkSpaces Image and Bundle</a>.</p><p><h3>See Also:</h3> <a 736 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaceBundle">AWS 737 * API Reference</a></p> 738 * 739 * Queues the request into a thread executor and triggers associated callback when operation has finished. 740 */ 741 virtual void CreateWorkspaceBundleAsync(const Model::CreateWorkspaceBundleRequest& request, const CreateWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 742 743 /** 744 * <p>Creates one or more WorkSpaces.</p> <p>This operation is asynchronous and 745 * returns before the WorkSpaces are created.</p><p><h3>See Also:</h3> <a 746 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces">AWS 747 * API Reference</a></p> 748 */ 749 virtual Model::CreateWorkspacesOutcome CreateWorkspaces(const Model::CreateWorkspacesRequest& request) const; 750 751 /** 752 * <p>Creates one or more WorkSpaces.</p> <p>This operation is asynchronous and 753 * returns before the WorkSpaces are created.</p><p><h3>See Also:</h3> <a 754 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces">AWS 755 * API Reference</a></p> 756 * 757 * returns a future to the operation so that it can be executed in parallel to other requests. 758 */ 759 virtual Model::CreateWorkspacesOutcomeCallable CreateWorkspacesCallable(const Model::CreateWorkspacesRequest& request) const; 760 761 /** 762 * <p>Creates one or more WorkSpaces.</p> <p>This operation is asynchronous and 763 * returns before the WorkSpaces are created.</p><p><h3>See Also:</h3> <a 764 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces">AWS 765 * API Reference</a></p> 766 * 767 * Queues the request into a thread executor and triggers associated callback when operation has finished. 768 */ 769 virtual void CreateWorkspacesAsync(const Model::CreateWorkspacesRequest& request, const CreateWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 770 771 /** 772 * <p>Deletes the specified connection alias. For more information, see <a 773 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 774 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p> <b>If 775 * you will no longer be using a fully qualified domain name (FQDN) as the 776 * registration code for your WorkSpaces users, you must take certain precautions 777 * to prevent potential security issues.</b> For more information, see <a 778 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html#cross-region-redirection-security-considerations"> 779 * Security Considerations if You Stop Using Cross-Region Redirection</a>.</p> 780 * <p>To delete a connection alias that has been shared, the 781 * shared account must first disassociate the connection alias from any directories 782 * it has been associated with. Then you must unshare the connection alias from the 783 * account it has been shared with. You can delete a connection alias only after it 784 * is no longer shared with any accounts or associated with any directories.</p> 785 * <p><h3>See Also:</h3> <a 786 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAlias">AWS 787 * API Reference</a></p> 788 */ 789 virtual Model::DeleteConnectionAliasOutcome DeleteConnectionAlias(const Model::DeleteConnectionAliasRequest& request) const; 790 791 /** 792 * <p>Deletes the specified connection alias. For more information, see <a 793 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 794 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p> <b>If 795 * you will no longer be using a fully qualified domain name (FQDN) as the 796 * registration code for your WorkSpaces users, you must take certain precautions 797 * to prevent potential security issues.</b> For more information, see <a 798 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html#cross-region-redirection-security-considerations"> 799 * Security Considerations if You Stop Using Cross-Region Redirection</a>.</p> 800 * <p>To delete a connection alias that has been shared, the 801 * shared account must first disassociate the connection alias from any directories 802 * it has been associated with. Then you must unshare the connection alias from the 803 * account it has been shared with. You can delete a connection alias only after it 804 * is no longer shared with any accounts or associated with any directories.</p> 805 * <p><h3>See Also:</h3> <a 806 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAlias">AWS 807 * API Reference</a></p> 808 * 809 * returns a future to the operation so that it can be executed in parallel to other requests. 810 */ 811 virtual Model::DeleteConnectionAliasOutcomeCallable DeleteConnectionAliasCallable(const Model::DeleteConnectionAliasRequest& request) const; 812 813 /** 814 * <p>Deletes the specified connection alias. For more information, see <a 815 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 816 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p> <b>If 817 * you will no longer be using a fully qualified domain name (FQDN) as the 818 * registration code for your WorkSpaces users, you must take certain precautions 819 * to prevent potential security issues.</b> For more information, see <a 820 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html#cross-region-redirection-security-considerations"> 821 * Security Considerations if You Stop Using Cross-Region Redirection</a>.</p> 822 * <p>To delete a connection alias that has been shared, the 823 * shared account must first disassociate the connection alias from any directories 824 * it has been associated with. Then you must unshare the connection alias from the 825 * account it has been shared with. You can delete a connection alias only after it 826 * is no longer shared with any accounts or associated with any directories.</p> 827 * <p><h3>See Also:</h3> <a 828 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteConnectionAlias">AWS 829 * API Reference</a></p> 830 * 831 * Queues the request into a thread executor and triggers associated callback when operation has finished. 832 */ 833 virtual void DeleteConnectionAliasAsync(const Model::DeleteConnectionAliasRequest& request, const DeleteConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 834 835 /** 836 * <p>Deletes the specified IP access control group.</p> <p>You cannot delete an IP 837 * access control group that is associated with a directory.</p><p><h3>See 838 * Also:</h3> <a 839 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup">AWS 840 * API Reference</a></p> 841 */ 842 virtual Model::DeleteIpGroupOutcome DeleteIpGroup(const Model::DeleteIpGroupRequest& request) const; 843 844 /** 845 * <p>Deletes the specified IP access control group.</p> <p>You cannot delete an IP 846 * access control group that is associated with a directory.</p><p><h3>See 847 * Also:</h3> <a 848 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup">AWS 849 * API Reference</a></p> 850 * 851 * returns a future to the operation so that it can be executed in parallel to other requests. 852 */ 853 virtual Model::DeleteIpGroupOutcomeCallable DeleteIpGroupCallable(const Model::DeleteIpGroupRequest& request) const; 854 855 /** 856 * <p>Deletes the specified IP access control group.</p> <p>You cannot delete an IP 857 * access control group that is associated with a directory.</p><p><h3>See 858 * Also:</h3> <a 859 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup">AWS 860 * API Reference</a></p> 861 * 862 * Queues the request into a thread executor and triggers associated callback when operation has finished. 863 */ 864 virtual void DeleteIpGroupAsync(const Model::DeleteIpGroupRequest& request, const DeleteIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 865 866 /** 867 * <p>Deletes the specified tags from the specified WorkSpaces 868 * resource.</p><p><h3>See Also:</h3> <a 869 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags">AWS 870 * API Reference</a></p> 871 */ 872 virtual Model::DeleteTagsOutcome DeleteTags(const Model::DeleteTagsRequest& request) const; 873 874 /** 875 * <p>Deletes the specified tags from the specified WorkSpaces 876 * resource.</p><p><h3>See Also:</h3> <a 877 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags">AWS 878 * API Reference</a></p> 879 * 880 * returns a future to the operation so that it can be executed in parallel to other requests. 881 */ 882 virtual Model::DeleteTagsOutcomeCallable DeleteTagsCallable(const Model::DeleteTagsRequest& request) const; 883 884 /** 885 * <p>Deletes the specified tags from the specified WorkSpaces 886 * resource.</p><p><h3>See Also:</h3> <a 887 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags">AWS 888 * API Reference</a></p> 889 * 890 * Queues the request into a thread executor and triggers associated callback when operation has finished. 891 */ 892 virtual void DeleteTagsAsync(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 893 894 /** 895 * <p>Deletes the specified WorkSpace bundle. For more information about deleting 896 * WorkSpace bundles, see <a 897 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete_bundle.html"> 898 * Delete a Custom WorkSpaces Bundle or Image</a>.</p><p><h3>See Also:</h3> <a 899 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceBundle">AWS 900 * API Reference</a></p> 901 */ 902 virtual Model::DeleteWorkspaceBundleOutcome DeleteWorkspaceBundle(const Model::DeleteWorkspaceBundleRequest& request) const; 903 904 /** 905 * <p>Deletes the specified WorkSpace bundle. For more information about deleting 906 * WorkSpace bundles, see <a 907 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete_bundle.html"> 908 * Delete a Custom WorkSpaces Bundle or Image</a>.</p><p><h3>See Also:</h3> <a 909 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceBundle">AWS 910 * API Reference</a></p> 911 * 912 * returns a future to the operation so that it can be executed in parallel to other requests. 913 */ 914 virtual Model::DeleteWorkspaceBundleOutcomeCallable DeleteWorkspaceBundleCallable(const Model::DeleteWorkspaceBundleRequest& request) const; 915 916 /** 917 * <p>Deletes the specified WorkSpace bundle. For more information about deleting 918 * WorkSpace bundles, see <a 919 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete_bundle.html"> 920 * Delete a Custom WorkSpaces Bundle or Image</a>.</p><p><h3>See Also:</h3> <a 921 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceBundle">AWS 922 * API Reference</a></p> 923 * 924 * Queues the request into a thread executor and triggers associated callback when operation has finished. 925 */ 926 virtual void DeleteWorkspaceBundleAsync(const Model::DeleteWorkspaceBundleRequest& request, const DeleteWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 927 928 /** 929 * <p>Deletes the specified image from your account. To delete an image, you must 930 * first delete any bundles that are associated with the image and unshare the 931 * image if it is shared with other accounts. </p><p><h3>See Also:</h3> <a 932 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceImage">AWS 933 * API Reference</a></p> 934 */ 935 virtual Model::DeleteWorkspaceImageOutcome DeleteWorkspaceImage(const Model::DeleteWorkspaceImageRequest& request) const; 936 937 /** 938 * <p>Deletes the specified image from your account. To delete an image, you must 939 * first delete any bundles that are associated with the image and unshare the 940 * image if it is shared with other accounts. </p><p><h3>See Also:</h3> <a 941 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceImage">AWS 942 * API Reference</a></p> 943 * 944 * returns a future to the operation so that it can be executed in parallel to other requests. 945 */ 946 virtual Model::DeleteWorkspaceImageOutcomeCallable DeleteWorkspaceImageCallable(const Model::DeleteWorkspaceImageRequest& request) const; 947 948 /** 949 * <p>Deletes the specified image from your account. To delete an image, you must 950 * first delete any bundles that are associated with the image and unshare the 951 * image if it is shared with other accounts. </p><p><h3>See Also:</h3> <a 952 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceImage">AWS 953 * API Reference</a></p> 954 * 955 * Queues the request into a thread executor and triggers associated callback when operation has finished. 956 */ 957 virtual void DeleteWorkspaceImageAsync(const Model::DeleteWorkspaceImageRequest& request, const DeleteWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 958 959 /** 960 * <p>Deregisters the specified directory. This operation is asynchronous and 961 * returns before the WorkSpace directory is deregistered. If any WorkSpaces are 962 * registered to this directory, you must remove them before you can deregister the 963 * directory.</p> <p>Simple AD and AD Connector are made available to you 964 * free of charge to use with WorkSpaces. If there are no WorkSpaces being used 965 * with your Simple AD or AD Connector directory for 30 consecutive days, this 966 * directory will be automatically deregistered for use with Amazon WorkSpaces, and 967 * you will be charged for this directory as per the <a 968 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 969 * terms</a>.</p> <p>To delete empty directories, see <a 970 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 971 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 972 * Connector directory, you can always create a new one when you want to start 973 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 974 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeregisterWorkspaceDirectory">AWS 975 * API Reference</a></p> 976 */ 977 virtual Model::DeregisterWorkspaceDirectoryOutcome DeregisterWorkspaceDirectory(const Model::DeregisterWorkspaceDirectoryRequest& request) const; 978 979 /** 980 * <p>Deregisters the specified directory. This operation is asynchronous and 981 * returns before the WorkSpace directory is deregistered. If any WorkSpaces are 982 * registered to this directory, you must remove them before you can deregister the 983 * directory.</p> <p>Simple AD and AD Connector are made available to you 984 * free of charge to use with WorkSpaces. If there are no WorkSpaces being used 985 * with your Simple AD or AD Connector directory for 30 consecutive days, this 986 * directory will be automatically deregistered for use with Amazon WorkSpaces, and 987 * you will be charged for this directory as per the <a 988 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 989 * terms</a>.</p> <p>To delete empty directories, see <a 990 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 991 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 992 * Connector directory, you can always create a new one when you want to start 993 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 994 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeregisterWorkspaceDirectory">AWS 995 * API Reference</a></p> 996 * 997 * returns a future to the operation so that it can be executed in parallel to other requests. 998 */ 999 virtual Model::DeregisterWorkspaceDirectoryOutcomeCallable DeregisterWorkspaceDirectoryCallable(const Model::DeregisterWorkspaceDirectoryRequest& request) const; 1000 1001 /** 1002 * <p>Deregisters the specified directory. This operation is asynchronous and 1003 * returns before the WorkSpace directory is deregistered. If any WorkSpaces are 1004 * registered to this directory, you must remove them before you can deregister the 1005 * directory.</p> <p>Simple AD and AD Connector are made available to you 1006 * free of charge to use with WorkSpaces. If there are no WorkSpaces being used 1007 * with your Simple AD or AD Connector directory for 30 consecutive days, this 1008 * directory will be automatically deregistered for use with Amazon WorkSpaces, and 1009 * you will be charged for this directory as per the <a 1010 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 1011 * terms</a>.</p> <p>To delete empty directories, see <a 1012 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 1013 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 1014 * Connector directory, you can always create a new one when you want to start 1015 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 1016 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeregisterWorkspaceDirectory">AWS 1017 * API Reference</a></p> 1018 * 1019 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1020 */ 1021 virtual void DeregisterWorkspaceDirectoryAsync(const Model::DeregisterWorkspaceDirectoryRequest& request, const DeregisterWorkspaceDirectoryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1022 1023 /** 1024 * <p>Retrieves a list that describes the configuration of Bring Your Own License 1025 * (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1026 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccount">AWS 1027 * API Reference</a></p> 1028 */ 1029 virtual Model::DescribeAccountOutcome DescribeAccount(const Model::DescribeAccountRequest& request) const; 1030 1031 /** 1032 * <p>Retrieves a list that describes the configuration of Bring Your Own License 1033 * (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1034 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccount">AWS 1035 * API Reference</a></p> 1036 * 1037 * returns a future to the operation so that it can be executed in parallel to other requests. 1038 */ 1039 virtual Model::DescribeAccountOutcomeCallable DescribeAccountCallable(const Model::DescribeAccountRequest& request) const; 1040 1041 /** 1042 * <p>Retrieves a list that describes the configuration of Bring Your Own License 1043 * (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1044 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccount">AWS 1045 * API Reference</a></p> 1046 * 1047 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1048 */ 1049 virtual void DescribeAccountAsync(const Model::DescribeAccountRequest& request, const DescribeAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1050 1051 /** 1052 * <p>Retrieves a list that describes modifications to the configuration of Bring 1053 * Your Own License (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1054 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccountModifications">AWS 1055 * API Reference</a></p> 1056 */ 1057 virtual Model::DescribeAccountModificationsOutcome DescribeAccountModifications(const Model::DescribeAccountModificationsRequest& request) const; 1058 1059 /** 1060 * <p>Retrieves a list that describes modifications to the configuration of Bring 1061 * Your Own License (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1062 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccountModifications">AWS 1063 * API Reference</a></p> 1064 * 1065 * returns a future to the operation so that it can be executed in parallel to other requests. 1066 */ 1067 virtual Model::DescribeAccountModificationsOutcomeCallable DescribeAccountModificationsCallable(const Model::DescribeAccountModificationsRequest& request) const; 1068 1069 /** 1070 * <p>Retrieves a list that describes modifications to the configuration of Bring 1071 * Your Own License (BYOL) for the specified account.</p><p><h3>See Also:</h3> <a 1072 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeAccountModifications">AWS 1073 * API Reference</a></p> 1074 * 1075 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1076 */ 1077 virtual void DescribeAccountModificationsAsync(const Model::DescribeAccountModificationsRequest& request, const DescribeAccountModificationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1078 1079 /** 1080 * <p>Retrieves a list that describes one or more specified Amazon WorkSpaces 1081 * clients.</p><p><h3>See Also:</h3> <a 1082 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeClientProperties">AWS 1083 * API Reference</a></p> 1084 */ 1085 virtual Model::DescribeClientPropertiesOutcome DescribeClientProperties(const Model::DescribeClientPropertiesRequest& request) const; 1086 1087 /** 1088 * <p>Retrieves a list that describes one or more specified Amazon WorkSpaces 1089 * clients.</p><p><h3>See Also:</h3> <a 1090 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeClientProperties">AWS 1091 * API Reference</a></p> 1092 * 1093 * returns a future to the operation so that it can be executed in parallel to other requests. 1094 */ 1095 virtual Model::DescribeClientPropertiesOutcomeCallable DescribeClientPropertiesCallable(const Model::DescribeClientPropertiesRequest& request) const; 1096 1097 /** 1098 * <p>Retrieves a list that describes one or more specified Amazon WorkSpaces 1099 * clients.</p><p><h3>See Also:</h3> <a 1100 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeClientProperties">AWS 1101 * API Reference</a></p> 1102 * 1103 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1104 */ 1105 virtual void DescribeClientPropertiesAsync(const Model::DescribeClientPropertiesRequest& request, const DescribeClientPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1106 1107 /** 1108 * <p>Describes the permissions that the owner of a connection alias has granted to 1109 * another Amazon Web Services account for the specified connection alias. For more 1110 * information, see <a 1111 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1112 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1113 * <a 1114 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissions">AWS 1115 * API Reference</a></p> 1116 */ 1117 virtual Model::DescribeConnectionAliasPermissionsOutcome DescribeConnectionAliasPermissions(const Model::DescribeConnectionAliasPermissionsRequest& request) const; 1118 1119 /** 1120 * <p>Describes the permissions that the owner of a connection alias has granted to 1121 * another Amazon Web Services account for the specified connection alias. For more 1122 * information, see <a 1123 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1124 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1125 * <a 1126 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissions">AWS 1127 * API Reference</a></p> 1128 * 1129 * returns a future to the operation so that it can be executed in parallel to other requests. 1130 */ 1131 virtual Model::DescribeConnectionAliasPermissionsOutcomeCallable DescribeConnectionAliasPermissionsCallable(const Model::DescribeConnectionAliasPermissionsRequest& request) const; 1132 1133 /** 1134 * <p>Describes the permissions that the owner of a connection alias has granted to 1135 * another Amazon Web Services account for the specified connection alias. For more 1136 * information, see <a 1137 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1138 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1139 * <a 1140 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliasPermissions">AWS 1141 * API Reference</a></p> 1142 * 1143 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1144 */ 1145 virtual void DescribeConnectionAliasPermissionsAsync(const Model::DescribeConnectionAliasPermissionsRequest& request, const DescribeConnectionAliasPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1146 1147 /** 1148 * <p>Retrieves a list that describes the connection aliases used for cross-Region 1149 * redirection. For more information, see <a 1150 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1151 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1152 * <a 1153 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliases">AWS 1154 * API Reference</a></p> 1155 */ 1156 virtual Model::DescribeConnectionAliasesOutcome DescribeConnectionAliases(const Model::DescribeConnectionAliasesRequest& request) const; 1157 1158 /** 1159 * <p>Retrieves a list that describes the connection aliases used for cross-Region 1160 * redirection. For more information, see <a 1161 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1162 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1163 * <a 1164 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliases">AWS 1165 * API Reference</a></p> 1166 * 1167 * returns a future to the operation so that it can be executed in parallel to other requests. 1168 */ 1169 virtual Model::DescribeConnectionAliasesOutcomeCallable DescribeConnectionAliasesCallable(const Model::DescribeConnectionAliasesRequest& request) const; 1170 1171 /** 1172 * <p>Retrieves a list that describes the connection aliases used for cross-Region 1173 * redirection. For more information, see <a 1174 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1175 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p><p><h3>See Also:</h3> 1176 * <a 1177 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeConnectionAliases">AWS 1178 * API Reference</a></p> 1179 * 1180 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1181 */ 1182 virtual void DescribeConnectionAliasesAsync(const Model::DescribeConnectionAliasesRequest& request, const DescribeConnectionAliasesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1183 1184 /** 1185 * <p>Describes one or more of your IP access control groups.</p><p><h3>See 1186 * Also:</h3> <a 1187 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups">AWS 1188 * API Reference</a></p> 1189 */ 1190 virtual Model::DescribeIpGroupsOutcome DescribeIpGroups(const Model::DescribeIpGroupsRequest& request) const; 1191 1192 /** 1193 * <p>Describes one or more of your IP access control groups.</p><p><h3>See 1194 * Also:</h3> <a 1195 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups">AWS 1196 * API Reference</a></p> 1197 * 1198 * returns a future to the operation so that it can be executed in parallel to other requests. 1199 */ 1200 virtual Model::DescribeIpGroupsOutcomeCallable DescribeIpGroupsCallable(const Model::DescribeIpGroupsRequest& request) const; 1201 1202 /** 1203 * <p>Describes one or more of your IP access control groups.</p><p><h3>See 1204 * Also:</h3> <a 1205 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups">AWS 1206 * API Reference</a></p> 1207 * 1208 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1209 */ 1210 virtual void DescribeIpGroupsAsync(const Model::DescribeIpGroupsRequest& request, const DescribeIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1211 1212 /** 1213 * <p>Describes the specified tags for the specified WorkSpaces 1214 * resource.</p><p><h3>See Also:</h3> <a 1215 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags">AWS 1216 * API Reference</a></p> 1217 */ 1218 virtual Model::DescribeTagsOutcome DescribeTags(const Model::DescribeTagsRequest& request) const; 1219 1220 /** 1221 * <p>Describes the specified tags for the specified WorkSpaces 1222 * resource.</p><p><h3>See Also:</h3> <a 1223 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags">AWS 1224 * API Reference</a></p> 1225 * 1226 * returns a future to the operation so that it can be executed in parallel to other requests. 1227 */ 1228 virtual Model::DescribeTagsOutcomeCallable DescribeTagsCallable(const Model::DescribeTagsRequest& request) const; 1229 1230 /** 1231 * <p>Describes the specified tags for the specified WorkSpaces 1232 * resource.</p><p><h3>See Also:</h3> <a 1233 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags">AWS 1234 * API Reference</a></p> 1235 * 1236 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1237 */ 1238 virtual void DescribeTagsAsync(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1239 1240 /** 1241 * <p>Retrieves a list that describes the available WorkSpace bundles.</p> <p>You 1242 * can filter the results using either bundle ID or owner, but not 1243 * both.</p><p><h3>See Also:</h3> <a 1244 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles">AWS 1245 * API Reference</a></p> 1246 */ 1247 virtual Model::DescribeWorkspaceBundlesOutcome DescribeWorkspaceBundles(const Model::DescribeWorkspaceBundlesRequest& request) const; 1248 1249 /** 1250 * <p>Retrieves a list that describes the available WorkSpace bundles.</p> <p>You 1251 * can filter the results using either bundle ID or owner, but not 1252 * both.</p><p><h3>See Also:</h3> <a 1253 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles">AWS 1254 * API Reference</a></p> 1255 * 1256 * returns a future to the operation so that it can be executed in parallel to other requests. 1257 */ 1258 virtual Model::DescribeWorkspaceBundlesOutcomeCallable DescribeWorkspaceBundlesCallable(const Model::DescribeWorkspaceBundlesRequest& request) const; 1259 1260 /** 1261 * <p>Retrieves a list that describes the available WorkSpace bundles.</p> <p>You 1262 * can filter the results using either bundle ID or owner, but not 1263 * both.</p><p><h3>See Also:</h3> <a 1264 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles">AWS 1265 * API Reference</a></p> 1266 * 1267 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1268 */ 1269 virtual void DescribeWorkspaceBundlesAsync(const Model::DescribeWorkspaceBundlesRequest& request, const DescribeWorkspaceBundlesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1270 1271 /** 1272 * <p>Describes the available directories that are registered with Amazon 1273 * WorkSpaces.</p><p><h3>See Also:</h3> <a 1274 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories">AWS 1275 * API Reference</a></p> 1276 */ 1277 virtual Model::DescribeWorkspaceDirectoriesOutcome DescribeWorkspaceDirectories(const Model::DescribeWorkspaceDirectoriesRequest& request) const; 1278 1279 /** 1280 * <p>Describes the available directories that are registered with Amazon 1281 * WorkSpaces.</p><p><h3>See Also:</h3> <a 1282 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories">AWS 1283 * API Reference</a></p> 1284 * 1285 * returns a future to the operation so that it can be executed in parallel to other requests. 1286 */ 1287 virtual Model::DescribeWorkspaceDirectoriesOutcomeCallable DescribeWorkspaceDirectoriesCallable(const Model::DescribeWorkspaceDirectoriesRequest& request) const; 1288 1289 /** 1290 * <p>Describes the available directories that are registered with Amazon 1291 * WorkSpaces.</p><p><h3>See Also:</h3> <a 1292 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories">AWS 1293 * API Reference</a></p> 1294 * 1295 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1296 */ 1297 virtual void DescribeWorkspaceDirectoriesAsync(const Model::DescribeWorkspaceDirectoriesRequest& request, const DescribeWorkspaceDirectoriesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1298 1299 /** 1300 * <p>Describes the permissions that the owner of an image has granted to other 1301 * Amazon Web Services accounts for an image.</p><p><h3>See Also:</h3> <a 1302 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions">AWS 1303 * API Reference</a></p> 1304 */ 1305 virtual Model::DescribeWorkspaceImagePermissionsOutcome DescribeWorkspaceImagePermissions(const Model::DescribeWorkspaceImagePermissionsRequest& request) const; 1306 1307 /** 1308 * <p>Describes the permissions that the owner of an image has granted to other 1309 * Amazon Web Services accounts for an image.</p><p><h3>See Also:</h3> <a 1310 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions">AWS 1311 * API Reference</a></p> 1312 * 1313 * returns a future to the operation so that it can be executed in parallel to other requests. 1314 */ 1315 virtual Model::DescribeWorkspaceImagePermissionsOutcomeCallable DescribeWorkspaceImagePermissionsCallable(const Model::DescribeWorkspaceImagePermissionsRequest& request) const; 1316 1317 /** 1318 * <p>Describes the permissions that the owner of an image has granted to other 1319 * Amazon Web Services accounts for an image.</p><p><h3>See Also:</h3> <a 1320 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions">AWS 1321 * API Reference</a></p> 1322 * 1323 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1324 */ 1325 virtual void DescribeWorkspaceImagePermissionsAsync(const Model::DescribeWorkspaceImagePermissionsRequest& request, const DescribeWorkspaceImagePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1326 1327 /** 1328 * <p>Retrieves a list that describes one or more specified images, if the image 1329 * identifiers are provided. Otherwise, all images in the account are described. 1330 * </p><p><h3>See Also:</h3> <a 1331 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImages">AWS 1332 * API Reference</a></p> 1333 */ 1334 virtual Model::DescribeWorkspaceImagesOutcome DescribeWorkspaceImages(const Model::DescribeWorkspaceImagesRequest& request) const; 1335 1336 /** 1337 * <p>Retrieves a list that describes one or more specified images, if the image 1338 * identifiers are provided. Otherwise, all images in the account are described. 1339 * </p><p><h3>See Also:</h3> <a 1340 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImages">AWS 1341 * API Reference</a></p> 1342 * 1343 * returns a future to the operation so that it can be executed in parallel to other requests. 1344 */ 1345 virtual Model::DescribeWorkspaceImagesOutcomeCallable DescribeWorkspaceImagesCallable(const Model::DescribeWorkspaceImagesRequest& request) const; 1346 1347 /** 1348 * <p>Retrieves a list that describes one or more specified images, if the image 1349 * identifiers are provided. Otherwise, all images in the account are described. 1350 * </p><p><h3>See Also:</h3> <a 1351 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImages">AWS 1352 * API Reference</a></p> 1353 * 1354 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1355 */ 1356 virtual void DescribeWorkspaceImagesAsync(const Model::DescribeWorkspaceImagesRequest& request, const DescribeWorkspaceImagesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1357 1358 /** 1359 * <p>Describes the snapshots for the specified WorkSpace.</p><p><h3>See Also:</h3> 1360 * <a 1361 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceSnapshots">AWS 1362 * API Reference</a></p> 1363 */ 1364 virtual Model::DescribeWorkspaceSnapshotsOutcome DescribeWorkspaceSnapshots(const Model::DescribeWorkspaceSnapshotsRequest& request) const; 1365 1366 /** 1367 * <p>Describes the snapshots for the specified WorkSpace.</p><p><h3>See Also:</h3> 1368 * <a 1369 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceSnapshots">AWS 1370 * API Reference</a></p> 1371 * 1372 * returns a future to the operation so that it can be executed in parallel to other requests. 1373 */ 1374 virtual Model::DescribeWorkspaceSnapshotsOutcomeCallable DescribeWorkspaceSnapshotsCallable(const Model::DescribeWorkspaceSnapshotsRequest& request) const; 1375 1376 /** 1377 * <p>Describes the snapshots for the specified WorkSpace.</p><p><h3>See Also:</h3> 1378 * <a 1379 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceSnapshots">AWS 1380 * API Reference</a></p> 1381 * 1382 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1383 */ 1384 virtual void DescribeWorkspaceSnapshotsAsync(const Model::DescribeWorkspaceSnapshotsRequest& request, const DescribeWorkspaceSnapshotsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1385 1386 /** 1387 * <p>Describes the specified WorkSpaces.</p> <p>You can filter the results by 1388 * using the bundle identifier, directory identifier, or owner, but you can specify 1389 * only one filter at a time.</p><p><h3>See Also:</h3> <a 1390 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces">AWS 1391 * API Reference</a></p> 1392 */ 1393 virtual Model::DescribeWorkspacesOutcome DescribeWorkspaces(const Model::DescribeWorkspacesRequest& request) const; 1394 1395 /** 1396 * <p>Describes the specified WorkSpaces.</p> <p>You can filter the results by 1397 * using the bundle identifier, directory identifier, or owner, but you can specify 1398 * only one filter at a time.</p><p><h3>See Also:</h3> <a 1399 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces">AWS 1400 * API Reference</a></p> 1401 * 1402 * returns a future to the operation so that it can be executed in parallel to other requests. 1403 */ 1404 virtual Model::DescribeWorkspacesOutcomeCallable DescribeWorkspacesCallable(const Model::DescribeWorkspacesRequest& request) const; 1405 1406 /** 1407 * <p>Describes the specified WorkSpaces.</p> <p>You can filter the results by 1408 * using the bundle identifier, directory identifier, or owner, but you can specify 1409 * only one filter at a time.</p><p><h3>See Also:</h3> <a 1410 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces">AWS 1411 * API Reference</a></p> 1412 * 1413 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1414 */ 1415 virtual void DescribeWorkspacesAsync(const Model::DescribeWorkspacesRequest& request, const DescribeWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1416 1417 /** 1418 * <p>Describes the connection status of the specified WorkSpaces.</p><p><h3>See 1419 * Also:</h3> <a 1420 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus">AWS 1421 * API Reference</a></p> 1422 */ 1423 virtual Model::DescribeWorkspacesConnectionStatusOutcome DescribeWorkspacesConnectionStatus(const Model::DescribeWorkspacesConnectionStatusRequest& request) const; 1424 1425 /** 1426 * <p>Describes the connection status of the specified WorkSpaces.</p><p><h3>See 1427 * Also:</h3> <a 1428 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus">AWS 1429 * API Reference</a></p> 1430 * 1431 * returns a future to the operation so that it can be executed in parallel to other requests. 1432 */ 1433 virtual Model::DescribeWorkspacesConnectionStatusOutcomeCallable DescribeWorkspacesConnectionStatusCallable(const Model::DescribeWorkspacesConnectionStatusRequest& request) const; 1434 1435 /** 1436 * <p>Describes the connection status of the specified WorkSpaces.</p><p><h3>See 1437 * Also:</h3> <a 1438 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus">AWS 1439 * API Reference</a></p> 1440 * 1441 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1442 */ 1443 virtual void DescribeWorkspacesConnectionStatusAsync(const Model::DescribeWorkspacesConnectionStatusRequest& request, const DescribeWorkspacesConnectionStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1444 1445 /** 1446 * <p>Disassociates a connection alias from a directory. Disassociating a 1447 * connection alias disables cross-Region redirection between two directories in 1448 * different Regions. For more information, see <a 1449 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1450 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 1451 * performing this operation, call <a 1452 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 1453 * DescribeConnectionAliases</a> to make sure that the current state of the 1454 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 1455 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAlias">AWS 1456 * API Reference</a></p> 1457 */ 1458 virtual Model::DisassociateConnectionAliasOutcome DisassociateConnectionAlias(const Model::DisassociateConnectionAliasRequest& request) const; 1459 1460 /** 1461 * <p>Disassociates a connection alias from a directory. Disassociating a 1462 * connection alias disables cross-Region redirection between two directories in 1463 * different Regions. For more information, see <a 1464 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1465 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 1466 * performing this operation, call <a 1467 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 1468 * DescribeConnectionAliases</a> to make sure that the current state of the 1469 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 1470 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAlias">AWS 1471 * API Reference</a></p> 1472 * 1473 * returns a future to the operation so that it can be executed in parallel to other requests. 1474 */ 1475 virtual Model::DisassociateConnectionAliasOutcomeCallable DisassociateConnectionAliasCallable(const Model::DisassociateConnectionAliasRequest& request) const; 1476 1477 /** 1478 * <p>Disassociates a connection alias from a directory. Disassociating a 1479 * connection alias disables cross-Region redirection between two directories in 1480 * different Regions. For more information, see <a 1481 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 1482 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <p>Before 1483 * performing this operation, call <a 1484 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 1485 * DescribeConnectionAliases</a> to make sure that the current state of the 1486 * connection alias is <code>CREATED</code>.</p> <p><h3>See Also:</h3> <a 1487 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateConnectionAlias">AWS 1488 * API Reference</a></p> 1489 * 1490 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1491 */ 1492 virtual void DisassociateConnectionAliasAsync(const Model::DisassociateConnectionAliasRequest& request, const DisassociateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1493 1494 /** 1495 * <p>Disassociates the specified IP access control group from the specified 1496 * directory.</p><p><h3>See Also:</h3> <a 1497 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups">AWS 1498 * API Reference</a></p> 1499 */ 1500 virtual Model::DisassociateIpGroupsOutcome DisassociateIpGroups(const Model::DisassociateIpGroupsRequest& request) const; 1501 1502 /** 1503 * <p>Disassociates the specified IP access control group from the specified 1504 * directory.</p><p><h3>See Also:</h3> <a 1505 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups">AWS 1506 * API Reference</a></p> 1507 * 1508 * returns a future to the operation so that it can be executed in parallel to other requests. 1509 */ 1510 virtual Model::DisassociateIpGroupsOutcomeCallable DisassociateIpGroupsCallable(const Model::DisassociateIpGroupsRequest& request) const; 1511 1512 /** 1513 * <p>Disassociates the specified IP access control group from the specified 1514 * directory.</p><p><h3>See Also:</h3> <a 1515 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups">AWS 1516 * API Reference</a></p> 1517 * 1518 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1519 */ 1520 virtual void DisassociateIpGroupsAsync(const Model::DisassociateIpGroupsRequest& request, const DisassociateIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1521 1522 /** 1523 * <p>Imports the specified Windows 10 Bring Your Own License (BYOL) image into 1524 * Amazon WorkSpaces. The image must be an already licensed Amazon EC2 image that 1525 * is in your Amazon Web Services account, and you must own the image. For more 1526 * information about creating BYOL images, see <a 1527 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html"> 1528 * Bring Your Own Windows Desktop Licenses</a>.</p><p><h3>See Also:</h3> <a 1529 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ImportWorkspaceImage">AWS 1530 * API Reference</a></p> 1531 */ 1532 virtual Model::ImportWorkspaceImageOutcome ImportWorkspaceImage(const Model::ImportWorkspaceImageRequest& request) const; 1533 1534 /** 1535 * <p>Imports the specified Windows 10 Bring Your Own License (BYOL) image into 1536 * Amazon WorkSpaces. The image must be an already licensed Amazon EC2 image that 1537 * is in your Amazon Web Services account, and you must own the image. For more 1538 * information about creating BYOL images, see <a 1539 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html"> 1540 * Bring Your Own Windows Desktop Licenses</a>.</p><p><h3>See Also:</h3> <a 1541 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ImportWorkspaceImage">AWS 1542 * API Reference</a></p> 1543 * 1544 * returns a future to the operation so that it can be executed in parallel to other requests. 1545 */ 1546 virtual Model::ImportWorkspaceImageOutcomeCallable ImportWorkspaceImageCallable(const Model::ImportWorkspaceImageRequest& request) const; 1547 1548 /** 1549 * <p>Imports the specified Windows 10 Bring Your Own License (BYOL) image into 1550 * Amazon WorkSpaces. The image must be an already licensed Amazon EC2 image that 1551 * is in your Amazon Web Services account, and you must own the image. For more 1552 * information about creating BYOL images, see <a 1553 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html"> 1554 * Bring Your Own Windows Desktop Licenses</a>.</p><p><h3>See Also:</h3> <a 1555 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ImportWorkspaceImage">AWS 1556 * API Reference</a></p> 1557 * 1558 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1559 */ 1560 virtual void ImportWorkspaceImageAsync(const Model::ImportWorkspaceImageRequest& request, const ImportWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1561 1562 /** 1563 * <p>Retrieves a list of IP address ranges, specified as IPv4 CIDR blocks, that 1564 * you can use for the network management interface when you enable Bring Your Own 1565 * License (BYOL). </p> <p>This operation can be run only by Amazon Web Services 1566 * accounts that are enabled for BYOL. If your account isn't enabled for BYOL, 1567 * you'll receive an <code>AccessDeniedException</code> error.</p> <p>The 1568 * management network interface is connected to a secure Amazon WorkSpaces 1569 * management network. It is used for interactive streaming of the WorkSpace 1570 * desktop to Amazon WorkSpaces clients, and to allow Amazon WorkSpaces to manage 1571 * the WorkSpace.</p><p><h3>See Also:</h3> <a 1572 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ListAvailableManagementCidrRanges">AWS 1573 * API Reference</a></p> 1574 */ 1575 virtual Model::ListAvailableManagementCidrRangesOutcome ListAvailableManagementCidrRanges(const Model::ListAvailableManagementCidrRangesRequest& request) const; 1576 1577 /** 1578 * <p>Retrieves a list of IP address ranges, specified as IPv4 CIDR blocks, that 1579 * you can use for the network management interface when you enable Bring Your Own 1580 * License (BYOL). </p> <p>This operation can be run only by Amazon Web Services 1581 * accounts that are enabled for BYOL. If your account isn't enabled for BYOL, 1582 * you'll receive an <code>AccessDeniedException</code> error.</p> <p>The 1583 * management network interface is connected to a secure Amazon WorkSpaces 1584 * management network. It is used for interactive streaming of the WorkSpace 1585 * desktop to Amazon WorkSpaces clients, and to allow Amazon WorkSpaces to manage 1586 * the WorkSpace.</p><p><h3>See Also:</h3> <a 1587 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ListAvailableManagementCidrRanges">AWS 1588 * API Reference</a></p> 1589 * 1590 * returns a future to the operation so that it can be executed in parallel to other requests. 1591 */ 1592 virtual Model::ListAvailableManagementCidrRangesOutcomeCallable ListAvailableManagementCidrRangesCallable(const Model::ListAvailableManagementCidrRangesRequest& request) const; 1593 1594 /** 1595 * <p>Retrieves a list of IP address ranges, specified as IPv4 CIDR blocks, that 1596 * you can use for the network management interface when you enable Bring Your Own 1597 * License (BYOL). </p> <p>This operation can be run only by Amazon Web Services 1598 * accounts that are enabled for BYOL. If your account isn't enabled for BYOL, 1599 * you'll receive an <code>AccessDeniedException</code> error.</p> <p>The 1600 * management network interface is connected to a secure Amazon WorkSpaces 1601 * management network. It is used for interactive streaming of the WorkSpace 1602 * desktop to Amazon WorkSpaces clients, and to allow Amazon WorkSpaces to manage 1603 * the WorkSpace.</p><p><h3>See Also:</h3> <a 1604 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ListAvailableManagementCidrRanges">AWS 1605 * API Reference</a></p> 1606 * 1607 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1608 */ 1609 virtual void ListAvailableManagementCidrRangesAsync(const Model::ListAvailableManagementCidrRangesRequest& request, const ListAvailableManagementCidrRangesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1610 1611 /** 1612 * <p>Migrates a WorkSpace from one operating system or bundle type to another, 1613 * while retaining the data on the user volume.</p> <p>The migration process 1614 * recreates the WorkSpace by using a new root volume from the target bundle image 1615 * and the user volume from the last available snapshot of the original WorkSpace. 1616 * During migration, the original <code>D:\Users\%USERNAME%</code> user profile 1617 * folder is renamed to <code>D:\Users\%USERNAME%MMddyyTHHmmss%.NotMigrated</code>. 1618 * A new <code>D:\Users\%USERNAME%\</code> folder is generated by the new OS. 1619 * Certain files in the old user profile are moved to the new user profile.</p> 1620 * <p>For available migration scenarios, details about what happens during 1621 * migration, and best practices, see <a 1622 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/migrate-workspaces.html">Migrate 1623 * a WorkSpace</a>.</p><p><h3>See Also:</h3> <a 1624 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/MigrateWorkspace">AWS 1625 * API Reference</a></p> 1626 */ 1627 virtual Model::MigrateWorkspaceOutcome MigrateWorkspace(const Model::MigrateWorkspaceRequest& request) const; 1628 1629 /** 1630 * <p>Migrates a WorkSpace from one operating system or bundle type to another, 1631 * while retaining the data on the user volume.</p> <p>The migration process 1632 * recreates the WorkSpace by using a new root volume from the target bundle image 1633 * and the user volume from the last available snapshot of the original WorkSpace. 1634 * During migration, the original <code>D:\Users\%USERNAME%</code> user profile 1635 * folder is renamed to <code>D:\Users\%USERNAME%MMddyyTHHmmss%.NotMigrated</code>. 1636 * A new <code>D:\Users\%USERNAME%\</code> folder is generated by the new OS. 1637 * Certain files in the old user profile are moved to the new user profile.</p> 1638 * <p>For available migration scenarios, details about what happens during 1639 * migration, and best practices, see <a 1640 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/migrate-workspaces.html">Migrate 1641 * a WorkSpace</a>.</p><p><h3>See Also:</h3> <a 1642 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/MigrateWorkspace">AWS 1643 * API Reference</a></p> 1644 * 1645 * returns a future to the operation so that it can be executed in parallel to other requests. 1646 */ 1647 virtual Model::MigrateWorkspaceOutcomeCallable MigrateWorkspaceCallable(const Model::MigrateWorkspaceRequest& request) const; 1648 1649 /** 1650 * <p>Migrates a WorkSpace from one operating system or bundle type to another, 1651 * while retaining the data on the user volume.</p> <p>The migration process 1652 * recreates the WorkSpace by using a new root volume from the target bundle image 1653 * and the user volume from the last available snapshot of the original WorkSpace. 1654 * During migration, the original <code>D:\Users\%USERNAME%</code> user profile 1655 * folder is renamed to <code>D:\Users\%USERNAME%MMddyyTHHmmss%.NotMigrated</code>. 1656 * A new <code>D:\Users\%USERNAME%\</code> folder is generated by the new OS. 1657 * Certain files in the old user profile are moved to the new user profile.</p> 1658 * <p>For available migration scenarios, details about what happens during 1659 * migration, and best practices, see <a 1660 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/migrate-workspaces.html">Migrate 1661 * a WorkSpace</a>.</p><p><h3>See Also:</h3> <a 1662 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/MigrateWorkspace">AWS 1663 * API Reference</a></p> 1664 * 1665 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1666 */ 1667 virtual void MigrateWorkspaceAsync(const Model::MigrateWorkspaceRequest& request, const MigrateWorkspaceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1668 1669 /** 1670 * <p>Modifies the configuration of Bring Your Own License (BYOL) for the specified 1671 * account.</p><p><h3>See Also:</h3> <a 1672 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyAccount">AWS 1673 * API Reference</a></p> 1674 */ 1675 virtual Model::ModifyAccountOutcome ModifyAccount(const Model::ModifyAccountRequest& request) const; 1676 1677 /** 1678 * <p>Modifies the configuration of Bring Your Own License (BYOL) for the specified 1679 * account.</p><p><h3>See Also:</h3> <a 1680 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyAccount">AWS 1681 * API Reference</a></p> 1682 * 1683 * returns a future to the operation so that it can be executed in parallel to other requests. 1684 */ 1685 virtual Model::ModifyAccountOutcomeCallable ModifyAccountCallable(const Model::ModifyAccountRequest& request) const; 1686 1687 /** 1688 * <p>Modifies the configuration of Bring Your Own License (BYOL) for the specified 1689 * account.</p><p><h3>See Also:</h3> <a 1690 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyAccount">AWS 1691 * API Reference</a></p> 1692 * 1693 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1694 */ 1695 virtual void ModifyAccountAsync(const Model::ModifyAccountRequest& request, const ModifyAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1696 1697 /** 1698 * <p>Modifies the properties of the specified Amazon WorkSpaces 1699 * clients.</p><p><h3>See Also:</h3> <a 1700 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyClientProperties">AWS 1701 * API Reference</a></p> 1702 */ 1703 virtual Model::ModifyClientPropertiesOutcome ModifyClientProperties(const Model::ModifyClientPropertiesRequest& request) const; 1704 1705 /** 1706 * <p>Modifies the properties of the specified Amazon WorkSpaces 1707 * clients.</p><p><h3>See Also:</h3> <a 1708 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyClientProperties">AWS 1709 * API Reference</a></p> 1710 * 1711 * returns a future to the operation so that it can be executed in parallel to other requests. 1712 */ 1713 virtual Model::ModifyClientPropertiesOutcomeCallable ModifyClientPropertiesCallable(const Model::ModifyClientPropertiesRequest& request) const; 1714 1715 /** 1716 * <p>Modifies the properties of the specified Amazon WorkSpaces 1717 * clients.</p><p><h3>See Also:</h3> <a 1718 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyClientProperties">AWS 1719 * API Reference</a></p> 1720 * 1721 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1722 */ 1723 virtual void ModifyClientPropertiesAsync(const Model::ModifyClientPropertiesRequest& request, const ModifyClientPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1724 1725 /** 1726 * <p>Modifies the self-service WorkSpace management capabilities for your users. 1727 * For more information, see <a 1728 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/enable-user-self-service-workspace-management.html">Enable 1729 * Self-Service WorkSpace Management Capabilities for Your Users</a>.</p><p><h3>See 1730 * Also:</h3> <a 1731 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifySelfservicePermissions">AWS 1732 * API Reference</a></p> 1733 */ 1734 virtual Model::ModifySelfservicePermissionsOutcome ModifySelfservicePermissions(const Model::ModifySelfservicePermissionsRequest& request) const; 1735 1736 /** 1737 * <p>Modifies the self-service WorkSpace management capabilities for your users. 1738 * For more information, see <a 1739 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/enable-user-self-service-workspace-management.html">Enable 1740 * Self-Service WorkSpace Management Capabilities for Your Users</a>.</p><p><h3>See 1741 * Also:</h3> <a 1742 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifySelfservicePermissions">AWS 1743 * API Reference</a></p> 1744 * 1745 * returns a future to the operation so that it can be executed in parallel to other requests. 1746 */ 1747 virtual Model::ModifySelfservicePermissionsOutcomeCallable ModifySelfservicePermissionsCallable(const Model::ModifySelfservicePermissionsRequest& request) const; 1748 1749 /** 1750 * <p>Modifies the self-service WorkSpace management capabilities for your users. 1751 * For more information, see <a 1752 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/enable-user-self-service-workspace-management.html">Enable 1753 * Self-Service WorkSpace Management Capabilities for Your Users</a>.</p><p><h3>See 1754 * Also:</h3> <a 1755 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifySelfservicePermissions">AWS 1756 * API Reference</a></p> 1757 * 1758 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1759 */ 1760 virtual void ModifySelfservicePermissionsAsync(const Model::ModifySelfservicePermissionsRequest& request, const ModifySelfservicePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1761 1762 /** 1763 * <p>Specifies which devices and operating systems users can use to access their 1764 * WorkSpaces. For more information, see <a 1765 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-directory-details.html#control-device-access"> 1766 * Control Device Access</a>.</p><p><h3>See Also:</h3> <a 1767 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceAccessProperties">AWS 1768 * API Reference</a></p> 1769 */ 1770 virtual Model::ModifyWorkspaceAccessPropertiesOutcome ModifyWorkspaceAccessProperties(const Model::ModifyWorkspaceAccessPropertiesRequest& request) const; 1771 1772 /** 1773 * <p>Specifies which devices and operating systems users can use to access their 1774 * WorkSpaces. For more information, see <a 1775 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-directory-details.html#control-device-access"> 1776 * Control Device Access</a>.</p><p><h3>See Also:</h3> <a 1777 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceAccessProperties">AWS 1778 * API Reference</a></p> 1779 * 1780 * returns a future to the operation so that it can be executed in parallel to other requests. 1781 */ 1782 virtual Model::ModifyWorkspaceAccessPropertiesOutcomeCallable ModifyWorkspaceAccessPropertiesCallable(const Model::ModifyWorkspaceAccessPropertiesRequest& request) const; 1783 1784 /** 1785 * <p>Specifies which devices and operating systems users can use to access their 1786 * WorkSpaces. For more information, see <a 1787 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-directory-details.html#control-device-access"> 1788 * Control Device Access</a>.</p><p><h3>See Also:</h3> <a 1789 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceAccessProperties">AWS 1790 * API Reference</a></p> 1791 * 1792 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1793 */ 1794 virtual void ModifyWorkspaceAccessPropertiesAsync(const Model::ModifyWorkspaceAccessPropertiesRequest& request, const ModifyWorkspaceAccessPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1795 1796 /** 1797 * <p>Modify the default properties used to create WorkSpaces.</p><p><h3>See 1798 * Also:</h3> <a 1799 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceCreationProperties">AWS 1800 * API Reference</a></p> 1801 */ 1802 virtual Model::ModifyWorkspaceCreationPropertiesOutcome ModifyWorkspaceCreationProperties(const Model::ModifyWorkspaceCreationPropertiesRequest& request) const; 1803 1804 /** 1805 * <p>Modify the default properties used to create WorkSpaces.</p><p><h3>See 1806 * Also:</h3> <a 1807 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceCreationProperties">AWS 1808 * API Reference</a></p> 1809 * 1810 * returns a future to the operation so that it can be executed in parallel to other requests. 1811 */ 1812 virtual Model::ModifyWorkspaceCreationPropertiesOutcomeCallable ModifyWorkspaceCreationPropertiesCallable(const Model::ModifyWorkspaceCreationPropertiesRequest& request) const; 1813 1814 /** 1815 * <p>Modify the default properties used to create WorkSpaces.</p><p><h3>See 1816 * Also:</h3> <a 1817 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceCreationProperties">AWS 1818 * API Reference</a></p> 1819 * 1820 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1821 */ 1822 virtual void ModifyWorkspaceCreationPropertiesAsync(const Model::ModifyWorkspaceCreationPropertiesRequest& request, const ModifyWorkspaceCreationPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1823 1824 /** 1825 * <p>Modifies the specified WorkSpace properties. For important information about 1826 * how to modify the size of the root and user volumes, see <a 1827 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html"> 1828 * Modify a WorkSpace</a>. </p><p><h3>See Also:</h3> <a 1829 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties">AWS 1830 * API Reference</a></p> 1831 */ 1832 virtual Model::ModifyWorkspacePropertiesOutcome ModifyWorkspaceProperties(const Model::ModifyWorkspacePropertiesRequest& request) const; 1833 1834 /** 1835 * <p>Modifies the specified WorkSpace properties. For important information about 1836 * how to modify the size of the root and user volumes, see <a 1837 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html"> 1838 * Modify a WorkSpace</a>. </p><p><h3>See Also:</h3> <a 1839 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties">AWS 1840 * API Reference</a></p> 1841 * 1842 * returns a future to the operation so that it can be executed in parallel to other requests. 1843 */ 1844 virtual Model::ModifyWorkspacePropertiesOutcomeCallable ModifyWorkspacePropertiesCallable(const Model::ModifyWorkspacePropertiesRequest& request) const; 1845 1846 /** 1847 * <p>Modifies the specified WorkSpace properties. For important information about 1848 * how to modify the size of the root and user volumes, see <a 1849 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html"> 1850 * Modify a WorkSpace</a>. </p><p><h3>See Also:</h3> <a 1851 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties">AWS 1852 * API Reference</a></p> 1853 * 1854 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1855 */ 1856 virtual void ModifyWorkspacePropertiesAsync(const Model::ModifyWorkspacePropertiesRequest& request, const ModifyWorkspacePropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1857 1858 /** 1859 * <p>Sets the state of the specified WorkSpace.</p> <p>To maintain a WorkSpace 1860 * without being interrupted, set the WorkSpace state to 1861 * <code>ADMIN_MAINTENANCE</code>. WorkSpaces in this state do not respond to 1862 * requests to reboot, stop, start, rebuild, or restore. An AutoStop WorkSpace in 1863 * this state is not stopped. Users cannot log into a WorkSpace in the 1864 * <code>ADMIN_MAINTENANCE</code> state.</p><p><h3>See Also:</h3> <a 1865 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState">AWS 1866 * API Reference</a></p> 1867 */ 1868 virtual Model::ModifyWorkspaceStateOutcome ModifyWorkspaceState(const Model::ModifyWorkspaceStateRequest& request) const; 1869 1870 /** 1871 * <p>Sets the state of the specified WorkSpace.</p> <p>To maintain a WorkSpace 1872 * without being interrupted, set the WorkSpace state to 1873 * <code>ADMIN_MAINTENANCE</code>. WorkSpaces in this state do not respond to 1874 * requests to reboot, stop, start, rebuild, or restore. An AutoStop WorkSpace in 1875 * this state is not stopped. Users cannot log into a WorkSpace in the 1876 * <code>ADMIN_MAINTENANCE</code> state.</p><p><h3>See Also:</h3> <a 1877 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState">AWS 1878 * API Reference</a></p> 1879 * 1880 * returns a future to the operation so that it can be executed in parallel to other requests. 1881 */ 1882 virtual Model::ModifyWorkspaceStateOutcomeCallable ModifyWorkspaceStateCallable(const Model::ModifyWorkspaceStateRequest& request) const; 1883 1884 /** 1885 * <p>Sets the state of the specified WorkSpace.</p> <p>To maintain a WorkSpace 1886 * without being interrupted, set the WorkSpace state to 1887 * <code>ADMIN_MAINTENANCE</code>. WorkSpaces in this state do not respond to 1888 * requests to reboot, stop, start, rebuild, or restore. An AutoStop WorkSpace in 1889 * this state is not stopped. Users cannot log into a WorkSpace in the 1890 * <code>ADMIN_MAINTENANCE</code> state.</p><p><h3>See Also:</h3> <a 1891 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState">AWS 1892 * API Reference</a></p> 1893 * 1894 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1895 */ 1896 virtual void ModifyWorkspaceStateAsync(const Model::ModifyWorkspaceStateRequest& request, const ModifyWorkspaceStateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1897 1898 /** 1899 * <p>Reboots the specified WorkSpaces.</p> <p>You cannot reboot a WorkSpace unless 1900 * its state is <code>AVAILABLE</code> or <code>UNHEALTHY</code>.</p> <p>This 1901 * operation is asynchronous and returns before the WorkSpaces have 1902 * rebooted.</p><p><h3>See Also:</h3> <a 1903 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces">AWS 1904 * API Reference</a></p> 1905 */ 1906 virtual Model::RebootWorkspacesOutcome RebootWorkspaces(const Model::RebootWorkspacesRequest& request) const; 1907 1908 /** 1909 * <p>Reboots the specified WorkSpaces.</p> <p>You cannot reboot a WorkSpace unless 1910 * its state is <code>AVAILABLE</code> or <code>UNHEALTHY</code>.</p> <p>This 1911 * operation is asynchronous and returns before the WorkSpaces have 1912 * rebooted.</p><p><h3>See Also:</h3> <a 1913 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces">AWS 1914 * API Reference</a></p> 1915 * 1916 * returns a future to the operation so that it can be executed in parallel to other requests. 1917 */ 1918 virtual Model::RebootWorkspacesOutcomeCallable RebootWorkspacesCallable(const Model::RebootWorkspacesRequest& request) const; 1919 1920 /** 1921 * <p>Reboots the specified WorkSpaces.</p> <p>You cannot reboot a WorkSpace unless 1922 * its state is <code>AVAILABLE</code> or <code>UNHEALTHY</code>.</p> <p>This 1923 * operation is asynchronous and returns before the WorkSpaces have 1924 * rebooted.</p><p><h3>See Also:</h3> <a 1925 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces">AWS 1926 * API Reference</a></p> 1927 * 1928 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1929 */ 1930 virtual void RebootWorkspacesAsync(const Model::RebootWorkspacesRequest& request, const RebootWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1931 1932 /** 1933 * <p>Rebuilds the specified WorkSpace.</p> <p>You cannot rebuild a WorkSpace 1934 * unless its state is <code>AVAILABLE</code>, <code>ERROR</code>, 1935 * <code>UNHEALTHY</code>, <code>STOPPED</code>, or <code>REBOOTING</code>.</p> 1936 * <p>Rebuilding a WorkSpace is a potentially destructive action that can result in 1937 * the loss of data. For more information, see <a 1938 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html">Rebuild 1939 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 1940 * WorkSpaces have been completely rebuilt.</p><p><h3>See Also:</h3> <a 1941 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces">AWS 1942 * API Reference</a></p> 1943 */ 1944 virtual Model::RebuildWorkspacesOutcome RebuildWorkspaces(const Model::RebuildWorkspacesRequest& request) const; 1945 1946 /** 1947 * <p>Rebuilds the specified WorkSpace.</p> <p>You cannot rebuild a WorkSpace 1948 * unless its state is <code>AVAILABLE</code>, <code>ERROR</code>, 1949 * <code>UNHEALTHY</code>, <code>STOPPED</code>, or <code>REBOOTING</code>.</p> 1950 * <p>Rebuilding a WorkSpace is a potentially destructive action that can result in 1951 * the loss of data. For more information, see <a 1952 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html">Rebuild 1953 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 1954 * WorkSpaces have been completely rebuilt.</p><p><h3>See Also:</h3> <a 1955 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces">AWS 1956 * API Reference</a></p> 1957 * 1958 * returns a future to the operation so that it can be executed in parallel to other requests. 1959 */ 1960 virtual Model::RebuildWorkspacesOutcomeCallable RebuildWorkspacesCallable(const Model::RebuildWorkspacesRequest& request) const; 1961 1962 /** 1963 * <p>Rebuilds the specified WorkSpace.</p> <p>You cannot rebuild a WorkSpace 1964 * unless its state is <code>AVAILABLE</code>, <code>ERROR</code>, 1965 * <code>UNHEALTHY</code>, <code>STOPPED</code>, or <code>REBOOTING</code>.</p> 1966 * <p>Rebuilding a WorkSpace is a potentially destructive action that can result in 1967 * the loss of data. For more information, see <a 1968 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html">Rebuild 1969 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 1970 * WorkSpaces have been completely rebuilt.</p><p><h3>See Also:</h3> <a 1971 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces">AWS 1972 * API Reference</a></p> 1973 * 1974 * Queues the request into a thread executor and triggers associated callback when operation has finished. 1975 */ 1976 virtual void RebuildWorkspacesAsync(const Model::RebuildWorkspacesRequest& request, const RebuildWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 1977 1978 /** 1979 * <p>Registers the specified directory. This operation is asynchronous and returns 1980 * before the WorkSpace directory is registered. If this is the first time you are 1981 * registering a directory, you will need to create the workspaces_DefaultRole role 1982 * before you can register a directory. For more information, see <a 1983 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/workspaces-access-control.html#create-default-role"> 1984 * Creating the workspaces_DefaultRole Role</a>.</p><p><h3>See Also:</h3> <a 1985 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RegisterWorkspaceDirectory">AWS 1986 * API Reference</a></p> 1987 */ 1988 virtual Model::RegisterWorkspaceDirectoryOutcome RegisterWorkspaceDirectory(const Model::RegisterWorkspaceDirectoryRequest& request) const; 1989 1990 /** 1991 * <p>Registers the specified directory. This operation is asynchronous and returns 1992 * before the WorkSpace directory is registered. If this is the first time you are 1993 * registering a directory, you will need to create the workspaces_DefaultRole role 1994 * before you can register a directory. For more information, see <a 1995 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/workspaces-access-control.html#create-default-role"> 1996 * Creating the workspaces_DefaultRole Role</a>.</p><p><h3>See Also:</h3> <a 1997 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RegisterWorkspaceDirectory">AWS 1998 * API Reference</a></p> 1999 * 2000 * returns a future to the operation so that it can be executed in parallel to other requests. 2001 */ 2002 virtual Model::RegisterWorkspaceDirectoryOutcomeCallable RegisterWorkspaceDirectoryCallable(const Model::RegisterWorkspaceDirectoryRequest& request) const; 2003 2004 /** 2005 * <p>Registers the specified directory. This operation is asynchronous and returns 2006 * before the WorkSpace directory is registered. If this is the first time you are 2007 * registering a directory, you will need to create the workspaces_DefaultRole role 2008 * before you can register a directory. For more information, see <a 2009 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/workspaces-access-control.html#create-default-role"> 2010 * Creating the workspaces_DefaultRole Role</a>.</p><p><h3>See Also:</h3> <a 2011 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RegisterWorkspaceDirectory">AWS 2012 * API Reference</a></p> 2013 * 2014 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2015 */ 2016 virtual void RegisterWorkspaceDirectoryAsync(const Model::RegisterWorkspaceDirectoryRequest& request, const RegisterWorkspaceDirectoryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2017 2018 /** 2019 * <p>Restores the specified WorkSpace to its last known healthy state.</p> <p>You 2020 * cannot restore a WorkSpace unless its state is <code> AVAILABLE</code>, 2021 * <code>ERROR</code>, <code>UNHEALTHY</code>, or <code>STOPPED</code>.</p> 2022 * <p>Restoring a WorkSpace is a potentially destructive action that can result in 2023 * the loss of data. For more information, see <a 2024 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/restore-workspace.html">Restore 2025 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 2026 * WorkSpace is completely restored.</p><p><h3>See Also:</h3> <a 2027 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RestoreWorkspace">AWS 2028 * API Reference</a></p> 2029 */ 2030 virtual Model::RestoreWorkspaceOutcome RestoreWorkspace(const Model::RestoreWorkspaceRequest& request) const; 2031 2032 /** 2033 * <p>Restores the specified WorkSpace to its last known healthy state.</p> <p>You 2034 * cannot restore a WorkSpace unless its state is <code> AVAILABLE</code>, 2035 * <code>ERROR</code>, <code>UNHEALTHY</code>, or <code>STOPPED</code>.</p> 2036 * <p>Restoring a WorkSpace is a potentially destructive action that can result in 2037 * the loss of data. For more information, see <a 2038 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/restore-workspace.html">Restore 2039 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 2040 * WorkSpace is completely restored.</p><p><h3>See Also:</h3> <a 2041 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RestoreWorkspace">AWS 2042 * API Reference</a></p> 2043 * 2044 * returns a future to the operation so that it can be executed in parallel to other requests. 2045 */ 2046 virtual Model::RestoreWorkspaceOutcomeCallable RestoreWorkspaceCallable(const Model::RestoreWorkspaceRequest& request) const; 2047 2048 /** 2049 * <p>Restores the specified WorkSpace to its last known healthy state.</p> <p>You 2050 * cannot restore a WorkSpace unless its state is <code> AVAILABLE</code>, 2051 * <code>ERROR</code>, <code>UNHEALTHY</code>, or <code>STOPPED</code>.</p> 2052 * <p>Restoring a WorkSpace is a potentially destructive action that can result in 2053 * the loss of data. For more information, see <a 2054 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/restore-workspace.html">Restore 2055 * a WorkSpace</a>.</p> <p>This operation is asynchronous and returns before the 2056 * WorkSpace is completely restored.</p><p><h3>See Also:</h3> <a 2057 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RestoreWorkspace">AWS 2058 * API Reference</a></p> 2059 * 2060 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2061 */ 2062 virtual void RestoreWorkspaceAsync(const Model::RestoreWorkspaceRequest& request, const RestoreWorkspaceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2063 2064 /** 2065 * <p>Removes one or more rules from the specified IP access control 2066 * group.</p><p><h3>See Also:</h3> <a 2067 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules">AWS 2068 * API Reference</a></p> 2069 */ 2070 virtual Model::RevokeIpRulesOutcome RevokeIpRules(const Model::RevokeIpRulesRequest& request) const; 2071 2072 /** 2073 * <p>Removes one or more rules from the specified IP access control 2074 * group.</p><p><h3>See Also:</h3> <a 2075 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules">AWS 2076 * API Reference</a></p> 2077 * 2078 * returns a future to the operation so that it can be executed in parallel to other requests. 2079 */ 2080 virtual Model::RevokeIpRulesOutcomeCallable RevokeIpRulesCallable(const Model::RevokeIpRulesRequest& request) const; 2081 2082 /** 2083 * <p>Removes one or more rules from the specified IP access control 2084 * group.</p><p><h3>See Also:</h3> <a 2085 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules">AWS 2086 * API Reference</a></p> 2087 * 2088 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2089 */ 2090 virtual void RevokeIpRulesAsync(const Model::RevokeIpRulesRequest& request, const RevokeIpRulesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2091 2092 /** 2093 * <p>Starts the specified WorkSpaces.</p> <p>You cannot start a WorkSpace unless 2094 * it has a running mode of <code>AutoStop</code> and a state of 2095 * <code>STOPPED</code>.</p><p><h3>See Also:</h3> <a 2096 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces">AWS 2097 * API Reference</a></p> 2098 */ 2099 virtual Model::StartWorkspacesOutcome StartWorkspaces(const Model::StartWorkspacesRequest& request) const; 2100 2101 /** 2102 * <p>Starts the specified WorkSpaces.</p> <p>You cannot start a WorkSpace unless 2103 * it has a running mode of <code>AutoStop</code> and a state of 2104 * <code>STOPPED</code>.</p><p><h3>See Also:</h3> <a 2105 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces">AWS 2106 * API Reference</a></p> 2107 * 2108 * returns a future to the operation so that it can be executed in parallel to other requests. 2109 */ 2110 virtual Model::StartWorkspacesOutcomeCallable StartWorkspacesCallable(const Model::StartWorkspacesRequest& request) const; 2111 2112 /** 2113 * <p>Starts the specified WorkSpaces.</p> <p>You cannot start a WorkSpace unless 2114 * it has a running mode of <code>AutoStop</code> and a state of 2115 * <code>STOPPED</code>.</p><p><h3>See Also:</h3> <a 2116 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces">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 StartWorkspacesAsync(const Model::StartWorkspacesRequest& request, const StartWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2122 2123 /** 2124 * <p> Stops the specified WorkSpaces.</p> <p>You cannot stop a WorkSpace unless it 2125 * has a running mode of <code>AutoStop</code> and a state of 2126 * <code>AVAILABLE</code>, <code>IMPAIRED</code>, <code>UNHEALTHY</code>, or 2127 * <code>ERROR</code>.</p><p><h3>See Also:</h3> <a 2128 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces">AWS 2129 * API Reference</a></p> 2130 */ 2131 virtual Model::StopWorkspacesOutcome StopWorkspaces(const Model::StopWorkspacesRequest& request) const; 2132 2133 /** 2134 * <p> Stops the specified WorkSpaces.</p> <p>You cannot stop a WorkSpace unless it 2135 * has a running mode of <code>AutoStop</code> and a state of 2136 * <code>AVAILABLE</code>, <code>IMPAIRED</code>, <code>UNHEALTHY</code>, or 2137 * <code>ERROR</code>.</p><p><h3>See Also:</h3> <a 2138 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces">AWS 2139 * API Reference</a></p> 2140 * 2141 * returns a future to the operation so that it can be executed in parallel to other requests. 2142 */ 2143 virtual Model::StopWorkspacesOutcomeCallable StopWorkspacesCallable(const Model::StopWorkspacesRequest& request) const; 2144 2145 /** 2146 * <p> Stops the specified WorkSpaces.</p> <p>You cannot stop a WorkSpace unless it 2147 * has a running mode of <code>AutoStop</code> and a state of 2148 * <code>AVAILABLE</code>, <code>IMPAIRED</code>, <code>UNHEALTHY</code>, or 2149 * <code>ERROR</code>.</p><p><h3>See Also:</h3> <a 2150 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces">AWS 2151 * API Reference</a></p> 2152 * 2153 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2154 */ 2155 virtual void StopWorkspacesAsync(const Model::StopWorkspacesRequest& request, const StopWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2156 2157 /** 2158 * <p>Terminates the specified WorkSpaces.</p> <p>Terminating a 2159 * WorkSpace is a permanent action and cannot be undone. The user's data is 2160 * destroyed. If you need to archive any user data, contact Amazon Web Services 2161 * Support before terminating the WorkSpace.</p> <p>You can terminate 2162 * a WorkSpace that is in any state except <code>SUSPENDED</code>.</p> <p>This 2163 * operation is asynchronous and returns before the WorkSpaces have been completely 2164 * terminated. After a WorkSpace is terminated, the <code>TERMINATED</code> state 2165 * is returned only briefly before the WorkSpace directory metadata is cleaned up, 2166 * so this state is rarely returned. To confirm that a WorkSpace is terminated, 2167 * check for the WorkSpace ID by using <a 2168 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaces.html"> 2169 * DescribeWorkSpaces</a>. If the WorkSpace ID isn't returned, then the WorkSpace 2170 * has been successfully terminated.</p> <p>Simple AD and AD Connector are 2171 * made available to you free of charge to use with WorkSpaces. If there are no 2172 * WorkSpaces being used with your Simple AD or AD Connector directory for 30 2173 * consecutive days, this directory will be automatically deregistered for use with 2174 * Amazon WorkSpaces, and you will be charged for this directory as per the <a 2175 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 2176 * terms</a>.</p> <p>To delete empty directories, see <a 2177 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 2178 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 2179 * Connector directory, you can always create a new one when you want to start 2180 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 2181 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces">AWS 2182 * API Reference</a></p> 2183 */ 2184 virtual Model::TerminateWorkspacesOutcome TerminateWorkspaces(const Model::TerminateWorkspacesRequest& request) const; 2185 2186 /** 2187 * <p>Terminates the specified WorkSpaces.</p> <p>Terminating a 2188 * WorkSpace is a permanent action and cannot be undone. The user's data is 2189 * destroyed. If you need to archive any user data, contact Amazon Web Services 2190 * Support before terminating the WorkSpace.</p> <p>You can terminate 2191 * a WorkSpace that is in any state except <code>SUSPENDED</code>.</p> <p>This 2192 * operation is asynchronous and returns before the WorkSpaces have been completely 2193 * terminated. After a WorkSpace is terminated, the <code>TERMINATED</code> state 2194 * is returned only briefly before the WorkSpace directory metadata is cleaned up, 2195 * so this state is rarely returned. To confirm that a WorkSpace is terminated, 2196 * check for the WorkSpace ID by using <a 2197 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaces.html"> 2198 * DescribeWorkSpaces</a>. If the WorkSpace ID isn't returned, then the WorkSpace 2199 * has been successfully terminated.</p> <p>Simple AD and AD Connector are 2200 * made available to you free of charge to use with WorkSpaces. If there are no 2201 * WorkSpaces being used with your Simple AD or AD Connector directory for 30 2202 * consecutive days, this directory will be automatically deregistered for use with 2203 * Amazon WorkSpaces, and you will be charged for this directory as per the <a 2204 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 2205 * terms</a>.</p> <p>To delete empty directories, see <a 2206 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 2207 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 2208 * Connector directory, you can always create a new one when you want to start 2209 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 2210 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces">AWS 2211 * API Reference</a></p> 2212 * 2213 * returns a future to the operation so that it can be executed in parallel to other requests. 2214 */ 2215 virtual Model::TerminateWorkspacesOutcomeCallable TerminateWorkspacesCallable(const Model::TerminateWorkspacesRequest& request) const; 2216 2217 /** 2218 * <p>Terminates the specified WorkSpaces.</p> <p>Terminating a 2219 * WorkSpace is a permanent action and cannot be undone. The user's data is 2220 * destroyed. If you need to archive any user data, contact Amazon Web Services 2221 * Support before terminating the WorkSpace.</p> <p>You can terminate 2222 * a WorkSpace that is in any state except <code>SUSPENDED</code>.</p> <p>This 2223 * operation is asynchronous and returns before the WorkSpaces have been completely 2224 * terminated. After a WorkSpace is terminated, the <code>TERMINATED</code> state 2225 * is returned only briefly before the WorkSpace directory metadata is cleaned up, 2226 * so this state is rarely returned. To confirm that a WorkSpace is terminated, 2227 * check for the WorkSpace ID by using <a 2228 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaces.html"> 2229 * DescribeWorkSpaces</a>. If the WorkSpace ID isn't returned, then the WorkSpace 2230 * has been successfully terminated.</p> <p>Simple AD and AD Connector are 2231 * made available to you free of charge to use with WorkSpaces. If there are no 2232 * WorkSpaces being used with your Simple AD or AD Connector directory for 30 2233 * consecutive days, this directory will be automatically deregistered for use with 2234 * Amazon WorkSpaces, and you will be charged for this directory as per the <a 2235 * href="http://aws.amazon.com/directoryservice/pricing/">Directory Service pricing 2236 * terms</a>.</p> <p>To delete empty directories, see <a 2237 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html"> 2238 * Delete the Directory for Your WorkSpaces</a>. If you delete your Simple AD or AD 2239 * Connector directory, you can always create a new one when you want to start 2240 * using WorkSpaces again.</p> <p><h3>See Also:</h3> <a 2241 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces">AWS 2242 * API Reference</a></p> 2243 * 2244 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2245 */ 2246 virtual void TerminateWorkspacesAsync(const Model::TerminateWorkspacesRequest& request, const TerminateWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2247 2248 /** 2249 * <p>Shares or unshares a connection alias with one account by specifying whether 2250 * that account has permission to associate the connection alias with a directory. 2251 * If the association permission is granted, the connection alias is shared with 2252 * that account. If the association permission is revoked, the connection alias is 2253 * unshared with the account. For more information, see <a 2254 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 2255 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <ul> <li> 2256 * <p>Before performing this operation, call <a 2257 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 2258 * DescribeConnectionAliases</a> to make sure that the current state of the 2259 * connection alias is <code>CREATED</code>.</p> </li> <li> <p>To delete a 2260 * connection alias that has been shared, the shared account must first 2261 * disassociate the connection alias from any directories it has been associated 2262 * with. Then you must unshare the connection alias from the account it has been 2263 * shared with. You can delete a connection alias only after it is no longer shared 2264 * with any accounts or associated with any directories.</p> </li> </ul> 2265 * <p><h3>See Also:</h3> <a 2266 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermission">AWS 2267 * API Reference</a></p> 2268 */ 2269 virtual Model::UpdateConnectionAliasPermissionOutcome UpdateConnectionAliasPermission(const Model::UpdateConnectionAliasPermissionRequest& request) const; 2270 2271 /** 2272 * <p>Shares or unshares a connection alias with one account by specifying whether 2273 * that account has permission to associate the connection alias with a directory. 2274 * If the association permission is granted, the connection alias is shared with 2275 * that account. If the association permission is revoked, the connection alias is 2276 * unshared with the account. For more information, see <a 2277 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 2278 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <ul> <li> 2279 * <p>Before performing this operation, call <a 2280 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 2281 * DescribeConnectionAliases</a> to make sure that the current state of the 2282 * connection alias is <code>CREATED</code>.</p> </li> <li> <p>To delete a 2283 * connection alias that has been shared, the shared account must first 2284 * disassociate the connection alias from any directories it has been associated 2285 * with. Then you must unshare the connection alias from the account it has been 2286 * shared with. You can delete a connection alias only after it is no longer shared 2287 * with any accounts or associated with any directories.</p> </li> </ul> 2288 * <p><h3>See Also:</h3> <a 2289 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermission">AWS 2290 * API Reference</a></p> 2291 * 2292 * returns a future to the operation so that it can be executed in parallel to other requests. 2293 */ 2294 virtual Model::UpdateConnectionAliasPermissionOutcomeCallable UpdateConnectionAliasPermissionCallable(const Model::UpdateConnectionAliasPermissionRequest& request) const; 2295 2296 /** 2297 * <p>Shares or unshares a connection alias with one account by specifying whether 2298 * that account has permission to associate the connection alias with a directory. 2299 * If the association permission is granted, the connection alias is shared with 2300 * that account. If the association permission is revoked, the connection alias is 2301 * unshared with the account. For more information, see <a 2302 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html"> 2303 * Cross-Region Redirection for Amazon WorkSpaces</a>.</p> <ul> <li> 2304 * <p>Before performing this operation, call <a 2305 * href="https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeConnectionAliases.html"> 2306 * DescribeConnectionAliases</a> to make sure that the current state of the 2307 * connection alias is <code>CREATED</code>.</p> </li> <li> <p>To delete a 2308 * connection alias that has been shared, the shared account must first 2309 * disassociate the connection alias from any directories it has been associated 2310 * with. Then you must unshare the connection alias from the account it has been 2311 * shared with. You can delete a connection alias only after it is no longer shared 2312 * with any accounts or associated with any directories.</p> </li> </ul> 2313 * <p><h3>See Also:</h3> <a 2314 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateConnectionAliasPermission">AWS 2315 * API Reference</a></p> 2316 * 2317 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2318 */ 2319 virtual void UpdateConnectionAliasPermissionAsync(const Model::UpdateConnectionAliasPermissionRequest& request, const UpdateConnectionAliasPermissionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2320 2321 /** 2322 * <p>Replaces the current rules of the specified IP access control group with the 2323 * specified rules.</p><p><h3>See Also:</h3> <a 2324 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup">AWS 2325 * API Reference</a></p> 2326 */ 2327 virtual Model::UpdateRulesOfIpGroupOutcome UpdateRulesOfIpGroup(const Model::UpdateRulesOfIpGroupRequest& request) const; 2328 2329 /** 2330 * <p>Replaces the current rules of the specified IP access control group with the 2331 * specified rules.</p><p><h3>See Also:</h3> <a 2332 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup">AWS 2333 * API Reference</a></p> 2334 * 2335 * returns a future to the operation so that it can be executed in parallel to other requests. 2336 */ 2337 virtual Model::UpdateRulesOfIpGroupOutcomeCallable UpdateRulesOfIpGroupCallable(const Model::UpdateRulesOfIpGroupRequest& request) const; 2338 2339 /** 2340 * <p>Replaces the current rules of the specified IP access control group with the 2341 * specified rules.</p><p><h3>See Also:</h3> <a 2342 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup">AWS 2343 * API Reference</a></p> 2344 * 2345 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2346 */ 2347 virtual void UpdateRulesOfIpGroupAsync(const Model::UpdateRulesOfIpGroupRequest& request, const UpdateRulesOfIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2348 2349 /** 2350 * <p>Updates a WorkSpace bundle with a new image. For more information about 2351 * updating WorkSpace bundles, see <a 2352 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-custom-bundle.html"> 2353 * Update a Custom WorkSpaces Bundle</a>.</p> <p>Existing WorkSpaces 2354 * aren't automatically updated when you update the bundle that they're based on. 2355 * To update existing WorkSpaces that are based on a bundle that you've updated, 2356 * you must either rebuild the WorkSpaces or delete and recreate them.</p> 2357 * <p><h3>See Also:</h3> <a 2358 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceBundle">AWS 2359 * API Reference</a></p> 2360 */ 2361 virtual Model::UpdateWorkspaceBundleOutcome UpdateWorkspaceBundle(const Model::UpdateWorkspaceBundleRequest& request) const; 2362 2363 /** 2364 * <p>Updates a WorkSpace bundle with a new image. For more information about 2365 * updating WorkSpace bundles, see <a 2366 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-custom-bundle.html"> 2367 * Update a Custom WorkSpaces Bundle</a>.</p> <p>Existing WorkSpaces 2368 * aren't automatically updated when you update the bundle that they're based on. 2369 * To update existing WorkSpaces that are based on a bundle that you've updated, 2370 * you must either rebuild the WorkSpaces or delete and recreate them.</p> 2371 * <p><h3>See Also:</h3> <a 2372 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceBundle">AWS 2373 * API Reference</a></p> 2374 * 2375 * returns a future to the operation so that it can be executed in parallel to other requests. 2376 */ 2377 virtual Model::UpdateWorkspaceBundleOutcomeCallable UpdateWorkspaceBundleCallable(const Model::UpdateWorkspaceBundleRequest& request) const; 2378 2379 /** 2380 * <p>Updates a WorkSpace bundle with a new image. For more information about 2381 * updating WorkSpace bundles, see <a 2382 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/update-custom-bundle.html"> 2383 * Update a Custom WorkSpaces Bundle</a>.</p> <p>Existing WorkSpaces 2384 * aren't automatically updated when you update the bundle that they're based on. 2385 * To update existing WorkSpaces that are based on a bundle that you've updated, 2386 * you must either rebuild the WorkSpaces or delete and recreate them.</p> 2387 * <p><h3>See Also:</h3> <a 2388 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceBundle">AWS 2389 * API Reference</a></p> 2390 * 2391 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2392 */ 2393 virtual void UpdateWorkspaceBundleAsync(const Model::UpdateWorkspaceBundleRequest& request, const UpdateWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2394 2395 /** 2396 * <p>Shares or unshares an image with one account in the same Amazon Web Services 2397 * Region by specifying whether that account has permission to copy the image. If 2398 * the copy image permission is granted, the image is shared with that account. If 2399 * the copy image permission is revoked, the image is unshared with the 2400 * account.</p> <p>After an image has been shared, the recipient account can copy 2401 * the image to other Regions as needed.</p> <p>In the China (Ningxia) Region, you 2402 * can copy images only within the same Region.</p> <p>In Amazon Web Services 2403 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 2404 * Services Support.</p> <p>For more information about sharing images, see <a 2405 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/share-custom-image.html"> 2406 * Share or Unshare a Custom WorkSpaces Image</a>.</p> <ul> <li> <p>To 2407 * delete an image that has been shared, you must unshare the image before you 2408 * delete it.</p> </li> <li> <p>Sharing Bring Your Own License (BYOL) images across 2409 * Amazon Web Services accounts isn't supported at this time in Amazon Web Services 2410 * GovCloud (US). To share BYOL images across accounts in Amazon Web Services 2411 * GovCloud (US), contact Amazon Web Services Support.</p> </li> </ul> 2412 * <p><h3>See Also:</h3> <a 2413 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission">AWS 2414 * API Reference</a></p> 2415 */ 2416 virtual Model::UpdateWorkspaceImagePermissionOutcome UpdateWorkspaceImagePermission(const Model::UpdateWorkspaceImagePermissionRequest& request) const; 2417 2418 /** 2419 * <p>Shares or unshares an image with one account in the same Amazon Web Services 2420 * Region by specifying whether that account has permission to copy the image. If 2421 * the copy image permission is granted, the image is shared with that account. If 2422 * the copy image permission is revoked, the image is unshared with the 2423 * account.</p> <p>After an image has been shared, the recipient account can copy 2424 * the image to other Regions as needed.</p> <p>In the China (Ningxia) Region, you 2425 * can copy images only within the same Region.</p> <p>In Amazon Web Services 2426 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 2427 * Services Support.</p> <p>For more information about sharing images, see <a 2428 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/share-custom-image.html"> 2429 * Share or Unshare a Custom WorkSpaces Image</a>.</p> <ul> <li> <p>To 2430 * delete an image that has been shared, you must unshare the image before you 2431 * delete it.</p> </li> <li> <p>Sharing Bring Your Own License (BYOL) images across 2432 * Amazon Web Services accounts isn't supported at this time in Amazon Web Services 2433 * GovCloud (US). To share BYOL images across accounts in Amazon Web Services 2434 * GovCloud (US), contact Amazon Web Services Support.</p> </li> </ul> 2435 * <p><h3>See Also:</h3> <a 2436 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission">AWS 2437 * API Reference</a></p> 2438 * 2439 * returns a future to the operation so that it can be executed in parallel to other requests. 2440 */ 2441 virtual Model::UpdateWorkspaceImagePermissionOutcomeCallable UpdateWorkspaceImagePermissionCallable(const Model::UpdateWorkspaceImagePermissionRequest& request) const; 2442 2443 /** 2444 * <p>Shares or unshares an image with one account in the same Amazon Web Services 2445 * Region by specifying whether that account has permission to copy the image. If 2446 * the copy image permission is granted, the image is shared with that account. If 2447 * the copy image permission is revoked, the image is unshared with the 2448 * account.</p> <p>After an image has been shared, the recipient account can copy 2449 * the image to other Regions as needed.</p> <p>In the China (Ningxia) Region, you 2450 * can copy images only within the same Region.</p> <p>In Amazon Web Services 2451 * GovCloud (US), to copy images to and from other Regions, contact Amazon Web 2452 * Services Support.</p> <p>For more information about sharing images, see <a 2453 * href="https://docs.aws.amazon.com/workspaces/latest/adminguide/share-custom-image.html"> 2454 * Share or Unshare a Custom WorkSpaces Image</a>.</p> <ul> <li> <p>To 2455 * delete an image that has been shared, you must unshare the image before you 2456 * delete it.</p> </li> <li> <p>Sharing Bring Your Own License (BYOL) images across 2457 * Amazon Web Services accounts isn't supported at this time in Amazon Web Services 2458 * GovCloud (US). To share BYOL images across accounts in Amazon Web Services 2459 * GovCloud (US), contact Amazon Web Services Support.</p> </li> </ul> 2460 * <p><h3>See Also:</h3> <a 2461 * href="http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission">AWS 2462 * API Reference</a></p> 2463 * 2464 * Queues the request into a thread executor and triggers associated callback when operation has finished. 2465 */ 2466 virtual void UpdateWorkspaceImagePermissionAsync(const Model::UpdateWorkspaceImagePermissionRequest& request, const UpdateWorkspaceImagePermissionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const; 2467 2468 2469 void OverrideEndpoint(const Aws::String& endpoint); 2470 private: 2471 void init(const Aws::Client::ClientConfiguration& clientConfiguration); 2472 void AssociateConnectionAliasAsyncHelper(const Model::AssociateConnectionAliasRequest& request, const AssociateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2473 void AssociateIpGroupsAsyncHelper(const Model::AssociateIpGroupsRequest& request, const AssociateIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2474 void AuthorizeIpRulesAsyncHelper(const Model::AuthorizeIpRulesRequest& request, const AuthorizeIpRulesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2475 void CopyWorkspaceImageAsyncHelper(const Model::CopyWorkspaceImageRequest& request, const CopyWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2476 void CreateConnectionAliasAsyncHelper(const Model::CreateConnectionAliasRequest& request, const CreateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2477 void CreateIpGroupAsyncHelper(const Model::CreateIpGroupRequest& request, const CreateIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2478 void CreateTagsAsyncHelper(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2479 void CreateUpdatedWorkspaceImageAsyncHelper(const Model::CreateUpdatedWorkspaceImageRequest& request, const CreateUpdatedWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2480 void CreateWorkspaceBundleAsyncHelper(const Model::CreateWorkspaceBundleRequest& request, const CreateWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2481 void CreateWorkspacesAsyncHelper(const Model::CreateWorkspacesRequest& request, const CreateWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2482 void DeleteConnectionAliasAsyncHelper(const Model::DeleteConnectionAliasRequest& request, const DeleteConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2483 void DeleteIpGroupAsyncHelper(const Model::DeleteIpGroupRequest& request, const DeleteIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2484 void DeleteTagsAsyncHelper(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2485 void DeleteWorkspaceBundleAsyncHelper(const Model::DeleteWorkspaceBundleRequest& request, const DeleteWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2486 void DeleteWorkspaceImageAsyncHelper(const Model::DeleteWorkspaceImageRequest& request, const DeleteWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2487 void DeregisterWorkspaceDirectoryAsyncHelper(const Model::DeregisterWorkspaceDirectoryRequest& request, const DeregisterWorkspaceDirectoryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2488 void DescribeAccountAsyncHelper(const Model::DescribeAccountRequest& request, const DescribeAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2489 void DescribeAccountModificationsAsyncHelper(const Model::DescribeAccountModificationsRequest& request, const DescribeAccountModificationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2490 void DescribeClientPropertiesAsyncHelper(const Model::DescribeClientPropertiesRequest& request, const DescribeClientPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2491 void DescribeConnectionAliasPermissionsAsyncHelper(const Model::DescribeConnectionAliasPermissionsRequest& request, const DescribeConnectionAliasPermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2492 void DescribeConnectionAliasesAsyncHelper(const Model::DescribeConnectionAliasesRequest& request, const DescribeConnectionAliasesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2493 void DescribeIpGroupsAsyncHelper(const Model::DescribeIpGroupsRequest& request, const DescribeIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2494 void DescribeTagsAsyncHelper(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2495 void DescribeWorkspaceBundlesAsyncHelper(const Model::DescribeWorkspaceBundlesRequest& request, const DescribeWorkspaceBundlesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2496 void DescribeWorkspaceDirectoriesAsyncHelper(const Model::DescribeWorkspaceDirectoriesRequest& request, const DescribeWorkspaceDirectoriesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2497 void DescribeWorkspaceImagePermissionsAsyncHelper(const Model::DescribeWorkspaceImagePermissionsRequest& request, const DescribeWorkspaceImagePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2498 void DescribeWorkspaceImagesAsyncHelper(const Model::DescribeWorkspaceImagesRequest& request, const DescribeWorkspaceImagesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2499 void DescribeWorkspaceSnapshotsAsyncHelper(const Model::DescribeWorkspaceSnapshotsRequest& request, const DescribeWorkspaceSnapshotsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2500 void DescribeWorkspacesAsyncHelper(const Model::DescribeWorkspacesRequest& request, const DescribeWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2501 void DescribeWorkspacesConnectionStatusAsyncHelper(const Model::DescribeWorkspacesConnectionStatusRequest& request, const DescribeWorkspacesConnectionStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2502 void DisassociateConnectionAliasAsyncHelper(const Model::DisassociateConnectionAliasRequest& request, const DisassociateConnectionAliasResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2503 void DisassociateIpGroupsAsyncHelper(const Model::DisassociateIpGroupsRequest& request, const DisassociateIpGroupsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2504 void ImportWorkspaceImageAsyncHelper(const Model::ImportWorkspaceImageRequest& request, const ImportWorkspaceImageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2505 void ListAvailableManagementCidrRangesAsyncHelper(const Model::ListAvailableManagementCidrRangesRequest& request, const ListAvailableManagementCidrRangesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2506 void MigrateWorkspaceAsyncHelper(const Model::MigrateWorkspaceRequest& request, const MigrateWorkspaceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2507 void ModifyAccountAsyncHelper(const Model::ModifyAccountRequest& request, const ModifyAccountResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2508 void ModifyClientPropertiesAsyncHelper(const Model::ModifyClientPropertiesRequest& request, const ModifyClientPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2509 void ModifySelfservicePermissionsAsyncHelper(const Model::ModifySelfservicePermissionsRequest& request, const ModifySelfservicePermissionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2510 void ModifyWorkspaceAccessPropertiesAsyncHelper(const Model::ModifyWorkspaceAccessPropertiesRequest& request, const ModifyWorkspaceAccessPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2511 void ModifyWorkspaceCreationPropertiesAsyncHelper(const Model::ModifyWorkspaceCreationPropertiesRequest& request, const ModifyWorkspaceCreationPropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2512 void ModifyWorkspacePropertiesAsyncHelper(const Model::ModifyWorkspacePropertiesRequest& request, const ModifyWorkspacePropertiesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2513 void ModifyWorkspaceStateAsyncHelper(const Model::ModifyWorkspaceStateRequest& request, const ModifyWorkspaceStateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2514 void RebootWorkspacesAsyncHelper(const Model::RebootWorkspacesRequest& request, const RebootWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2515 void RebuildWorkspacesAsyncHelper(const Model::RebuildWorkspacesRequest& request, const RebuildWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2516 void RegisterWorkspaceDirectoryAsyncHelper(const Model::RegisterWorkspaceDirectoryRequest& request, const RegisterWorkspaceDirectoryResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2517 void RestoreWorkspaceAsyncHelper(const Model::RestoreWorkspaceRequest& request, const RestoreWorkspaceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2518 void RevokeIpRulesAsyncHelper(const Model::RevokeIpRulesRequest& request, const RevokeIpRulesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2519 void StartWorkspacesAsyncHelper(const Model::StartWorkspacesRequest& request, const StartWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2520 void StopWorkspacesAsyncHelper(const Model::StopWorkspacesRequest& request, const StopWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2521 void TerminateWorkspacesAsyncHelper(const Model::TerminateWorkspacesRequest& request, const TerminateWorkspacesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2522 void UpdateConnectionAliasPermissionAsyncHelper(const Model::UpdateConnectionAliasPermissionRequest& request, const UpdateConnectionAliasPermissionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2523 void UpdateRulesOfIpGroupAsyncHelper(const Model::UpdateRulesOfIpGroupRequest& request, const UpdateRulesOfIpGroupResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2524 void UpdateWorkspaceBundleAsyncHelper(const Model::UpdateWorkspaceBundleRequest& request, const UpdateWorkspaceBundleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2525 void UpdateWorkspaceImagePermissionAsyncHelper(const Model::UpdateWorkspaceImagePermissionRequest& request, const UpdateWorkspaceImagePermissionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const; 2526 2527 Aws::String m_uri; 2528 Aws::String m_configScheme; 2529 std::shared_ptr<Aws::Utils::Threading::Executor> m_executor; 2530 }; 2531 2532 } // namespace WorkSpaces 2533 } // namespace Aws 2534