9#include <aws/shield/ShieldErrors.h>
10#include <aws/core/client/GenericClientConfiguration.h>
11#include <aws/core/client/AWSError.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/client/AsyncCallerContext.h>
14#include <aws/core/http/HttpTypes.h>
15#include <aws/shield/ShieldEndpointProvider.h>
21#include <aws/shield/model/AssociateDRTLogBucketResult.h>
22#include <aws/shield/model/AssociateDRTRoleResult.h>
23#include <aws/shield/model/AssociateHealthCheckResult.h>
24#include <aws/shield/model/AssociateProactiveEngagementDetailsResult.h>
25#include <aws/shield/model/CreateProtectionResult.h>
26#include <aws/shield/model/CreateProtectionGroupResult.h>
27#include <aws/shield/model/CreateSubscriptionResult.h>
28#include <aws/shield/model/DeleteProtectionResult.h>
29#include <aws/shield/model/DeleteProtectionGroupResult.h>
30#include <aws/shield/model/DescribeAttackResult.h>
31#include <aws/shield/model/DescribeAttackStatisticsResult.h>
32#include <aws/shield/model/DescribeDRTAccessResult.h>
33#include <aws/shield/model/DescribeEmergencyContactSettingsResult.h>
34#include <aws/shield/model/DescribeProtectionResult.h>
35#include <aws/shield/model/DescribeProtectionGroupResult.h>
36#include <aws/shield/model/DescribeSubscriptionResult.h>
37#include <aws/shield/model/DisableApplicationLayerAutomaticResponseResult.h>
38#include <aws/shield/model/DisableProactiveEngagementResult.h>
39#include <aws/shield/model/DisassociateDRTLogBucketResult.h>
40#include <aws/shield/model/DisassociateDRTRoleResult.h>
41#include <aws/shield/model/DisassociateHealthCheckResult.h>
42#include <aws/shield/model/EnableApplicationLayerAutomaticResponseResult.h>
43#include <aws/shield/model/EnableProactiveEngagementResult.h>
44#include <aws/shield/model/GetSubscriptionStateResult.h>
45#include <aws/shield/model/ListAttacksResult.h>
46#include <aws/shield/model/ListProtectionGroupsResult.h>
47#include <aws/shield/model/ListProtectionsResult.h>
48#include <aws/shield/model/ListResourcesInProtectionGroupResult.h>
49#include <aws/shield/model/ListTagsForResourceResult.h>
50#include <aws/shield/model/TagResourceResult.h>
51#include <aws/shield/model/UntagResourceResult.h>
52#include <aws/shield/model/UpdateApplicationLayerAutomaticResponseResult.h>
53#include <aws/shield/model/UpdateEmergencyContactSettingsResult.h>
54#include <aws/shield/model/UpdateProtectionGroupResult.h>
55#include <aws/shield/model/UpdateSubscriptionResult.h>
56#include <aws/shield/model/DescribeProtectionRequest.h>
57#include <aws/shield/model/GetSubscriptionStateRequest.h>
58#include <aws/shield/model/UpdateEmergencyContactSettingsRequest.h>
59#include <aws/shield/model/DescribeEmergencyContactSettingsRequest.h>
60#include <aws/shield/model/CreateSubscriptionRequest.h>
61#include <aws/shield/model/ListProtectionsRequest.h>
62#include <aws/shield/model/DescribeAttackStatisticsRequest.h>
63#include <aws/shield/model/ListAttacksRequest.h>
64#include <aws/shield/model/DescribeSubscriptionRequest.h>
65#include <aws/shield/model/DisableProactiveEngagementRequest.h>
66#include <aws/shield/model/UpdateSubscriptionRequest.h>
67#include <aws/shield/model/DisassociateDRTRoleRequest.h>
68#include <aws/shield/model/DescribeDRTAccessRequest.h>
69#include <aws/shield/model/EnableProactiveEngagementRequest.h>
70#include <aws/shield/model/ListProtectionGroupsRequest.h>
78 class HttpClientFactory;
83 template<
typename R,
typename E>
class Outcome;
94 class AWSCredentialsProvider;
111 class AssociateDRTLogBucketRequest;
112 class AssociateDRTRoleRequest;
113 class AssociateHealthCheckRequest;
114 class AssociateProactiveEngagementDetailsRequest;
115 class CreateProtectionRequest;
116 class CreateProtectionGroupRequest;
117 class CreateSubscriptionRequest;
118 class DeleteProtectionRequest;
119 class DeleteProtectionGroupRequest;
120 class DescribeAttackRequest;
121 class DescribeAttackStatisticsRequest;
122 class DescribeDRTAccessRequest;
123 class DescribeEmergencyContactSettingsRequest;
124 class DescribeProtectionRequest;
125 class DescribeProtectionGroupRequest;
126 class DescribeSubscriptionRequest;
127 class DisableApplicationLayerAutomaticResponseRequest;
128 class DisableProactiveEngagementRequest;
129 class DisassociateDRTLogBucketRequest;
130 class DisassociateDRTRoleRequest;
131 class DisassociateHealthCheckRequest;
132 class EnableApplicationLayerAutomaticResponseRequest;
133 class EnableProactiveEngagementRequest;
134 class GetSubscriptionStateRequest;
135 class ListAttacksRequest;
136 class ListProtectionGroupsRequest;
137 class ListProtectionsRequest;
138 class ListResourcesInProtectionGroupRequest;
139 class ListTagsForResourceRequest;
140 class TagResourceRequest;
141 class UntagResourceRequest;
142 class UpdateApplicationLayerAutomaticResponseRequest;
143 class UpdateEmergencyContactSettingsRequest;
144 class UpdateProtectionGroupRequest;
145 class UpdateSubscriptionRequest;
EndpointProviderBase< ShieldClientConfiguration, ShieldBuiltInParameters, ShieldClientContextParameters > ShieldEndpointProviderBase
std::future< ListResourcesInProtectionGroupOutcome > ListResourcesInProtectionGroupOutcomeCallable
Aws::Utils::Outcome< UpdateSubscriptionResult, ShieldError > UpdateSubscriptionOutcome
Aws::Utils::Outcome< DisassociateDRTRoleResult, ShieldError > DisassociateDRTRoleOutcome
Aws::Utils::Outcome< UntagResourceResult, ShieldError > UntagResourceOutcome
std::future< DisableProactiveEngagementOutcome > DisableProactiveEngagementOutcomeCallable
Aws::Utils::Outcome< DescribeProtectionResult, ShieldError > DescribeProtectionOutcome
std::future< UpdateSubscriptionOutcome > UpdateSubscriptionOutcomeCallable
Aws::Utils::Outcome< UpdateProtectionGroupResult, ShieldError > UpdateProtectionGroupOutcome
Aws::Utils::Outcome< GetSubscriptionStateResult, ShieldError > GetSubscriptionStateOutcome
std::future< DisassociateDRTRoleOutcome > DisassociateDRTRoleOutcomeCallable
std::future< DisableApplicationLayerAutomaticResponseOutcome > DisableApplicationLayerAutomaticResponseOutcomeCallable
Aws::Utils::Outcome< DisableProactiveEngagementResult, ShieldError > DisableProactiveEngagementOutcome
Aws::Utils::Outcome< AssociateDRTLogBucketResult, ShieldError > AssociateDRTLogBucketOutcome
std::future< GetSubscriptionStateOutcome > GetSubscriptionStateOutcomeCallable
std::future< DescribeProtectionGroupOutcome > DescribeProtectionGroupOutcomeCallable
Aws::Utils::Outcome< AssociateDRTRoleResult, ShieldError > AssociateDRTRoleOutcome
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
Aws::Utils::Outcome< CreateSubscriptionResult, ShieldError > CreateSubscriptionOutcome
std::future< DescribeProtectionOutcome > DescribeProtectionOutcomeCallable
Aws::Utils::Outcome< UpdateApplicationLayerAutomaticResponseResult, ShieldError > UpdateApplicationLayerAutomaticResponseOutcome
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
Aws::Utils::Outcome< DisableApplicationLayerAutomaticResponseResult, ShieldError > DisableApplicationLayerAutomaticResponseOutcome
std::future< DisassociateHealthCheckOutcome > DisassociateHealthCheckOutcomeCallable
std::future< AssociateProactiveEngagementDetailsOutcome > AssociateProactiveEngagementDetailsOutcomeCallable
std::future< CreateProtectionGroupOutcome > CreateProtectionGroupOutcomeCallable
std::future< DescribeEmergencyContactSettingsOutcome > DescribeEmergencyContactSettingsOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
Aws::Utils::Outcome< DisassociateHealthCheckResult, ShieldError > DisassociateHealthCheckOutcome
Aws::Utils::Outcome< DescribeSubscriptionResult, ShieldError > DescribeSubscriptionOutcome
std::future< ListProtectionGroupsOutcome > ListProtectionGroupsOutcomeCallable
std::future< EnableProactiveEngagementOutcome > EnableProactiveEngagementOutcomeCallable
Aws::Utils::Outcome< EnableProactiveEngagementResult, ShieldError > EnableProactiveEngagementOutcome
std::future< ListProtectionsOutcome > ListProtectionsOutcomeCallable
Aws::Utils::Outcome< DescribeAttackResult, ShieldError > DescribeAttackOutcome
std::future< UpdateApplicationLayerAutomaticResponseOutcome > UpdateApplicationLayerAutomaticResponseOutcomeCallable
Aws::Utils::Outcome< CreateProtectionResult, ShieldError > CreateProtectionOutcome
std::future< UpdateEmergencyContactSettingsOutcome > UpdateEmergencyContactSettingsOutcomeCallable
Aws::Utils::Outcome< ListProtectionsResult, ShieldError > ListProtectionsOutcome
Aws::Utils::Outcome< DescribeDRTAccessResult, ShieldError > DescribeDRTAccessOutcome
Aws::Utils::Outcome< AssociateProactiveEngagementDetailsResult, ShieldError > AssociateProactiveEngagementDetailsOutcome
Aws::Utils::Outcome< ListAttacksResult, ShieldError > ListAttacksOutcome
std::future< UpdateProtectionGroupOutcome > UpdateProtectionGroupOutcomeCallable
std::future< DeleteProtectionGroupOutcome > DeleteProtectionGroupOutcomeCallable
Aws::Utils::Outcome< DescribeAttackStatisticsResult, ShieldError > DescribeAttackStatisticsOutcome
Aws::Utils::Outcome< ListTagsForResourceResult, ShieldError > ListTagsForResourceOutcome
std::future< AssociateDRTLogBucketOutcome > AssociateDRTLogBucketOutcomeCallable
Aws::Utils::Outcome< TagResourceResult, ShieldError > TagResourceOutcome
Aws::Utils::Outcome< DescribeEmergencyContactSettingsResult, ShieldError > DescribeEmergencyContactSettingsOutcome
std::future< DeleteProtectionOutcome > DeleteProtectionOutcomeCallable
std::future< AssociateDRTRoleOutcome > AssociateDRTRoleOutcomeCallable
Aws::Utils::Outcome< UpdateEmergencyContactSettingsResult, ShieldError > UpdateEmergencyContactSettingsOutcome
std::future< DisassociateDRTLogBucketOutcome > DisassociateDRTLogBucketOutcomeCallable
std::future< DescribeSubscriptionOutcome > DescribeSubscriptionOutcomeCallable
Aws::Utils::Outcome< DeleteProtectionResult, ShieldError > DeleteProtectionOutcome
Aws::Utils::Outcome< CreateProtectionGroupResult, ShieldError > CreateProtectionGroupOutcome
std::future< DescribeAttackOutcome > DescribeAttackOutcomeCallable
Aws::Utils::Outcome< DescribeProtectionGroupResult, ShieldError > DescribeProtectionGroupOutcome
Aws::Utils::Outcome< EnableApplicationLayerAutomaticResponseResult, ShieldError > EnableApplicationLayerAutomaticResponseOutcome
std::future< CreateSubscriptionOutcome > CreateSubscriptionOutcomeCallable
std::future< DescribeDRTAccessOutcome > DescribeDRTAccessOutcomeCallable
std::future< CreateProtectionOutcome > CreateProtectionOutcomeCallable
std::future< DescribeAttackStatisticsOutcome > DescribeAttackStatisticsOutcomeCallable
Aws::Utils::Outcome< DeleteProtectionGroupResult, ShieldError > DeleteProtectionGroupOutcome
std::future< ListAttacksOutcome > ListAttacksOutcomeCallable
std::future< EnableApplicationLayerAutomaticResponseOutcome > EnableApplicationLayerAutomaticResponseOutcomeCallable
std::future< AssociateHealthCheckOutcome > AssociateHealthCheckOutcomeCallable
Aws::Utils::Outcome< ListProtectionGroupsResult, ShieldError > ListProtectionGroupsOutcome
Aws::Utils::Outcome< AssociateHealthCheckResult, ShieldError > AssociateHealthCheckOutcome
Aws::Utils::Outcome< DisassociateDRTLogBucketResult, ShieldError > DisassociateDRTLogBucketOutcome
Aws::Utils::Outcome< ListResourcesInProtectionGroupResult, ShieldError > ListResourcesInProtectionGroupOutcome
std::function< void(const ShieldClient *, const Model::AssociateDRTLogBucketRequest &, const Model::AssociateDRTLogBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AssociateDRTLogBucketResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DeleteProtectionRequest &, const Model::DeleteProtectionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteProtectionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeAttackStatisticsRequest &, const Model::DescribeAttackStatisticsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeAttackStatisticsResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::UpdateProtectionGroupRequest &, const Model::UpdateProtectionGroupOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateProtectionGroupResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForResourceResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DisassociateDRTLogBucketRequest &, const Model::DisassociateDRTLogBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DisassociateDRTLogBucketResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DisableProactiveEngagementRequest &, const Model::DisableProactiveEngagementOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DisableProactiveEngagementResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeAttackRequest &, const Model::DescribeAttackOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeAttackResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::AssociateDRTRoleRequest &, const Model::AssociateDRTRoleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AssociateDRTRoleResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::GetSubscriptionStateRequest &, const Model::GetSubscriptionStateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetSubscriptionStateResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeDRTAccessRequest &, const Model::DescribeDRTAccessOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeDRTAccessResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagResourceResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DeleteProtectionGroupRequest &, const Model::DeleteProtectionGroupOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteProtectionGroupResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeProtectionGroupRequest &, const Model::DescribeProtectionGroupOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeProtectionGroupResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::ListAttacksRequest &, const Model::ListAttacksOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListAttacksResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeProtectionRequest &, const Model::DescribeProtectionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeProtectionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DisableApplicationLayerAutomaticResponseRequest &, const Model::DisableApplicationLayerAutomaticResponseOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DisableApplicationLayerAutomaticResponseResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::UpdateSubscriptionRequest &, const Model::UpdateSubscriptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateSubscriptionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::CreateProtectionRequest &, const Model::CreateProtectionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateProtectionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeSubscriptionRequest &, const Model::DescribeSubscriptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeSubscriptionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::CreateSubscriptionRequest &, const Model::CreateSubscriptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateSubscriptionResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::EnableApplicationLayerAutomaticResponseRequest &, const Model::EnableApplicationLayerAutomaticResponseOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > EnableApplicationLayerAutomaticResponseResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::CreateProtectionGroupRequest &, const Model::CreateProtectionGroupOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateProtectionGroupResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::UpdateEmergencyContactSettingsRequest &, const Model::UpdateEmergencyContactSettingsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateEmergencyContactSettingsResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DescribeEmergencyContactSettingsRequest &, const Model::DescribeEmergencyContactSettingsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeEmergencyContactSettingsResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagResourceResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::UpdateApplicationLayerAutomaticResponseRequest &, const Model::UpdateApplicationLayerAutomaticResponseOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateApplicationLayerAutomaticResponseResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DisassociateDRTRoleRequest &, const Model::DisassociateDRTRoleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DisassociateDRTRoleResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::DisassociateHealthCheckRequest &, const Model::DisassociateHealthCheckOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DisassociateHealthCheckResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::AssociateHealthCheckRequest &, const Model::AssociateHealthCheckOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AssociateHealthCheckResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::ListResourcesInProtectionGroupRequest &, const Model::ListResourcesInProtectionGroupOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListResourcesInProtectionGroupResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::EnableProactiveEngagementRequest &, const Model::EnableProactiveEngagementOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > EnableProactiveEngagementResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::ListProtectionGroupsRequest &, const Model::ListProtectionGroupsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListProtectionGroupsResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::AssociateProactiveEngagementDetailsRequest &, const Model::AssociateProactiveEngagementDetailsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AssociateProactiveEngagementDetailsResponseReceivedHandler
std::function< void(const ShieldClient *, const Model::ListProtectionsRequest &, const Model::ListProtectionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListProtectionsResponseReceivedHandler