/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in AppStreamClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in AppStreamClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace AppStream { using AppStreamClientConfiguration = Aws::Client::GenericClientConfiguration; using AppStreamEndpointProviderBase = Aws::AppStream::Endpoint::AppStreamEndpointProviderBase; using AppStreamEndpointProvider = Aws::AppStream::Endpoint::AppStreamEndpointProvider; namespace Model { /* Service model forward declarations required in AppStreamClient header */ class AssociateAppBlockBuilderAppBlockRequest; class AssociateApplicationFleetRequest; class AssociateApplicationToEntitlementRequest; class AssociateFleetRequest; class BatchAssociateUserStackRequest; class BatchDisassociateUserStackRequest; class CopyImageRequest; class CreateAppBlockRequest; class CreateAppBlockBuilderRequest; class CreateAppBlockBuilderStreamingURLRequest; class CreateApplicationRequest; class CreateDirectoryConfigRequest; class CreateEntitlementRequest; class CreateFleetRequest; class CreateImageBuilderRequest; class CreateImageBuilderStreamingURLRequest; class CreateStackRequest; class CreateStreamingURLRequest; class CreateUpdatedImageRequest; class CreateUsageReportSubscriptionRequest; class CreateUserRequest; class DeleteAppBlockRequest; class DeleteAppBlockBuilderRequest; class DeleteApplicationRequest; class DeleteDirectoryConfigRequest; class DeleteEntitlementRequest; class DeleteFleetRequest; class DeleteImageRequest; class DeleteImageBuilderRequest; class DeleteImagePermissionsRequest; class DeleteStackRequest; class DeleteUsageReportSubscriptionRequest; class DeleteUserRequest; class DescribeAppBlockBuilderAppBlockAssociationsRequest; class DescribeAppBlockBuildersRequest; class DescribeAppBlocksRequest; class DescribeApplicationFleetAssociationsRequest; class DescribeApplicationsRequest; class DescribeDirectoryConfigsRequest; class DescribeEntitlementsRequest; class DescribeFleetsRequest; class DescribeImageBuildersRequest; class DescribeImagePermissionsRequest; class DescribeImagesRequest; class DescribeSessionsRequest; class DescribeStacksRequest; class DescribeUsageReportSubscriptionsRequest; class DescribeUserStackAssociationsRequest; class DescribeUsersRequest; class DisableUserRequest; class DisassociateAppBlockBuilderAppBlockRequest; class DisassociateApplicationFleetRequest; class DisassociateApplicationFromEntitlementRequest; class DisassociateFleetRequest; class EnableUserRequest; class ExpireSessionRequest; class ListAssociatedFleetsRequest; class ListAssociatedStacksRequest; class ListEntitledApplicationsRequest; class ListTagsForResourceRequest; class StartAppBlockBuilderRequest; class StartFleetRequest; class StartImageBuilderRequest; class StopAppBlockBuilderRequest; class StopFleetRequest; class StopImageBuilderRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateAppBlockBuilderRequest; class UpdateApplicationRequest; class UpdateDirectoryConfigRequest; class UpdateEntitlementRequest; class UpdateFleetRequest; class UpdateImagePermissionsRequest; class UpdateStackRequest; /* End of service model forward declarations required in AppStreamClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AssociateAppBlockBuilderAppBlockOutcome; typedef Aws::Utils::Outcome AssociateApplicationFleetOutcome; typedef Aws::Utils::Outcome AssociateApplicationToEntitlementOutcome; typedef Aws::Utils::Outcome AssociateFleetOutcome; typedef Aws::Utils::Outcome BatchAssociateUserStackOutcome; typedef Aws::Utils::Outcome BatchDisassociateUserStackOutcome; typedef Aws::Utils::Outcome CopyImageOutcome; typedef Aws::Utils::Outcome CreateAppBlockOutcome; typedef Aws::Utils::Outcome CreateAppBlockBuilderOutcome; typedef Aws::Utils::Outcome CreateAppBlockBuilderStreamingURLOutcome; typedef Aws::Utils::Outcome CreateApplicationOutcome; typedef Aws::Utils::Outcome CreateDirectoryConfigOutcome; typedef Aws::Utils::Outcome CreateEntitlementOutcome; typedef Aws::Utils::Outcome CreateFleetOutcome; typedef Aws::Utils::Outcome CreateImageBuilderOutcome; typedef Aws::Utils::Outcome CreateImageBuilderStreamingURLOutcome; typedef Aws::Utils::Outcome CreateStackOutcome; typedef Aws::Utils::Outcome CreateStreamingURLOutcome; typedef Aws::Utils::Outcome CreateUpdatedImageOutcome; typedef Aws::Utils::Outcome CreateUsageReportSubscriptionOutcome; typedef Aws::Utils::Outcome CreateUserOutcome; typedef Aws::Utils::Outcome DeleteAppBlockOutcome; typedef Aws::Utils::Outcome DeleteAppBlockBuilderOutcome; typedef Aws::Utils::Outcome DeleteApplicationOutcome; typedef Aws::Utils::Outcome DeleteDirectoryConfigOutcome; typedef Aws::Utils::Outcome DeleteEntitlementOutcome; typedef Aws::Utils::Outcome DeleteFleetOutcome; typedef Aws::Utils::Outcome DeleteImageOutcome; typedef Aws::Utils::Outcome DeleteImageBuilderOutcome; typedef Aws::Utils::Outcome DeleteImagePermissionsOutcome; typedef Aws::Utils::Outcome DeleteStackOutcome; typedef Aws::Utils::Outcome DeleteUsageReportSubscriptionOutcome; typedef Aws::Utils::Outcome DeleteUserOutcome; typedef Aws::Utils::Outcome DescribeAppBlockBuilderAppBlockAssociationsOutcome; typedef Aws::Utils::Outcome DescribeAppBlockBuildersOutcome; typedef Aws::Utils::Outcome DescribeAppBlocksOutcome; typedef Aws::Utils::Outcome DescribeApplicationFleetAssociationsOutcome; typedef Aws::Utils::Outcome DescribeApplicationsOutcome; typedef Aws::Utils::Outcome DescribeDirectoryConfigsOutcome; typedef Aws::Utils::Outcome DescribeEntitlementsOutcome; typedef Aws::Utils::Outcome DescribeFleetsOutcome; typedef Aws::Utils::Outcome DescribeImageBuildersOutcome; typedef Aws::Utils::Outcome DescribeImagePermissionsOutcome; typedef Aws::Utils::Outcome DescribeImagesOutcome; typedef Aws::Utils::Outcome DescribeSessionsOutcome; typedef Aws::Utils::Outcome DescribeStacksOutcome; typedef Aws::Utils::Outcome DescribeUsageReportSubscriptionsOutcome; typedef Aws::Utils::Outcome DescribeUserStackAssociationsOutcome; typedef Aws::Utils::Outcome DescribeUsersOutcome; typedef Aws::Utils::Outcome DisableUserOutcome; typedef Aws::Utils::Outcome DisassociateAppBlockBuilderAppBlockOutcome; typedef Aws::Utils::Outcome DisassociateApplicationFleetOutcome; typedef Aws::Utils::Outcome DisassociateApplicationFromEntitlementOutcome; typedef Aws::Utils::Outcome DisassociateFleetOutcome; typedef Aws::Utils::Outcome EnableUserOutcome; typedef Aws::Utils::Outcome ExpireSessionOutcome; typedef Aws::Utils::Outcome ListAssociatedFleetsOutcome; typedef Aws::Utils::Outcome ListAssociatedStacksOutcome; typedef Aws::Utils::Outcome ListEntitledApplicationsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome StartAppBlockBuilderOutcome; typedef Aws::Utils::Outcome StartFleetOutcome; typedef Aws::Utils::Outcome StartImageBuilderOutcome; typedef Aws::Utils::Outcome StopAppBlockBuilderOutcome; typedef Aws::Utils::Outcome StopFleetOutcome; typedef Aws::Utils::Outcome StopImageBuilderOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateAppBlockBuilderOutcome; typedef Aws::Utils::Outcome UpdateApplicationOutcome; typedef Aws::Utils::Outcome UpdateDirectoryConfigOutcome; typedef Aws::Utils::Outcome UpdateEntitlementOutcome; typedef Aws::Utils::Outcome UpdateFleetOutcome; typedef Aws::Utils::Outcome UpdateImagePermissionsOutcome; typedef Aws::Utils::Outcome UpdateStackOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AssociateAppBlockBuilderAppBlockOutcomeCallable; typedef std::future AssociateApplicationFleetOutcomeCallable; typedef std::future AssociateApplicationToEntitlementOutcomeCallable; typedef std::future AssociateFleetOutcomeCallable; typedef std::future BatchAssociateUserStackOutcomeCallable; typedef std::future BatchDisassociateUserStackOutcomeCallable; typedef std::future CopyImageOutcomeCallable; typedef std::future CreateAppBlockOutcomeCallable; typedef std::future CreateAppBlockBuilderOutcomeCallable; typedef std::future CreateAppBlockBuilderStreamingURLOutcomeCallable; typedef std::future CreateApplicationOutcomeCallable; typedef std::future CreateDirectoryConfigOutcomeCallable; typedef std::future CreateEntitlementOutcomeCallable; typedef std::future CreateFleetOutcomeCallable; typedef std::future CreateImageBuilderOutcomeCallable; typedef std::future CreateImageBuilderStreamingURLOutcomeCallable; typedef std::future CreateStackOutcomeCallable; typedef std::future CreateStreamingURLOutcomeCallable; typedef std::future CreateUpdatedImageOutcomeCallable; typedef std::future CreateUsageReportSubscriptionOutcomeCallable; typedef std::future CreateUserOutcomeCallable; typedef std::future DeleteAppBlockOutcomeCallable; typedef std::future DeleteAppBlockBuilderOutcomeCallable; typedef std::future DeleteApplicationOutcomeCallable; typedef std::future DeleteDirectoryConfigOutcomeCallable; typedef std::future DeleteEntitlementOutcomeCallable; typedef std::future DeleteFleetOutcomeCallable; typedef std::future DeleteImageOutcomeCallable; typedef std::future DeleteImageBuilderOutcomeCallable; typedef std::future DeleteImagePermissionsOutcomeCallable; typedef std::future DeleteStackOutcomeCallable; typedef std::future DeleteUsageReportSubscriptionOutcomeCallable; typedef std::future DeleteUserOutcomeCallable; typedef std::future DescribeAppBlockBuilderAppBlockAssociationsOutcomeCallable; typedef std::future DescribeAppBlockBuildersOutcomeCallable; typedef std::future DescribeAppBlocksOutcomeCallable; typedef std::future DescribeApplicationFleetAssociationsOutcomeCallable; typedef std::future DescribeApplicationsOutcomeCallable; typedef std::future DescribeDirectoryConfigsOutcomeCallable; typedef std::future DescribeEntitlementsOutcomeCallable; typedef std::future DescribeFleetsOutcomeCallable; typedef std::future DescribeImageBuildersOutcomeCallable; typedef std::future DescribeImagePermissionsOutcomeCallable; typedef std::future DescribeImagesOutcomeCallable; typedef std::future DescribeSessionsOutcomeCallable; typedef std::future DescribeStacksOutcomeCallable; typedef std::future DescribeUsageReportSubscriptionsOutcomeCallable; typedef std::future DescribeUserStackAssociationsOutcomeCallable; typedef std::future DescribeUsersOutcomeCallable; typedef std::future DisableUserOutcomeCallable; typedef std::future DisassociateAppBlockBuilderAppBlockOutcomeCallable; typedef std::future DisassociateApplicationFleetOutcomeCallable; typedef std::future DisassociateApplicationFromEntitlementOutcomeCallable; typedef std::future DisassociateFleetOutcomeCallable; typedef std::future EnableUserOutcomeCallable; typedef std::future ExpireSessionOutcomeCallable; typedef std::future ListAssociatedFleetsOutcomeCallable; typedef std::future ListAssociatedStacksOutcomeCallable; typedef std::future ListEntitledApplicationsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future StartAppBlockBuilderOutcomeCallable; typedef std::future StartFleetOutcomeCallable; typedef std::future StartImageBuilderOutcomeCallable; typedef std::future StopAppBlockBuilderOutcomeCallable; typedef std::future StopFleetOutcomeCallable; typedef std::future StopImageBuilderOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateAppBlockBuilderOutcomeCallable; typedef std::future UpdateApplicationOutcomeCallable; typedef std::future UpdateDirectoryConfigOutcomeCallable; typedef std::future UpdateEntitlementOutcomeCallable; typedef std::future UpdateFleetOutcomeCallable; typedef std::future UpdateImagePermissionsOutcomeCallable; typedef std::future UpdateStackOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class AppStreamClient; /* Service model async handlers definitions */ typedef std::function&) > AssociateAppBlockBuilderAppBlockResponseReceivedHandler; typedef std::function&) > AssociateApplicationFleetResponseReceivedHandler; typedef std::function&) > AssociateApplicationToEntitlementResponseReceivedHandler; typedef std::function&) > AssociateFleetResponseReceivedHandler; typedef std::function&) > BatchAssociateUserStackResponseReceivedHandler; typedef std::function&) > BatchDisassociateUserStackResponseReceivedHandler; typedef std::function&) > CopyImageResponseReceivedHandler; typedef std::function&) > CreateAppBlockResponseReceivedHandler; typedef std::function&) > CreateAppBlockBuilderResponseReceivedHandler; typedef std::function&) > CreateAppBlockBuilderStreamingURLResponseReceivedHandler; typedef std::function&) > CreateApplicationResponseReceivedHandler; typedef std::function&) > CreateDirectoryConfigResponseReceivedHandler; typedef std::function&) > CreateEntitlementResponseReceivedHandler; typedef std::function&) > CreateFleetResponseReceivedHandler; typedef std::function&) > CreateImageBuilderResponseReceivedHandler; typedef std::function&) > CreateImageBuilderStreamingURLResponseReceivedHandler; typedef std::function&) > CreateStackResponseReceivedHandler; typedef std::function&) > CreateStreamingURLResponseReceivedHandler; typedef std::function&) > CreateUpdatedImageResponseReceivedHandler; typedef std::function&) > CreateUsageReportSubscriptionResponseReceivedHandler; typedef std::function&) > CreateUserResponseReceivedHandler; typedef std::function&) > DeleteAppBlockResponseReceivedHandler; typedef std::function&) > DeleteAppBlockBuilderResponseReceivedHandler; typedef std::function&) > DeleteApplicationResponseReceivedHandler; typedef std::function&) > DeleteDirectoryConfigResponseReceivedHandler; typedef std::function&) > DeleteEntitlementResponseReceivedHandler; typedef std::function&) > DeleteFleetResponseReceivedHandler; typedef std::function&) > DeleteImageResponseReceivedHandler; typedef std::function&) > DeleteImageBuilderResponseReceivedHandler; typedef std::function&) > DeleteImagePermissionsResponseReceivedHandler; typedef std::function&) > DeleteStackResponseReceivedHandler; typedef std::function&) > DeleteUsageReportSubscriptionResponseReceivedHandler; typedef std::function&) > DeleteUserResponseReceivedHandler; typedef std::function&) > DescribeAppBlockBuilderAppBlockAssociationsResponseReceivedHandler; typedef std::function&) > DescribeAppBlockBuildersResponseReceivedHandler; typedef std::function&) > DescribeAppBlocksResponseReceivedHandler; typedef std::function&) > DescribeApplicationFleetAssociationsResponseReceivedHandler; typedef std::function&) > DescribeApplicationsResponseReceivedHandler; typedef std::function&) > DescribeDirectoryConfigsResponseReceivedHandler; typedef std::function&) > DescribeEntitlementsResponseReceivedHandler; typedef std::function&) > DescribeFleetsResponseReceivedHandler; typedef std::function&) > DescribeImageBuildersResponseReceivedHandler; typedef std::function&) > DescribeImagePermissionsResponseReceivedHandler; typedef std::function&) > DescribeImagesResponseReceivedHandler; typedef std::function&) > DescribeSessionsResponseReceivedHandler; typedef std::function&) > DescribeStacksResponseReceivedHandler; typedef std::function&) > DescribeUsageReportSubscriptionsResponseReceivedHandler; typedef std::function&) > DescribeUserStackAssociationsResponseReceivedHandler; typedef std::function&) > DescribeUsersResponseReceivedHandler; typedef std::function&) > DisableUserResponseReceivedHandler; typedef std::function&) > DisassociateAppBlockBuilderAppBlockResponseReceivedHandler; typedef std::function&) > DisassociateApplicationFleetResponseReceivedHandler; typedef std::function&) > DisassociateApplicationFromEntitlementResponseReceivedHandler; typedef std::function&) > DisassociateFleetResponseReceivedHandler; typedef std::function&) > EnableUserResponseReceivedHandler; typedef std::function&) > ExpireSessionResponseReceivedHandler; typedef std::function&) > ListAssociatedFleetsResponseReceivedHandler; typedef std::function&) > ListAssociatedStacksResponseReceivedHandler; typedef std::function&) > ListEntitledApplicationsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > StartAppBlockBuilderResponseReceivedHandler; typedef std::function&) > StartFleetResponseReceivedHandler; typedef std::function&) > StartImageBuilderResponseReceivedHandler; typedef std::function&) > StopAppBlockBuilderResponseReceivedHandler; typedef std::function&) > StopFleetResponseReceivedHandler; typedef std::function&) > StopImageBuilderResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateAppBlockBuilderResponseReceivedHandler; typedef std::function&) > UpdateApplicationResponseReceivedHandler; typedef std::function&) > UpdateDirectoryConfigResponseReceivedHandler; typedef std::function&) > UpdateEntitlementResponseReceivedHandler; typedef std::function&) > UpdateFleetResponseReceivedHandler; typedef std::function&) > UpdateImagePermissionsResponseReceivedHandler; typedef std::function&) > UpdateStackResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace AppStream } // namespace Aws