/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #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 #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 #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 #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 #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 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 Xml { class XmlDocument; } // namespace Xml } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace EC2 { namespace Model { class AcceptReservedInstancesExchangeQuoteRequest; class AcceptTransitGatewayPeeringAttachmentRequest; class AcceptTransitGatewayVpcAttachmentRequest; class AcceptVpcEndpointConnectionsRequest; class AcceptVpcPeeringConnectionRequest; class AdvertiseByoipCidrRequest; class AllocateAddressRequest; class AllocateHostsRequest; class ApplySecurityGroupsToClientVpnTargetNetworkRequest; class AssignIpv6AddressesRequest; class AssignPrivateIpAddressesRequest; class AssociateAddressRequest; class AssociateClientVpnTargetNetworkRequest; class AssociateDhcpOptionsRequest; class AssociateIamInstanceProfileRequest; class AssociateRouteTableRequest; class AssociateSubnetCidrBlockRequest; class AssociateTransitGatewayMulticastDomainRequest; class AssociateTransitGatewayRouteTableRequest; class AssociateVpcCidrBlockRequest; class AttachClassicLinkVpcRequest; class AttachInternetGatewayRequest; class AttachNetworkInterfaceRequest; class AttachVolumeRequest; class AttachVpnGatewayRequest; class AuthorizeClientVpnIngressRequest; class AuthorizeSecurityGroupEgressRequest; class AuthorizeSecurityGroupIngressRequest; class BundleInstanceRequest; class CancelBundleTaskRequest; class CancelCapacityReservationRequest; class CancelConversionTaskRequest; class CancelExportTaskRequest; class CancelImportTaskRequest; class CancelReservedInstancesListingRequest; class CancelSpotFleetRequestsRequest; class CancelSpotInstanceRequestsRequest; class ConfirmProductInstanceRequest; class CopyFpgaImageRequest; class CopyImageRequest; class CopySnapshotRequest; class CreateCapacityReservationRequest; class CreateCarrierGatewayRequest; class CreateClientVpnEndpointRequest; class CreateClientVpnRouteRequest; class CreateCustomerGatewayRequest; class CreateDefaultSubnetRequest; class CreateDefaultVpcRequest; class CreateDhcpOptionsRequest; class CreateEgressOnlyInternetGatewayRequest; class CreateFleetRequest; class CreateFlowLogsRequest; class CreateFpgaImageRequest; class CreateImageRequest; class CreateInstanceExportTaskRequest; class CreateInternetGatewayRequest; class CreateKeyPairRequest; class CreateLaunchTemplateRequest; class CreateLaunchTemplateVersionRequest; class CreateLocalGatewayRouteRequest; class CreateLocalGatewayRouteTableVpcAssociationRequest; class CreateManagedPrefixListRequest; class CreateNatGatewayRequest; class CreateNetworkAclRequest; class CreateNetworkAclEntryRequest; class CreateNetworkInterfaceRequest; class CreateNetworkInterfacePermissionRequest; class CreatePlacementGroupRequest; class CreateReservedInstancesListingRequest; class CreateRouteRequest; class CreateRouteTableRequest; class CreateSecurityGroupRequest; class CreateSnapshotRequest; class CreateSnapshotsRequest; class CreateSpotDatafeedSubscriptionRequest; class CreateSubnetRequest; class CreateTagsRequest; class CreateTrafficMirrorFilterRequest; class CreateTrafficMirrorFilterRuleRequest; class CreateTrafficMirrorSessionRequest; class CreateTrafficMirrorTargetRequest; class CreateTransitGatewayRequest; class CreateTransitGatewayMulticastDomainRequest; class CreateTransitGatewayPeeringAttachmentRequest; class CreateTransitGatewayPrefixListReferenceRequest; class CreateTransitGatewayRouteRequest; class CreateTransitGatewayRouteTableRequest; class CreateTransitGatewayVpcAttachmentRequest; class CreateVolumeRequest; class CreateVpcRequest; class CreateVpcEndpointRequest; class CreateVpcEndpointConnectionNotificationRequest; class CreateVpcEndpointServiceConfigurationRequest; class CreateVpcPeeringConnectionRequest; class CreateVpnConnectionRequest; class CreateVpnConnectionRouteRequest; class CreateVpnGatewayRequest; class DeleteCarrierGatewayRequest; class DeleteClientVpnEndpointRequest; class DeleteClientVpnRouteRequest; class DeleteCustomerGatewayRequest; class DeleteDhcpOptionsRequest; class DeleteEgressOnlyInternetGatewayRequest; class DeleteFleetsRequest; class DeleteFlowLogsRequest; class DeleteFpgaImageRequest; class DeleteInternetGatewayRequest; class DeleteKeyPairRequest; class DeleteLaunchTemplateRequest; class DeleteLaunchTemplateVersionsRequest; class DeleteLocalGatewayRouteRequest; class DeleteLocalGatewayRouteTableVpcAssociationRequest; class DeleteManagedPrefixListRequest; class DeleteNatGatewayRequest; class DeleteNetworkAclRequest; class DeleteNetworkAclEntryRequest; class DeleteNetworkInterfaceRequest; class DeleteNetworkInterfacePermissionRequest; class DeletePlacementGroupRequest; class DeleteQueuedReservedInstancesRequest; class DeleteRouteRequest; class DeleteRouteTableRequest; class DeleteSecurityGroupRequest; class DeleteSnapshotRequest; class DeleteSpotDatafeedSubscriptionRequest; class DeleteSubnetRequest; class DeleteTagsRequest; class DeleteTrafficMirrorFilterRequest; class DeleteTrafficMirrorFilterRuleRequest; class DeleteTrafficMirrorSessionRequest; class DeleteTrafficMirrorTargetRequest; class DeleteTransitGatewayRequest; class DeleteTransitGatewayMulticastDomainRequest; class DeleteTransitGatewayPeeringAttachmentRequest; class DeleteTransitGatewayPrefixListReferenceRequest; class DeleteTransitGatewayRouteRequest; class DeleteTransitGatewayRouteTableRequest; class DeleteTransitGatewayVpcAttachmentRequest; class DeleteVolumeRequest; class DeleteVpcRequest; class DeleteVpcEndpointConnectionNotificationsRequest; class DeleteVpcEndpointServiceConfigurationsRequest; class DeleteVpcEndpointsRequest; class DeleteVpcPeeringConnectionRequest; class DeleteVpnConnectionRequest; class DeleteVpnConnectionRouteRequest; class DeleteVpnGatewayRequest; class DeprovisionByoipCidrRequest; class DeregisterImageRequest; class DeregisterInstanceEventNotificationAttributesRequest; class DeregisterTransitGatewayMulticastGroupMembersRequest; class DeregisterTransitGatewayMulticastGroupSourcesRequest; class DescribeAccountAttributesRequest; class DescribeAddressesRequest; class DescribeAggregateIdFormatRequest; class DescribeAvailabilityZonesRequest; class DescribeBundleTasksRequest; class DescribeByoipCidrsRequest; class DescribeCapacityReservationsRequest; class DescribeCarrierGatewaysRequest; class DescribeClassicLinkInstancesRequest; class DescribeClientVpnAuthorizationRulesRequest; class DescribeClientVpnConnectionsRequest; class DescribeClientVpnEndpointsRequest; class DescribeClientVpnRoutesRequest; class DescribeClientVpnTargetNetworksRequest; class DescribeCoipPoolsRequest; class DescribeConversionTasksRequest; class DescribeCustomerGatewaysRequest; class DescribeDhcpOptionsRequest; class DescribeEgressOnlyInternetGatewaysRequest; class DescribeElasticGpusRequest; class DescribeExportImageTasksRequest; class DescribeExportTasksRequest; class DescribeFastSnapshotRestoresRequest; class DescribeFleetHistoryRequest; class DescribeFleetInstancesRequest; class DescribeFleetsRequest; class DescribeFlowLogsRequest; class DescribeFpgaImageAttributeRequest; class DescribeFpgaImagesRequest; class DescribeHostReservationOfferingsRequest; class DescribeHostReservationsRequest; class DescribeHostsRequest; class DescribeIamInstanceProfileAssociationsRequest; class DescribeIdFormatRequest; class DescribeIdentityIdFormatRequest; class DescribeImageAttributeRequest; class DescribeImagesRequest; class DescribeImportImageTasksRequest; class DescribeImportSnapshotTasksRequest; class DescribeInstanceAttributeRequest; class DescribeInstanceCreditSpecificationsRequest; class DescribeInstanceEventNotificationAttributesRequest; class DescribeInstanceStatusRequest; class DescribeInstanceTypeOfferingsRequest; class DescribeInstanceTypesRequest; class DescribeInstancesRequest; class DescribeInternetGatewaysRequest; class DescribeIpv6PoolsRequest; class DescribeKeyPairsRequest; class DescribeLaunchTemplateVersionsRequest; class DescribeLaunchTemplatesRequest; class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest; class DescribeLocalGatewayRouteTableVpcAssociationsRequest; class DescribeLocalGatewayRouteTablesRequest; class DescribeLocalGatewayVirtualInterfaceGroupsRequest; class DescribeLocalGatewayVirtualInterfacesRequest; class DescribeLocalGatewaysRequest; class DescribeManagedPrefixListsRequest; class DescribeMovingAddressesRequest; class DescribeNatGatewaysRequest; class DescribeNetworkAclsRequest; class DescribeNetworkInterfaceAttributeRequest; class DescribeNetworkInterfacePermissionsRequest; class DescribeNetworkInterfacesRequest; class DescribePlacementGroupsRequest; class DescribePrefixListsRequest; class DescribePrincipalIdFormatRequest; class DescribePublicIpv4PoolsRequest; class DescribeRegionsRequest; class DescribeReservedInstancesRequest; class DescribeReservedInstancesListingsRequest; class DescribeReservedInstancesModificationsRequest; class DescribeReservedInstancesOfferingsRequest; class DescribeRouteTablesRequest; class DescribeScheduledInstanceAvailabilityRequest; class DescribeScheduledInstancesRequest; class DescribeSecurityGroupReferencesRequest; class DescribeSecurityGroupsRequest; class DescribeSnapshotAttributeRequest; class DescribeSnapshotsRequest; class DescribeSpotDatafeedSubscriptionRequest; class DescribeSpotFleetInstancesRequest; class DescribeSpotFleetRequestHistoryRequest; class DescribeSpotFleetRequestsRequest; class DescribeSpotInstanceRequestsRequest; class DescribeSpotPriceHistoryRequest; class DescribeStaleSecurityGroupsRequest; class DescribeSubnetsRequest; class DescribeTagsRequest; class DescribeTrafficMirrorFiltersRequest; class DescribeTrafficMirrorSessionsRequest; class DescribeTrafficMirrorTargetsRequest; class DescribeTransitGatewayAttachmentsRequest; class DescribeTransitGatewayMulticastDomainsRequest; class DescribeTransitGatewayPeeringAttachmentsRequest; class DescribeTransitGatewayRouteTablesRequest; class DescribeTransitGatewayVpcAttachmentsRequest; class DescribeTransitGatewaysRequest; class DescribeVolumeAttributeRequest; class DescribeVolumeStatusRequest; class DescribeVolumesRequest; class DescribeVolumesModificationsRequest; class DescribeVpcAttributeRequest; class DescribeVpcClassicLinkRequest; class DescribeVpcClassicLinkDnsSupportRequest; class DescribeVpcEndpointConnectionNotificationsRequest; class DescribeVpcEndpointConnectionsRequest; class DescribeVpcEndpointServiceConfigurationsRequest; class DescribeVpcEndpointServicePermissionsRequest; class DescribeVpcEndpointServicesRequest; class DescribeVpcEndpointsRequest; class DescribeVpcPeeringConnectionsRequest; class DescribeVpcsRequest; class DescribeVpnConnectionsRequest; class DescribeVpnGatewaysRequest; class DetachClassicLinkVpcRequest; class DetachInternetGatewayRequest; class DetachNetworkInterfaceRequest; class DetachVolumeRequest; class DetachVpnGatewayRequest; class DisableEbsEncryptionByDefaultRequest; class DisableFastSnapshotRestoresRequest; class DisableTransitGatewayRouteTablePropagationRequest; class DisableVgwRoutePropagationRequest; class DisableVpcClassicLinkRequest; class DisableVpcClassicLinkDnsSupportRequest; class DisassociateAddressRequest; class DisassociateClientVpnTargetNetworkRequest; class DisassociateIamInstanceProfileRequest; class DisassociateRouteTableRequest; class DisassociateSubnetCidrBlockRequest; class DisassociateTransitGatewayMulticastDomainRequest; class DisassociateTransitGatewayRouteTableRequest; class DisassociateVpcCidrBlockRequest; class EnableEbsEncryptionByDefaultRequest; class EnableFastSnapshotRestoresRequest; class EnableTransitGatewayRouteTablePropagationRequest; class EnableVgwRoutePropagationRequest; class EnableVolumeIORequest; class EnableVpcClassicLinkRequest; class EnableVpcClassicLinkDnsSupportRequest; class ExportClientVpnClientCertificateRevocationListRequest; class ExportClientVpnClientConfigurationRequest; class ExportImageRequest; class ExportTransitGatewayRoutesRequest; class GetAssociatedIpv6PoolCidrsRequest; class GetCapacityReservationUsageRequest; class GetCoipPoolUsageRequest; class GetConsoleOutputRequest; class GetConsoleScreenshotRequest; class GetDefaultCreditSpecificationRequest; class GetEbsDefaultKmsKeyIdRequest; class GetEbsEncryptionByDefaultRequest; class GetGroupsForCapacityReservationRequest; class GetHostReservationPurchasePreviewRequest; class GetLaunchTemplateDataRequest; class GetManagedPrefixListAssociationsRequest; class GetManagedPrefixListEntriesRequest; class GetPasswordDataRequest; class GetReservedInstancesExchangeQuoteRequest; class GetTransitGatewayAttachmentPropagationsRequest; class GetTransitGatewayMulticastDomainAssociationsRequest; class GetTransitGatewayPrefixListReferencesRequest; class GetTransitGatewayRouteTableAssociationsRequest; class GetTransitGatewayRouteTablePropagationsRequest; class ImportClientVpnClientCertificateRevocationListRequest; class ImportImageRequest; class ImportInstanceRequest; class ImportKeyPairRequest; class ImportSnapshotRequest; class ImportVolumeRequest; class ModifyAvailabilityZoneGroupRequest; class ModifyCapacityReservationRequest; class ModifyClientVpnEndpointRequest; class ModifyDefaultCreditSpecificationRequest; class ModifyEbsDefaultKmsKeyIdRequest; class ModifyFleetRequest; class ModifyFpgaImageAttributeRequest; class ModifyHostsRequest; class ModifyIdFormatRequest; class ModifyIdentityIdFormatRequest; class ModifyImageAttributeRequest; class ModifyInstanceAttributeRequest; class ModifyInstanceCapacityReservationAttributesRequest; class ModifyInstanceCreditSpecificationRequest; class ModifyInstanceEventStartTimeRequest; class ModifyInstanceMetadataOptionsRequest; class ModifyInstancePlacementRequest; class ModifyLaunchTemplateRequest; class ModifyManagedPrefixListRequest; class ModifyNetworkInterfaceAttributeRequest; class ModifyReservedInstancesRequest; class ModifySnapshotAttributeRequest; class ModifySpotFleetRequestRequest; class ModifySubnetAttributeRequest; class ModifyTrafficMirrorFilterNetworkServicesRequest; class ModifyTrafficMirrorFilterRuleRequest; class ModifyTrafficMirrorSessionRequest; class ModifyTransitGatewayRequest; class ModifyTransitGatewayPrefixListReferenceRequest; class ModifyTransitGatewayVpcAttachmentRequest; class ModifyVolumeRequest; class ModifyVolumeAttributeRequest; class ModifyVpcAttributeRequest; class ModifyVpcEndpointRequest; class ModifyVpcEndpointConnectionNotificationRequest; class ModifyVpcEndpointServiceConfigurationRequest; class ModifyVpcEndpointServicePermissionsRequest; class ModifyVpcPeeringConnectionOptionsRequest; class ModifyVpcTenancyRequest; class ModifyVpnConnectionRequest; class ModifyVpnTunnelCertificateRequest; class ModifyVpnTunnelOptionsRequest; class MonitorInstancesRequest; class MoveAddressToVpcRequest; class ProvisionByoipCidrRequest; class PurchaseHostReservationRequest; class PurchaseReservedInstancesOfferingRequest; class PurchaseScheduledInstancesRequest; class RebootInstancesRequest; class RegisterImageRequest; class RegisterInstanceEventNotificationAttributesRequest; class RegisterTransitGatewayMulticastGroupMembersRequest; class RegisterTransitGatewayMulticastGroupSourcesRequest; class RejectTransitGatewayPeeringAttachmentRequest; class RejectTransitGatewayVpcAttachmentRequest; class RejectVpcEndpointConnectionsRequest; class RejectVpcPeeringConnectionRequest; class ReleaseAddressRequest; class ReleaseHostsRequest; class ReplaceIamInstanceProfileAssociationRequest; class ReplaceNetworkAclAssociationRequest; class ReplaceNetworkAclEntryRequest; class ReplaceRouteRequest; class ReplaceRouteTableAssociationRequest; class ReplaceTransitGatewayRouteRequest; class ReportInstanceStatusRequest; class RequestSpotFleetRequest; class RequestSpotInstancesRequest; class ResetEbsDefaultKmsKeyIdRequest; class ResetFpgaImageAttributeRequest; class ResetImageAttributeRequest; class ResetInstanceAttributeRequest; class ResetNetworkInterfaceAttributeRequest; class ResetSnapshotAttributeRequest; class RestoreAddressToClassicRequest; class RestoreManagedPrefixListVersionRequest; class RevokeClientVpnIngressRequest; class RevokeSecurityGroupEgressRequest; class RevokeSecurityGroupIngressRequest; class RunInstancesRequest; class RunScheduledInstancesRequest; class SearchLocalGatewayRoutesRequest; class SearchTransitGatewayMulticastGroupsRequest; class SearchTransitGatewayRoutesRequest; class SendDiagnosticInterruptRequest; class StartInstancesRequest; class StartVpcEndpointServicePrivateDnsVerificationRequest; class StopInstancesRequest; class TerminateClientVpnConnectionsRequest; class TerminateInstancesRequest; class UnassignIpv6AddressesRequest; class UnassignPrivateIpAddressesRequest; class UnmonitorInstancesRequest; class UpdateSecurityGroupRuleDescriptionsEgressRequest; class UpdateSecurityGroupRuleDescriptionsIngressRequest; class WithdrawByoipCidrRequest; typedef Aws::Utils::Outcome AcceptReservedInstancesExchangeQuoteOutcome; typedef Aws::Utils::Outcome AcceptTransitGatewayPeeringAttachmentOutcome; typedef Aws::Utils::Outcome AcceptTransitGatewayVpcAttachmentOutcome; typedef Aws::Utils::Outcome AcceptVpcEndpointConnectionsOutcome; typedef Aws::Utils::Outcome AcceptVpcPeeringConnectionOutcome; typedef Aws::Utils::Outcome AdvertiseByoipCidrOutcome; typedef Aws::Utils::Outcome AllocateAddressOutcome; typedef Aws::Utils::Outcome AllocateHostsOutcome; typedef Aws::Utils::Outcome ApplySecurityGroupsToClientVpnTargetNetworkOutcome; typedef Aws::Utils::Outcome AssignIpv6AddressesOutcome; typedef Aws::Utils::Outcome AssignPrivateIpAddressesOutcome; typedef Aws::Utils::Outcome AssociateAddressOutcome; typedef Aws::Utils::Outcome AssociateClientVpnTargetNetworkOutcome; typedef Aws::Utils::Outcome AssociateDhcpOptionsOutcome; typedef Aws::Utils::Outcome AssociateIamInstanceProfileOutcome; typedef Aws::Utils::Outcome AssociateRouteTableOutcome; typedef Aws::Utils::Outcome AssociateSubnetCidrBlockOutcome; typedef Aws::Utils::Outcome AssociateTransitGatewayMulticastDomainOutcome; typedef Aws::Utils::Outcome AssociateTransitGatewayRouteTableOutcome; typedef Aws::Utils::Outcome AssociateVpcCidrBlockOutcome; typedef Aws::Utils::Outcome AttachClassicLinkVpcOutcome; typedef Aws::Utils::Outcome AttachInternetGatewayOutcome; typedef Aws::Utils::Outcome AttachNetworkInterfaceOutcome; typedef Aws::Utils::Outcome AttachVolumeOutcome; typedef Aws::Utils::Outcome AttachVpnGatewayOutcome; typedef Aws::Utils::Outcome AuthorizeClientVpnIngressOutcome; typedef Aws::Utils::Outcome AuthorizeSecurityGroupEgressOutcome; typedef Aws::Utils::Outcome AuthorizeSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome BundleInstanceOutcome; typedef Aws::Utils::Outcome CancelBundleTaskOutcome; typedef Aws::Utils::Outcome CancelCapacityReservationOutcome; typedef Aws::Utils::Outcome CancelConversionTaskOutcome; typedef Aws::Utils::Outcome CancelExportTaskOutcome; typedef Aws::Utils::Outcome CancelImportTaskOutcome; typedef Aws::Utils::Outcome CancelReservedInstancesListingOutcome; typedef Aws::Utils::Outcome CancelSpotFleetRequestsOutcome; typedef Aws::Utils::Outcome CancelSpotInstanceRequestsOutcome; typedef Aws::Utils::Outcome ConfirmProductInstanceOutcome; typedef Aws::Utils::Outcome CopyFpgaImageOutcome; typedef Aws::Utils::Outcome CopyImageOutcome; typedef Aws::Utils::Outcome CopySnapshotOutcome; typedef Aws::Utils::Outcome CreateCapacityReservationOutcome; typedef Aws::Utils::Outcome CreateCarrierGatewayOutcome; typedef Aws::Utils::Outcome CreateClientVpnEndpointOutcome; typedef Aws::Utils::Outcome CreateClientVpnRouteOutcome; typedef Aws::Utils::Outcome CreateCustomerGatewayOutcome; typedef Aws::Utils::Outcome CreateDefaultSubnetOutcome; typedef Aws::Utils::Outcome CreateDefaultVpcOutcome; typedef Aws::Utils::Outcome CreateDhcpOptionsOutcome; typedef Aws::Utils::Outcome CreateEgressOnlyInternetGatewayOutcome; typedef Aws::Utils::Outcome CreateFleetOutcome; typedef Aws::Utils::Outcome CreateFlowLogsOutcome; typedef Aws::Utils::Outcome CreateFpgaImageOutcome; typedef Aws::Utils::Outcome CreateImageOutcome; typedef Aws::Utils::Outcome CreateInstanceExportTaskOutcome; typedef Aws::Utils::Outcome CreateInternetGatewayOutcome; typedef Aws::Utils::Outcome CreateKeyPairOutcome; typedef Aws::Utils::Outcome CreateLaunchTemplateOutcome; typedef Aws::Utils::Outcome CreateLaunchTemplateVersionOutcome; typedef Aws::Utils::Outcome CreateLocalGatewayRouteOutcome; typedef Aws::Utils::Outcome CreateLocalGatewayRouteTableVpcAssociationOutcome; typedef Aws::Utils::Outcome CreateManagedPrefixListOutcome; typedef Aws::Utils::Outcome CreateNatGatewayOutcome; typedef Aws::Utils::Outcome CreateNetworkAclOutcome; typedef Aws::Utils::Outcome CreateNetworkAclEntryOutcome; typedef Aws::Utils::Outcome CreateNetworkInterfaceOutcome; typedef Aws::Utils::Outcome CreateNetworkInterfacePermissionOutcome; typedef Aws::Utils::Outcome CreatePlacementGroupOutcome; typedef Aws::Utils::Outcome CreateReservedInstancesListingOutcome; typedef Aws::Utils::Outcome CreateRouteOutcome; typedef Aws::Utils::Outcome CreateRouteTableOutcome; typedef Aws::Utils::Outcome CreateSecurityGroupOutcome; typedef Aws::Utils::Outcome CreateSnapshotOutcome; typedef Aws::Utils::Outcome CreateSnapshotsOutcome; typedef Aws::Utils::Outcome CreateSpotDatafeedSubscriptionOutcome; typedef Aws::Utils::Outcome CreateSubnetOutcome; typedef Aws::Utils::Outcome CreateTagsOutcome; typedef Aws::Utils::Outcome CreateTrafficMirrorFilterOutcome; typedef Aws::Utils::Outcome CreateTrafficMirrorFilterRuleOutcome; typedef Aws::Utils::Outcome CreateTrafficMirrorSessionOutcome; typedef Aws::Utils::Outcome CreateTrafficMirrorTargetOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayMulticastDomainOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayPeeringAttachmentOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayPrefixListReferenceOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayRouteOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayRouteTableOutcome; typedef Aws::Utils::Outcome CreateTransitGatewayVpcAttachmentOutcome; typedef Aws::Utils::Outcome CreateVolumeOutcome; typedef Aws::Utils::Outcome CreateVpcOutcome; typedef Aws::Utils::Outcome CreateVpcEndpointOutcome; typedef Aws::Utils::Outcome CreateVpcEndpointConnectionNotificationOutcome; typedef Aws::Utils::Outcome CreateVpcEndpointServiceConfigurationOutcome; typedef Aws::Utils::Outcome CreateVpcPeeringConnectionOutcome; typedef Aws::Utils::Outcome CreateVpnConnectionOutcome; typedef Aws::Utils::Outcome CreateVpnConnectionRouteOutcome; typedef Aws::Utils::Outcome CreateVpnGatewayOutcome; typedef Aws::Utils::Outcome DeleteCarrierGatewayOutcome; typedef Aws::Utils::Outcome DeleteClientVpnEndpointOutcome; typedef Aws::Utils::Outcome DeleteClientVpnRouteOutcome; typedef Aws::Utils::Outcome DeleteCustomerGatewayOutcome; typedef Aws::Utils::Outcome DeleteDhcpOptionsOutcome; typedef Aws::Utils::Outcome DeleteEgressOnlyInternetGatewayOutcome; typedef Aws::Utils::Outcome DeleteFleetsOutcome; typedef Aws::Utils::Outcome DeleteFlowLogsOutcome; typedef Aws::Utils::Outcome DeleteFpgaImageOutcome; typedef Aws::Utils::Outcome DeleteInternetGatewayOutcome; typedef Aws::Utils::Outcome DeleteKeyPairOutcome; typedef Aws::Utils::Outcome DeleteLaunchTemplateOutcome; typedef Aws::Utils::Outcome DeleteLaunchTemplateVersionsOutcome; typedef Aws::Utils::Outcome DeleteLocalGatewayRouteOutcome; typedef Aws::Utils::Outcome DeleteLocalGatewayRouteTableVpcAssociationOutcome; typedef Aws::Utils::Outcome DeleteManagedPrefixListOutcome; typedef Aws::Utils::Outcome DeleteNatGatewayOutcome; typedef Aws::Utils::Outcome DeleteNetworkAclOutcome; typedef Aws::Utils::Outcome DeleteNetworkAclEntryOutcome; typedef Aws::Utils::Outcome DeleteNetworkInterfaceOutcome; typedef Aws::Utils::Outcome DeleteNetworkInterfacePermissionOutcome; typedef Aws::Utils::Outcome DeletePlacementGroupOutcome; typedef Aws::Utils::Outcome DeleteQueuedReservedInstancesOutcome; typedef Aws::Utils::Outcome DeleteRouteOutcome; typedef Aws::Utils::Outcome DeleteRouteTableOutcome; typedef Aws::Utils::Outcome DeleteSecurityGroupOutcome; typedef Aws::Utils::Outcome DeleteSnapshotOutcome; typedef Aws::Utils::Outcome DeleteSpotDatafeedSubscriptionOutcome; typedef Aws::Utils::Outcome DeleteSubnetOutcome; typedef Aws::Utils::Outcome DeleteTagsOutcome; typedef Aws::Utils::Outcome DeleteTrafficMirrorFilterOutcome; typedef Aws::Utils::Outcome DeleteTrafficMirrorFilterRuleOutcome; typedef Aws::Utils::Outcome DeleteTrafficMirrorSessionOutcome; typedef Aws::Utils::Outcome DeleteTrafficMirrorTargetOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayMulticastDomainOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayPeeringAttachmentOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayPrefixListReferenceOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayRouteOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayRouteTableOutcome; typedef Aws::Utils::Outcome DeleteTransitGatewayVpcAttachmentOutcome; typedef Aws::Utils::Outcome DeleteVolumeOutcome; typedef Aws::Utils::Outcome DeleteVpcOutcome; typedef Aws::Utils::Outcome DeleteVpcEndpointConnectionNotificationsOutcome; typedef Aws::Utils::Outcome DeleteVpcEndpointServiceConfigurationsOutcome; typedef Aws::Utils::Outcome DeleteVpcEndpointsOutcome; typedef Aws::Utils::Outcome DeleteVpcPeeringConnectionOutcome; typedef Aws::Utils::Outcome DeleteVpnConnectionOutcome; typedef Aws::Utils::Outcome DeleteVpnConnectionRouteOutcome; typedef Aws::Utils::Outcome DeleteVpnGatewayOutcome; typedef Aws::Utils::Outcome DeprovisionByoipCidrOutcome; typedef Aws::Utils::Outcome DeregisterImageOutcome; typedef Aws::Utils::Outcome DeregisterInstanceEventNotificationAttributesOutcome; typedef Aws::Utils::Outcome DeregisterTransitGatewayMulticastGroupMembersOutcome; typedef Aws::Utils::Outcome DeregisterTransitGatewayMulticastGroupSourcesOutcome; typedef Aws::Utils::Outcome DescribeAccountAttributesOutcome; typedef Aws::Utils::Outcome DescribeAddressesOutcome; typedef Aws::Utils::Outcome DescribeAggregateIdFormatOutcome; typedef Aws::Utils::Outcome DescribeAvailabilityZonesOutcome; typedef Aws::Utils::Outcome DescribeBundleTasksOutcome; typedef Aws::Utils::Outcome DescribeByoipCidrsOutcome; typedef Aws::Utils::Outcome DescribeCapacityReservationsOutcome; typedef Aws::Utils::Outcome DescribeCarrierGatewaysOutcome; typedef Aws::Utils::Outcome DescribeClassicLinkInstancesOutcome; typedef Aws::Utils::Outcome DescribeClientVpnAuthorizationRulesOutcome; typedef Aws::Utils::Outcome DescribeClientVpnConnectionsOutcome; typedef Aws::Utils::Outcome DescribeClientVpnEndpointsOutcome; typedef Aws::Utils::Outcome DescribeClientVpnRoutesOutcome; typedef Aws::Utils::Outcome DescribeClientVpnTargetNetworksOutcome; typedef Aws::Utils::Outcome DescribeCoipPoolsOutcome; typedef Aws::Utils::Outcome DescribeConversionTasksOutcome; typedef Aws::Utils::Outcome DescribeCustomerGatewaysOutcome; typedef Aws::Utils::Outcome DescribeDhcpOptionsOutcome; typedef Aws::Utils::Outcome DescribeEgressOnlyInternetGatewaysOutcome; typedef Aws::Utils::Outcome DescribeElasticGpusOutcome; typedef Aws::Utils::Outcome DescribeExportImageTasksOutcome; typedef Aws::Utils::Outcome DescribeExportTasksOutcome; typedef Aws::Utils::Outcome DescribeFastSnapshotRestoresOutcome; typedef Aws::Utils::Outcome DescribeFleetHistoryOutcome; typedef Aws::Utils::Outcome DescribeFleetInstancesOutcome; typedef Aws::Utils::Outcome DescribeFleetsOutcome; typedef Aws::Utils::Outcome DescribeFlowLogsOutcome; typedef Aws::Utils::Outcome DescribeFpgaImageAttributeOutcome; typedef Aws::Utils::Outcome DescribeFpgaImagesOutcome; typedef Aws::Utils::Outcome DescribeHostReservationOfferingsOutcome; typedef Aws::Utils::Outcome DescribeHostReservationsOutcome; typedef Aws::Utils::Outcome DescribeHostsOutcome; typedef Aws::Utils::Outcome DescribeIamInstanceProfileAssociationsOutcome; typedef Aws::Utils::Outcome DescribeIdFormatOutcome; typedef Aws::Utils::Outcome DescribeIdentityIdFormatOutcome; typedef Aws::Utils::Outcome DescribeImageAttributeOutcome; typedef Aws::Utils::Outcome DescribeImagesOutcome; typedef Aws::Utils::Outcome DescribeImportImageTasksOutcome; typedef Aws::Utils::Outcome DescribeImportSnapshotTasksOutcome; typedef Aws::Utils::Outcome DescribeInstanceAttributeOutcome; typedef Aws::Utils::Outcome DescribeInstanceCreditSpecificationsOutcome; typedef Aws::Utils::Outcome DescribeInstanceEventNotificationAttributesOutcome; typedef Aws::Utils::Outcome DescribeInstanceStatusOutcome; typedef Aws::Utils::Outcome DescribeInstanceTypeOfferingsOutcome; typedef Aws::Utils::Outcome DescribeInstanceTypesOutcome; typedef Aws::Utils::Outcome DescribeInstancesOutcome; typedef Aws::Utils::Outcome DescribeInternetGatewaysOutcome; typedef Aws::Utils::Outcome DescribeIpv6PoolsOutcome; typedef Aws::Utils::Outcome DescribeKeyPairsOutcome; typedef Aws::Utils::Outcome DescribeLaunchTemplateVersionsOutcome; typedef Aws::Utils::Outcome DescribeLaunchTemplatesOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewayRouteTableVpcAssociationsOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewayRouteTablesOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewayVirtualInterfaceGroupsOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewayVirtualInterfacesOutcome; typedef Aws::Utils::Outcome DescribeLocalGatewaysOutcome; typedef Aws::Utils::Outcome DescribeManagedPrefixListsOutcome; typedef Aws::Utils::Outcome DescribeMovingAddressesOutcome; typedef Aws::Utils::Outcome DescribeNatGatewaysOutcome; typedef Aws::Utils::Outcome DescribeNetworkAclsOutcome; typedef Aws::Utils::Outcome DescribeNetworkInterfaceAttributeOutcome; typedef Aws::Utils::Outcome DescribeNetworkInterfacePermissionsOutcome; typedef Aws::Utils::Outcome DescribeNetworkInterfacesOutcome; typedef Aws::Utils::Outcome DescribePlacementGroupsOutcome; typedef Aws::Utils::Outcome DescribePrefixListsOutcome; typedef Aws::Utils::Outcome DescribePrincipalIdFormatOutcome; typedef Aws::Utils::Outcome DescribePublicIpv4PoolsOutcome; typedef Aws::Utils::Outcome DescribeRegionsOutcome; typedef Aws::Utils::Outcome DescribeReservedInstancesOutcome; typedef Aws::Utils::Outcome DescribeReservedInstancesListingsOutcome; typedef Aws::Utils::Outcome DescribeReservedInstancesModificationsOutcome; typedef Aws::Utils::Outcome DescribeReservedInstancesOfferingsOutcome; typedef Aws::Utils::Outcome DescribeRouteTablesOutcome; typedef Aws::Utils::Outcome DescribeScheduledInstanceAvailabilityOutcome; typedef Aws::Utils::Outcome DescribeScheduledInstancesOutcome; typedef Aws::Utils::Outcome DescribeSecurityGroupReferencesOutcome; typedef Aws::Utils::Outcome DescribeSecurityGroupsOutcome; typedef Aws::Utils::Outcome DescribeSnapshotAttributeOutcome; typedef Aws::Utils::Outcome DescribeSnapshotsOutcome; typedef Aws::Utils::Outcome DescribeSpotDatafeedSubscriptionOutcome; typedef Aws::Utils::Outcome DescribeSpotFleetInstancesOutcome; typedef Aws::Utils::Outcome DescribeSpotFleetRequestHistoryOutcome; typedef Aws::Utils::Outcome DescribeSpotFleetRequestsOutcome; typedef Aws::Utils::Outcome DescribeSpotInstanceRequestsOutcome; typedef Aws::Utils::Outcome DescribeSpotPriceHistoryOutcome; typedef Aws::Utils::Outcome DescribeStaleSecurityGroupsOutcome; typedef Aws::Utils::Outcome DescribeSubnetsOutcome; typedef Aws::Utils::Outcome DescribeTagsOutcome; typedef Aws::Utils::Outcome DescribeTrafficMirrorFiltersOutcome; typedef Aws::Utils::Outcome DescribeTrafficMirrorSessionsOutcome; typedef Aws::Utils::Outcome DescribeTrafficMirrorTargetsOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewayAttachmentsOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewayMulticastDomainsOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewayPeeringAttachmentsOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewayRouteTablesOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewayVpcAttachmentsOutcome; typedef Aws::Utils::Outcome DescribeTransitGatewaysOutcome; typedef Aws::Utils::Outcome DescribeVolumeAttributeOutcome; typedef Aws::Utils::Outcome DescribeVolumeStatusOutcome; typedef Aws::Utils::Outcome DescribeVolumesOutcome; typedef Aws::Utils::Outcome DescribeVolumesModificationsOutcome; typedef Aws::Utils::Outcome DescribeVpcAttributeOutcome; typedef Aws::Utils::Outcome DescribeVpcClassicLinkOutcome; typedef Aws::Utils::Outcome DescribeVpcClassicLinkDnsSupportOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointConnectionNotificationsOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointConnectionsOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointServiceConfigurationsOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointServicePermissionsOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointServicesOutcome; typedef Aws::Utils::Outcome DescribeVpcEndpointsOutcome; typedef Aws::Utils::Outcome DescribeVpcPeeringConnectionsOutcome; typedef Aws::Utils::Outcome DescribeVpcsOutcome; typedef Aws::Utils::Outcome DescribeVpnConnectionsOutcome; typedef Aws::Utils::Outcome DescribeVpnGatewaysOutcome; typedef Aws::Utils::Outcome DetachClassicLinkVpcOutcome; typedef Aws::Utils::Outcome DetachInternetGatewayOutcome; typedef Aws::Utils::Outcome DetachNetworkInterfaceOutcome; typedef Aws::Utils::Outcome DetachVolumeOutcome; typedef Aws::Utils::Outcome DetachVpnGatewayOutcome; typedef Aws::Utils::Outcome DisableEbsEncryptionByDefaultOutcome; typedef Aws::Utils::Outcome DisableFastSnapshotRestoresOutcome; typedef Aws::Utils::Outcome DisableTransitGatewayRouteTablePropagationOutcome; typedef Aws::Utils::Outcome DisableVgwRoutePropagationOutcome; typedef Aws::Utils::Outcome DisableVpcClassicLinkOutcome; typedef Aws::Utils::Outcome DisableVpcClassicLinkDnsSupportOutcome; typedef Aws::Utils::Outcome DisassociateAddressOutcome; typedef Aws::Utils::Outcome DisassociateClientVpnTargetNetworkOutcome; typedef Aws::Utils::Outcome DisassociateIamInstanceProfileOutcome; typedef Aws::Utils::Outcome DisassociateRouteTableOutcome; typedef Aws::Utils::Outcome DisassociateSubnetCidrBlockOutcome; typedef Aws::Utils::Outcome DisassociateTransitGatewayMulticastDomainOutcome; typedef Aws::Utils::Outcome DisassociateTransitGatewayRouteTableOutcome; typedef Aws::Utils::Outcome DisassociateVpcCidrBlockOutcome; typedef Aws::Utils::Outcome EnableEbsEncryptionByDefaultOutcome; typedef Aws::Utils::Outcome EnableFastSnapshotRestoresOutcome; typedef Aws::Utils::Outcome EnableTransitGatewayRouteTablePropagationOutcome; typedef Aws::Utils::Outcome EnableVgwRoutePropagationOutcome; typedef Aws::Utils::Outcome EnableVolumeIOOutcome; typedef Aws::Utils::Outcome EnableVpcClassicLinkOutcome; typedef Aws::Utils::Outcome EnableVpcClassicLinkDnsSupportOutcome; typedef Aws::Utils::Outcome ExportClientVpnClientCertificateRevocationListOutcome; typedef Aws::Utils::Outcome ExportClientVpnClientConfigurationOutcome; typedef Aws::Utils::Outcome ExportImageOutcome; typedef Aws::Utils::Outcome ExportTransitGatewayRoutesOutcome; typedef Aws::Utils::Outcome GetAssociatedIpv6PoolCidrsOutcome; typedef Aws::Utils::Outcome GetCapacityReservationUsageOutcome; typedef Aws::Utils::Outcome GetCoipPoolUsageOutcome; typedef Aws::Utils::Outcome GetConsoleOutputOutcome; typedef Aws::Utils::Outcome GetConsoleScreenshotOutcome; typedef Aws::Utils::Outcome GetDefaultCreditSpecificationOutcome; typedef Aws::Utils::Outcome GetEbsDefaultKmsKeyIdOutcome; typedef Aws::Utils::Outcome GetEbsEncryptionByDefaultOutcome; typedef Aws::Utils::Outcome GetGroupsForCapacityReservationOutcome; typedef Aws::Utils::Outcome GetHostReservationPurchasePreviewOutcome; typedef Aws::Utils::Outcome GetLaunchTemplateDataOutcome; typedef Aws::Utils::Outcome GetManagedPrefixListAssociationsOutcome; typedef Aws::Utils::Outcome GetManagedPrefixListEntriesOutcome; typedef Aws::Utils::Outcome GetPasswordDataOutcome; typedef Aws::Utils::Outcome GetReservedInstancesExchangeQuoteOutcome; typedef Aws::Utils::Outcome GetTransitGatewayAttachmentPropagationsOutcome; typedef Aws::Utils::Outcome GetTransitGatewayMulticastDomainAssociationsOutcome; typedef Aws::Utils::Outcome GetTransitGatewayPrefixListReferencesOutcome; typedef Aws::Utils::Outcome GetTransitGatewayRouteTableAssociationsOutcome; typedef Aws::Utils::Outcome GetTransitGatewayRouteTablePropagationsOutcome; typedef Aws::Utils::Outcome ImportClientVpnClientCertificateRevocationListOutcome; typedef Aws::Utils::Outcome ImportImageOutcome; typedef Aws::Utils::Outcome ImportInstanceOutcome; typedef Aws::Utils::Outcome ImportKeyPairOutcome; typedef Aws::Utils::Outcome ImportSnapshotOutcome; typedef Aws::Utils::Outcome ImportVolumeOutcome; typedef Aws::Utils::Outcome ModifyAvailabilityZoneGroupOutcome; typedef Aws::Utils::Outcome ModifyCapacityReservationOutcome; typedef Aws::Utils::Outcome ModifyClientVpnEndpointOutcome; typedef Aws::Utils::Outcome ModifyDefaultCreditSpecificationOutcome; typedef Aws::Utils::Outcome ModifyEbsDefaultKmsKeyIdOutcome; typedef Aws::Utils::Outcome ModifyFleetOutcome; typedef Aws::Utils::Outcome ModifyFpgaImageAttributeOutcome; typedef Aws::Utils::Outcome ModifyHostsOutcome; typedef Aws::Utils::Outcome ModifyIdFormatOutcome; typedef Aws::Utils::Outcome ModifyIdentityIdFormatOutcome; typedef Aws::Utils::Outcome ModifyImageAttributeOutcome; typedef Aws::Utils::Outcome ModifyInstanceAttributeOutcome; typedef Aws::Utils::Outcome ModifyInstanceCapacityReservationAttributesOutcome; typedef Aws::Utils::Outcome ModifyInstanceCreditSpecificationOutcome; typedef Aws::Utils::Outcome ModifyInstanceEventStartTimeOutcome; typedef Aws::Utils::Outcome ModifyInstanceMetadataOptionsOutcome; typedef Aws::Utils::Outcome ModifyInstancePlacementOutcome; typedef Aws::Utils::Outcome ModifyLaunchTemplateOutcome; typedef Aws::Utils::Outcome ModifyManagedPrefixListOutcome; typedef Aws::Utils::Outcome ModifyNetworkInterfaceAttributeOutcome; typedef Aws::Utils::Outcome ModifyReservedInstancesOutcome; typedef Aws::Utils::Outcome ModifySnapshotAttributeOutcome; typedef Aws::Utils::Outcome ModifySpotFleetRequestOutcome; typedef Aws::Utils::Outcome ModifySubnetAttributeOutcome; typedef Aws::Utils::Outcome ModifyTrafficMirrorFilterNetworkServicesOutcome; typedef Aws::Utils::Outcome ModifyTrafficMirrorFilterRuleOutcome; typedef Aws::Utils::Outcome ModifyTrafficMirrorSessionOutcome; typedef Aws::Utils::Outcome ModifyTransitGatewayOutcome; typedef Aws::Utils::Outcome ModifyTransitGatewayPrefixListReferenceOutcome; typedef Aws::Utils::Outcome ModifyTransitGatewayVpcAttachmentOutcome; typedef Aws::Utils::Outcome ModifyVolumeOutcome; typedef Aws::Utils::Outcome ModifyVolumeAttributeOutcome; typedef Aws::Utils::Outcome ModifyVpcAttributeOutcome; typedef Aws::Utils::Outcome ModifyVpcEndpointOutcome; typedef Aws::Utils::Outcome ModifyVpcEndpointConnectionNotificationOutcome; typedef Aws::Utils::Outcome ModifyVpcEndpointServiceConfigurationOutcome; typedef Aws::Utils::Outcome ModifyVpcEndpointServicePermissionsOutcome; typedef Aws::Utils::Outcome ModifyVpcPeeringConnectionOptionsOutcome; typedef Aws::Utils::Outcome ModifyVpcTenancyOutcome; typedef Aws::Utils::Outcome ModifyVpnConnectionOutcome; typedef Aws::Utils::Outcome ModifyVpnTunnelCertificateOutcome; typedef Aws::Utils::Outcome ModifyVpnTunnelOptionsOutcome; typedef Aws::Utils::Outcome MonitorInstancesOutcome; typedef Aws::Utils::Outcome MoveAddressToVpcOutcome; typedef Aws::Utils::Outcome ProvisionByoipCidrOutcome; typedef Aws::Utils::Outcome PurchaseHostReservationOutcome; typedef Aws::Utils::Outcome PurchaseReservedInstancesOfferingOutcome; typedef Aws::Utils::Outcome PurchaseScheduledInstancesOutcome; typedef Aws::Utils::Outcome RebootInstancesOutcome; typedef Aws::Utils::Outcome RegisterImageOutcome; typedef Aws::Utils::Outcome RegisterInstanceEventNotificationAttributesOutcome; typedef Aws::Utils::Outcome RegisterTransitGatewayMulticastGroupMembersOutcome; typedef Aws::Utils::Outcome RegisterTransitGatewayMulticastGroupSourcesOutcome; typedef Aws::Utils::Outcome RejectTransitGatewayPeeringAttachmentOutcome; typedef Aws::Utils::Outcome RejectTransitGatewayVpcAttachmentOutcome; typedef Aws::Utils::Outcome RejectVpcEndpointConnectionsOutcome; typedef Aws::Utils::Outcome RejectVpcPeeringConnectionOutcome; typedef Aws::Utils::Outcome ReleaseAddressOutcome; typedef Aws::Utils::Outcome ReleaseHostsOutcome; typedef Aws::Utils::Outcome ReplaceIamInstanceProfileAssociationOutcome; typedef Aws::Utils::Outcome ReplaceNetworkAclAssociationOutcome; typedef Aws::Utils::Outcome ReplaceNetworkAclEntryOutcome; typedef Aws::Utils::Outcome ReplaceRouteOutcome; typedef Aws::Utils::Outcome ReplaceRouteTableAssociationOutcome; typedef Aws::Utils::Outcome ReplaceTransitGatewayRouteOutcome; typedef Aws::Utils::Outcome ReportInstanceStatusOutcome; typedef Aws::Utils::Outcome RequestSpotFleetOutcome; typedef Aws::Utils::Outcome RequestSpotInstancesOutcome; typedef Aws::Utils::Outcome ResetEbsDefaultKmsKeyIdOutcome; typedef Aws::Utils::Outcome ResetFpgaImageAttributeOutcome; typedef Aws::Utils::Outcome ResetImageAttributeOutcome; typedef Aws::Utils::Outcome ResetInstanceAttributeOutcome; typedef Aws::Utils::Outcome ResetNetworkInterfaceAttributeOutcome; typedef Aws::Utils::Outcome ResetSnapshotAttributeOutcome; typedef Aws::Utils::Outcome RestoreAddressToClassicOutcome; typedef Aws::Utils::Outcome RestoreManagedPrefixListVersionOutcome; typedef Aws::Utils::Outcome RevokeClientVpnIngressOutcome; typedef Aws::Utils::Outcome RevokeSecurityGroupEgressOutcome; typedef Aws::Utils::Outcome RevokeSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome RunInstancesOutcome; typedef Aws::Utils::Outcome RunScheduledInstancesOutcome; typedef Aws::Utils::Outcome SearchLocalGatewayRoutesOutcome; typedef Aws::Utils::Outcome SearchTransitGatewayMulticastGroupsOutcome; typedef Aws::Utils::Outcome SearchTransitGatewayRoutesOutcome; typedef Aws::Utils::Outcome SendDiagnosticInterruptOutcome; typedef Aws::Utils::Outcome StartInstancesOutcome; typedef Aws::Utils::Outcome StartVpcEndpointServicePrivateDnsVerificationOutcome; typedef Aws::Utils::Outcome StopInstancesOutcome; typedef Aws::Utils::Outcome TerminateClientVpnConnectionsOutcome; typedef Aws::Utils::Outcome TerminateInstancesOutcome; typedef Aws::Utils::Outcome UnassignIpv6AddressesOutcome; typedef Aws::Utils::Outcome UnassignPrivateIpAddressesOutcome; typedef Aws::Utils::Outcome UnmonitorInstancesOutcome; typedef Aws::Utils::Outcome UpdateSecurityGroupRuleDescriptionsEgressOutcome; typedef Aws::Utils::Outcome UpdateSecurityGroupRuleDescriptionsIngressOutcome; typedef Aws::Utils::Outcome WithdrawByoipCidrOutcome; typedef std::future AcceptReservedInstancesExchangeQuoteOutcomeCallable; typedef std::future AcceptTransitGatewayPeeringAttachmentOutcomeCallable; typedef std::future AcceptTransitGatewayVpcAttachmentOutcomeCallable; typedef std::future AcceptVpcEndpointConnectionsOutcomeCallable; typedef std::future AcceptVpcPeeringConnectionOutcomeCallable; typedef std::future AdvertiseByoipCidrOutcomeCallable; typedef std::future AllocateAddressOutcomeCallable; typedef std::future AllocateHostsOutcomeCallable; typedef std::future ApplySecurityGroupsToClientVpnTargetNetworkOutcomeCallable; typedef std::future AssignIpv6AddressesOutcomeCallable; typedef std::future AssignPrivateIpAddressesOutcomeCallable; typedef std::future AssociateAddressOutcomeCallable; typedef std::future AssociateClientVpnTargetNetworkOutcomeCallable; typedef std::future AssociateDhcpOptionsOutcomeCallable; typedef std::future AssociateIamInstanceProfileOutcomeCallable; typedef std::future AssociateRouteTableOutcomeCallable; typedef std::future AssociateSubnetCidrBlockOutcomeCallable; typedef std::future AssociateTransitGatewayMulticastDomainOutcomeCallable; typedef std::future AssociateTransitGatewayRouteTableOutcomeCallable; typedef std::future AssociateVpcCidrBlockOutcomeCallable; typedef std::future AttachClassicLinkVpcOutcomeCallable; typedef std::future AttachInternetGatewayOutcomeCallable; typedef std::future AttachNetworkInterfaceOutcomeCallable; typedef std::future AttachVolumeOutcomeCallable; typedef std::future AttachVpnGatewayOutcomeCallable; typedef std::future AuthorizeClientVpnIngressOutcomeCallable; typedef std::future AuthorizeSecurityGroupEgressOutcomeCallable; typedef std::future AuthorizeSecurityGroupIngressOutcomeCallable; typedef std::future BundleInstanceOutcomeCallable; typedef std::future CancelBundleTaskOutcomeCallable; typedef std::future CancelCapacityReservationOutcomeCallable; typedef std::future CancelConversionTaskOutcomeCallable; typedef std::future CancelExportTaskOutcomeCallable; typedef std::future CancelImportTaskOutcomeCallable; typedef std::future CancelReservedInstancesListingOutcomeCallable; typedef std::future CancelSpotFleetRequestsOutcomeCallable; typedef std::future CancelSpotInstanceRequestsOutcomeCallable; typedef std::future ConfirmProductInstanceOutcomeCallable; typedef std::future CopyFpgaImageOutcomeCallable; typedef std::future CopyImageOutcomeCallable; typedef std::future CopySnapshotOutcomeCallable; typedef std::future CreateCapacityReservationOutcomeCallable; typedef std::future CreateCarrierGatewayOutcomeCallable; typedef std::future CreateClientVpnEndpointOutcomeCallable; typedef std::future CreateClientVpnRouteOutcomeCallable; typedef std::future CreateCustomerGatewayOutcomeCallable; typedef std::future CreateDefaultSubnetOutcomeCallable; typedef std::future CreateDefaultVpcOutcomeCallable; typedef std::future CreateDhcpOptionsOutcomeCallable; typedef std::future CreateEgressOnlyInternetGatewayOutcomeCallable; typedef std::future CreateFleetOutcomeCallable; typedef std::future CreateFlowLogsOutcomeCallable; typedef std::future CreateFpgaImageOutcomeCallable; typedef std::future CreateImageOutcomeCallable; typedef std::future CreateInstanceExportTaskOutcomeCallable; typedef std::future CreateInternetGatewayOutcomeCallable; typedef std::future CreateKeyPairOutcomeCallable; typedef std::future CreateLaunchTemplateOutcomeCallable; typedef std::future CreateLaunchTemplateVersionOutcomeCallable; typedef std::future CreateLocalGatewayRouteOutcomeCallable; typedef std::future CreateLocalGatewayRouteTableVpcAssociationOutcomeCallable; typedef std::future CreateManagedPrefixListOutcomeCallable; typedef std::future CreateNatGatewayOutcomeCallable; typedef std::future CreateNetworkAclOutcomeCallable; typedef std::future CreateNetworkAclEntryOutcomeCallable; typedef std::future CreateNetworkInterfaceOutcomeCallable; typedef std::future CreateNetworkInterfacePermissionOutcomeCallable; typedef std::future CreatePlacementGroupOutcomeCallable; typedef std::future CreateReservedInstancesListingOutcomeCallable; typedef std::future CreateRouteOutcomeCallable; typedef std::future CreateRouteTableOutcomeCallable; typedef std::future CreateSecurityGroupOutcomeCallable; typedef std::future CreateSnapshotOutcomeCallable; typedef std::future CreateSnapshotsOutcomeCallable; typedef std::future CreateSpotDatafeedSubscriptionOutcomeCallable; typedef std::future CreateSubnetOutcomeCallable; typedef std::future CreateTagsOutcomeCallable; typedef std::future CreateTrafficMirrorFilterOutcomeCallable; typedef std::future CreateTrafficMirrorFilterRuleOutcomeCallable; typedef std::future CreateTrafficMirrorSessionOutcomeCallable; typedef std::future CreateTrafficMirrorTargetOutcomeCallable; typedef std::future CreateTransitGatewayOutcomeCallable; typedef std::future CreateTransitGatewayMulticastDomainOutcomeCallable; typedef std::future CreateTransitGatewayPeeringAttachmentOutcomeCallable; typedef std::future CreateTransitGatewayPrefixListReferenceOutcomeCallable; typedef std::future CreateTransitGatewayRouteOutcomeCallable; typedef std::future CreateTransitGatewayRouteTableOutcomeCallable; typedef std::future CreateTransitGatewayVpcAttachmentOutcomeCallable; typedef std::future CreateVolumeOutcomeCallable; typedef std::future CreateVpcOutcomeCallable; typedef std::future CreateVpcEndpointOutcomeCallable; typedef std::future CreateVpcEndpointConnectionNotificationOutcomeCallable; typedef std::future CreateVpcEndpointServiceConfigurationOutcomeCallable; typedef std::future CreateVpcPeeringConnectionOutcomeCallable; typedef std::future CreateVpnConnectionOutcomeCallable; typedef std::future CreateVpnConnectionRouteOutcomeCallable; typedef std::future CreateVpnGatewayOutcomeCallable; typedef std::future DeleteCarrierGatewayOutcomeCallable; typedef std::future DeleteClientVpnEndpointOutcomeCallable; typedef std::future DeleteClientVpnRouteOutcomeCallable; typedef std::future DeleteCustomerGatewayOutcomeCallable; typedef std::future DeleteDhcpOptionsOutcomeCallable; typedef std::future DeleteEgressOnlyInternetGatewayOutcomeCallable; typedef std::future DeleteFleetsOutcomeCallable; typedef std::future DeleteFlowLogsOutcomeCallable; typedef std::future DeleteFpgaImageOutcomeCallable; typedef std::future DeleteInternetGatewayOutcomeCallable; typedef std::future DeleteKeyPairOutcomeCallable; typedef std::future DeleteLaunchTemplateOutcomeCallable; typedef std::future DeleteLaunchTemplateVersionsOutcomeCallable; typedef std::future DeleteLocalGatewayRouteOutcomeCallable; typedef std::future DeleteLocalGatewayRouteTableVpcAssociationOutcomeCallable; typedef std::future DeleteManagedPrefixListOutcomeCallable; typedef std::future DeleteNatGatewayOutcomeCallable; typedef std::future DeleteNetworkAclOutcomeCallable; typedef std::future DeleteNetworkAclEntryOutcomeCallable; typedef std::future DeleteNetworkInterfaceOutcomeCallable; typedef std::future DeleteNetworkInterfacePermissionOutcomeCallable; typedef std::future DeletePlacementGroupOutcomeCallable; typedef std::future DeleteQueuedReservedInstancesOutcomeCallable; typedef std::future DeleteRouteOutcomeCallable; typedef std::future DeleteRouteTableOutcomeCallable; typedef std::future DeleteSecurityGroupOutcomeCallable; typedef std::future DeleteSnapshotOutcomeCallable; typedef std::future DeleteSpotDatafeedSubscriptionOutcomeCallable; typedef std::future DeleteSubnetOutcomeCallable; typedef std::future DeleteTagsOutcomeCallable; typedef std::future DeleteTrafficMirrorFilterOutcomeCallable; typedef std::future DeleteTrafficMirrorFilterRuleOutcomeCallable; typedef std::future DeleteTrafficMirrorSessionOutcomeCallable; typedef std::future DeleteTrafficMirrorTargetOutcomeCallable; typedef std::future DeleteTransitGatewayOutcomeCallable; typedef std::future DeleteTransitGatewayMulticastDomainOutcomeCallable; typedef std::future DeleteTransitGatewayPeeringAttachmentOutcomeCallable; typedef std::future DeleteTransitGatewayPrefixListReferenceOutcomeCallable; typedef std::future DeleteTransitGatewayRouteOutcomeCallable; typedef std::future DeleteTransitGatewayRouteTableOutcomeCallable; typedef std::future DeleteTransitGatewayVpcAttachmentOutcomeCallable; typedef std::future DeleteVolumeOutcomeCallable; typedef std::future DeleteVpcOutcomeCallable; typedef std::future DeleteVpcEndpointConnectionNotificationsOutcomeCallable; typedef std::future DeleteVpcEndpointServiceConfigurationsOutcomeCallable; typedef std::future DeleteVpcEndpointsOutcomeCallable; typedef std::future DeleteVpcPeeringConnectionOutcomeCallable; typedef std::future DeleteVpnConnectionOutcomeCallable; typedef std::future DeleteVpnConnectionRouteOutcomeCallable; typedef std::future DeleteVpnGatewayOutcomeCallable; typedef std::future DeprovisionByoipCidrOutcomeCallable; typedef std::future DeregisterImageOutcomeCallable; typedef std::future DeregisterInstanceEventNotificationAttributesOutcomeCallable; typedef std::future DeregisterTransitGatewayMulticastGroupMembersOutcomeCallable; typedef std::future DeregisterTransitGatewayMulticastGroupSourcesOutcomeCallable; typedef std::future DescribeAccountAttributesOutcomeCallable; typedef std::future DescribeAddressesOutcomeCallable; typedef std::future DescribeAggregateIdFormatOutcomeCallable; typedef std::future DescribeAvailabilityZonesOutcomeCallable; typedef std::future DescribeBundleTasksOutcomeCallable; typedef std::future DescribeByoipCidrsOutcomeCallable; typedef std::future DescribeCapacityReservationsOutcomeCallable; typedef std::future DescribeCarrierGatewaysOutcomeCallable; typedef std::future DescribeClassicLinkInstancesOutcomeCallable; typedef std::future DescribeClientVpnAuthorizationRulesOutcomeCallable; typedef std::future DescribeClientVpnConnectionsOutcomeCallable; typedef std::future DescribeClientVpnEndpointsOutcomeCallable; typedef std::future DescribeClientVpnRoutesOutcomeCallable; typedef std::future DescribeClientVpnTargetNetworksOutcomeCallable; typedef std::future DescribeCoipPoolsOutcomeCallable; typedef std::future DescribeConversionTasksOutcomeCallable; typedef std::future DescribeCustomerGatewaysOutcomeCallable; typedef std::future DescribeDhcpOptionsOutcomeCallable; typedef std::future DescribeEgressOnlyInternetGatewaysOutcomeCallable; typedef std::future DescribeElasticGpusOutcomeCallable; typedef std::future DescribeExportImageTasksOutcomeCallable; typedef std::future DescribeExportTasksOutcomeCallable; typedef std::future DescribeFastSnapshotRestoresOutcomeCallable; typedef std::future DescribeFleetHistoryOutcomeCallable; typedef std::future DescribeFleetInstancesOutcomeCallable; typedef std::future DescribeFleetsOutcomeCallable; typedef std::future DescribeFlowLogsOutcomeCallable; typedef std::future DescribeFpgaImageAttributeOutcomeCallable; typedef std::future DescribeFpgaImagesOutcomeCallable; typedef std::future DescribeHostReservationOfferingsOutcomeCallable; typedef std::future DescribeHostReservationsOutcomeCallable; typedef std::future DescribeHostsOutcomeCallable; typedef std::future DescribeIamInstanceProfileAssociationsOutcomeCallable; typedef std::future DescribeIdFormatOutcomeCallable; typedef std::future DescribeIdentityIdFormatOutcomeCallable; typedef std::future DescribeImageAttributeOutcomeCallable; typedef std::future DescribeImagesOutcomeCallable; typedef std::future DescribeImportImageTasksOutcomeCallable; typedef std::future DescribeImportSnapshotTasksOutcomeCallable; typedef std::future DescribeInstanceAttributeOutcomeCallable; typedef std::future DescribeInstanceCreditSpecificationsOutcomeCallable; typedef std::future DescribeInstanceEventNotificationAttributesOutcomeCallable; typedef std::future DescribeInstanceStatusOutcomeCallable; typedef std::future DescribeInstanceTypeOfferingsOutcomeCallable; typedef std::future DescribeInstanceTypesOutcomeCallable; typedef std::future DescribeInstancesOutcomeCallable; typedef std::future DescribeInternetGatewaysOutcomeCallable; typedef std::future DescribeIpv6PoolsOutcomeCallable; typedef std::future DescribeKeyPairsOutcomeCallable; typedef std::future DescribeLaunchTemplateVersionsOutcomeCallable; typedef std::future DescribeLaunchTemplatesOutcomeCallable; typedef std::future DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutcomeCallable; typedef std::future DescribeLocalGatewayRouteTableVpcAssociationsOutcomeCallable; typedef std::future DescribeLocalGatewayRouteTablesOutcomeCallable; typedef std::future DescribeLocalGatewayVirtualInterfaceGroupsOutcomeCallable; typedef std::future DescribeLocalGatewayVirtualInterfacesOutcomeCallable; typedef std::future DescribeLocalGatewaysOutcomeCallable; typedef std::future DescribeManagedPrefixListsOutcomeCallable; typedef std::future DescribeMovingAddressesOutcomeCallable; typedef std::future DescribeNatGatewaysOutcomeCallable; typedef std::future DescribeNetworkAclsOutcomeCallable; typedef std::future DescribeNetworkInterfaceAttributeOutcomeCallable; typedef std::future DescribeNetworkInterfacePermissionsOutcomeCallable; typedef std::future DescribeNetworkInterfacesOutcomeCallable; typedef std::future DescribePlacementGroupsOutcomeCallable; typedef std::future DescribePrefixListsOutcomeCallable; typedef std::future DescribePrincipalIdFormatOutcomeCallable; typedef std::future DescribePublicIpv4PoolsOutcomeCallable; typedef std::future DescribeRegionsOutcomeCallable; typedef std::future DescribeReservedInstancesOutcomeCallable; typedef std::future DescribeReservedInstancesListingsOutcomeCallable; typedef std::future DescribeReservedInstancesModificationsOutcomeCallable; typedef std::future DescribeReservedInstancesOfferingsOutcomeCallable; typedef std::future DescribeRouteTablesOutcomeCallable; typedef std::future DescribeScheduledInstanceAvailabilityOutcomeCallable; typedef std::future DescribeScheduledInstancesOutcomeCallable; typedef std::future DescribeSecurityGroupReferencesOutcomeCallable; typedef std::future DescribeSecurityGroupsOutcomeCallable; typedef std::future DescribeSnapshotAttributeOutcomeCallable; typedef std::future DescribeSnapshotsOutcomeCallable; typedef std::future DescribeSpotDatafeedSubscriptionOutcomeCallable; typedef std::future DescribeSpotFleetInstancesOutcomeCallable; typedef std::future DescribeSpotFleetRequestHistoryOutcomeCallable; typedef std::future DescribeSpotFleetRequestsOutcomeCallable; typedef std::future DescribeSpotInstanceRequestsOutcomeCallable; typedef std::future DescribeSpotPriceHistoryOutcomeCallable; typedef std::future DescribeStaleSecurityGroupsOutcomeCallable; typedef std::future DescribeSubnetsOutcomeCallable; typedef std::future DescribeTagsOutcomeCallable; typedef std::future DescribeTrafficMirrorFiltersOutcomeCallable; typedef std::future DescribeTrafficMirrorSessionsOutcomeCallable; typedef std::future DescribeTrafficMirrorTargetsOutcomeCallable; typedef std::future DescribeTransitGatewayAttachmentsOutcomeCallable; typedef std::future DescribeTransitGatewayMulticastDomainsOutcomeCallable; typedef std::future DescribeTransitGatewayPeeringAttachmentsOutcomeCallable; typedef std::future DescribeTransitGatewayRouteTablesOutcomeCallable; typedef std::future DescribeTransitGatewayVpcAttachmentsOutcomeCallable; typedef std::future DescribeTransitGatewaysOutcomeCallable; typedef std::future DescribeVolumeAttributeOutcomeCallable; typedef std::future DescribeVolumeStatusOutcomeCallable; typedef std::future DescribeVolumesOutcomeCallable; typedef std::future DescribeVolumesModificationsOutcomeCallable; typedef std::future DescribeVpcAttributeOutcomeCallable; typedef std::future DescribeVpcClassicLinkOutcomeCallable; typedef std::future DescribeVpcClassicLinkDnsSupportOutcomeCallable; typedef std::future DescribeVpcEndpointConnectionNotificationsOutcomeCallable; typedef std::future DescribeVpcEndpointConnectionsOutcomeCallable; typedef std::future DescribeVpcEndpointServiceConfigurationsOutcomeCallable; typedef std::future DescribeVpcEndpointServicePermissionsOutcomeCallable; typedef std::future DescribeVpcEndpointServicesOutcomeCallable; typedef std::future DescribeVpcEndpointsOutcomeCallable; typedef std::future DescribeVpcPeeringConnectionsOutcomeCallable; typedef std::future DescribeVpcsOutcomeCallable; typedef std::future DescribeVpnConnectionsOutcomeCallable; typedef std::future DescribeVpnGatewaysOutcomeCallable; typedef std::future DetachClassicLinkVpcOutcomeCallable; typedef std::future DetachInternetGatewayOutcomeCallable; typedef std::future DetachNetworkInterfaceOutcomeCallable; typedef std::future DetachVolumeOutcomeCallable; typedef std::future DetachVpnGatewayOutcomeCallable; typedef std::future DisableEbsEncryptionByDefaultOutcomeCallable; typedef std::future DisableFastSnapshotRestoresOutcomeCallable; typedef std::future DisableTransitGatewayRouteTablePropagationOutcomeCallable; typedef std::future DisableVgwRoutePropagationOutcomeCallable; typedef std::future DisableVpcClassicLinkOutcomeCallable; typedef std::future DisableVpcClassicLinkDnsSupportOutcomeCallable; typedef std::future DisassociateAddressOutcomeCallable; typedef std::future DisassociateClientVpnTargetNetworkOutcomeCallable; typedef std::future DisassociateIamInstanceProfileOutcomeCallable; typedef std::future DisassociateRouteTableOutcomeCallable; typedef std::future DisassociateSubnetCidrBlockOutcomeCallable; typedef std::future DisassociateTransitGatewayMulticastDomainOutcomeCallable; typedef std::future DisassociateTransitGatewayRouteTableOutcomeCallable; typedef std::future DisassociateVpcCidrBlockOutcomeCallable; typedef std::future EnableEbsEncryptionByDefaultOutcomeCallable; typedef std::future EnableFastSnapshotRestoresOutcomeCallable; typedef std::future EnableTransitGatewayRouteTablePropagationOutcomeCallable; typedef std::future EnableVgwRoutePropagationOutcomeCallable; typedef std::future EnableVolumeIOOutcomeCallable; typedef std::future EnableVpcClassicLinkOutcomeCallable; typedef std::future EnableVpcClassicLinkDnsSupportOutcomeCallable; typedef std::future ExportClientVpnClientCertificateRevocationListOutcomeCallable; typedef std::future ExportClientVpnClientConfigurationOutcomeCallable; typedef std::future ExportImageOutcomeCallable; typedef std::future ExportTransitGatewayRoutesOutcomeCallable; typedef std::future GetAssociatedIpv6PoolCidrsOutcomeCallable; typedef std::future GetCapacityReservationUsageOutcomeCallable; typedef std::future GetCoipPoolUsageOutcomeCallable; typedef std::future GetConsoleOutputOutcomeCallable; typedef std::future GetConsoleScreenshotOutcomeCallable; typedef std::future GetDefaultCreditSpecificationOutcomeCallable; typedef std::future GetEbsDefaultKmsKeyIdOutcomeCallable; typedef std::future GetEbsEncryptionByDefaultOutcomeCallable; typedef std::future GetGroupsForCapacityReservationOutcomeCallable; typedef std::future GetHostReservationPurchasePreviewOutcomeCallable; typedef std::future GetLaunchTemplateDataOutcomeCallable; typedef std::future GetManagedPrefixListAssociationsOutcomeCallable; typedef std::future GetManagedPrefixListEntriesOutcomeCallable; typedef std::future GetPasswordDataOutcomeCallable; typedef std::future GetReservedInstancesExchangeQuoteOutcomeCallable; typedef std::future GetTransitGatewayAttachmentPropagationsOutcomeCallable; typedef std::future GetTransitGatewayMulticastDomainAssociationsOutcomeCallable; typedef std::future GetTransitGatewayPrefixListReferencesOutcomeCallable; typedef std::future GetTransitGatewayRouteTableAssociationsOutcomeCallable; typedef std::future GetTransitGatewayRouteTablePropagationsOutcomeCallable; typedef std::future ImportClientVpnClientCertificateRevocationListOutcomeCallable; typedef std::future ImportImageOutcomeCallable; typedef std::future ImportInstanceOutcomeCallable; typedef std::future ImportKeyPairOutcomeCallable; typedef std::future ImportSnapshotOutcomeCallable; typedef std::future ImportVolumeOutcomeCallable; typedef std::future ModifyAvailabilityZoneGroupOutcomeCallable; typedef std::future ModifyCapacityReservationOutcomeCallable; typedef std::future ModifyClientVpnEndpointOutcomeCallable; typedef std::future ModifyDefaultCreditSpecificationOutcomeCallable; typedef std::future ModifyEbsDefaultKmsKeyIdOutcomeCallable; typedef std::future ModifyFleetOutcomeCallable; typedef std::future ModifyFpgaImageAttributeOutcomeCallable; typedef std::future ModifyHostsOutcomeCallable; typedef std::future ModifyIdFormatOutcomeCallable; typedef std::future ModifyIdentityIdFormatOutcomeCallable; typedef std::future ModifyImageAttributeOutcomeCallable; typedef std::future ModifyInstanceAttributeOutcomeCallable; typedef std::future ModifyInstanceCapacityReservationAttributesOutcomeCallable; typedef std::future ModifyInstanceCreditSpecificationOutcomeCallable; typedef std::future ModifyInstanceEventStartTimeOutcomeCallable; typedef std::future ModifyInstanceMetadataOptionsOutcomeCallable; typedef std::future ModifyInstancePlacementOutcomeCallable; typedef std::future ModifyLaunchTemplateOutcomeCallable; typedef std::future ModifyManagedPrefixListOutcomeCallable; typedef std::future ModifyNetworkInterfaceAttributeOutcomeCallable; typedef std::future ModifyReservedInstancesOutcomeCallable; typedef std::future ModifySnapshotAttributeOutcomeCallable; typedef std::future ModifySpotFleetRequestOutcomeCallable; typedef std::future ModifySubnetAttributeOutcomeCallable; typedef std::future ModifyTrafficMirrorFilterNetworkServicesOutcomeCallable; typedef std::future ModifyTrafficMirrorFilterRuleOutcomeCallable; typedef std::future ModifyTrafficMirrorSessionOutcomeCallable; typedef std::future ModifyTransitGatewayOutcomeCallable; typedef std::future ModifyTransitGatewayPrefixListReferenceOutcomeCallable; typedef std::future ModifyTransitGatewayVpcAttachmentOutcomeCallable; typedef std::future ModifyVolumeOutcomeCallable; typedef std::future ModifyVolumeAttributeOutcomeCallable; typedef std::future ModifyVpcAttributeOutcomeCallable; typedef std::future ModifyVpcEndpointOutcomeCallable; typedef std::future ModifyVpcEndpointConnectionNotificationOutcomeCallable; typedef std::future ModifyVpcEndpointServiceConfigurationOutcomeCallable; typedef std::future ModifyVpcEndpointServicePermissionsOutcomeCallable; typedef std::future ModifyVpcPeeringConnectionOptionsOutcomeCallable; typedef std::future ModifyVpcTenancyOutcomeCallable; typedef std::future ModifyVpnConnectionOutcomeCallable; typedef std::future ModifyVpnTunnelCertificateOutcomeCallable; typedef std::future ModifyVpnTunnelOptionsOutcomeCallable; typedef std::future MonitorInstancesOutcomeCallable; typedef std::future MoveAddressToVpcOutcomeCallable; typedef std::future ProvisionByoipCidrOutcomeCallable; typedef std::future PurchaseHostReservationOutcomeCallable; typedef std::future PurchaseReservedInstancesOfferingOutcomeCallable; typedef std::future PurchaseScheduledInstancesOutcomeCallable; typedef std::future RebootInstancesOutcomeCallable; typedef std::future RegisterImageOutcomeCallable; typedef std::future RegisterInstanceEventNotificationAttributesOutcomeCallable; typedef std::future RegisterTransitGatewayMulticastGroupMembersOutcomeCallable; typedef std::future RegisterTransitGatewayMulticastGroupSourcesOutcomeCallable; typedef std::future RejectTransitGatewayPeeringAttachmentOutcomeCallable; typedef std::future RejectTransitGatewayVpcAttachmentOutcomeCallable; typedef std::future RejectVpcEndpointConnectionsOutcomeCallable; typedef std::future RejectVpcPeeringConnectionOutcomeCallable; typedef std::future ReleaseAddressOutcomeCallable; typedef std::future ReleaseHostsOutcomeCallable; typedef std::future ReplaceIamInstanceProfileAssociationOutcomeCallable; typedef std::future ReplaceNetworkAclAssociationOutcomeCallable; typedef std::future ReplaceNetworkAclEntryOutcomeCallable; typedef std::future ReplaceRouteOutcomeCallable; typedef std::future ReplaceRouteTableAssociationOutcomeCallable; typedef std::future ReplaceTransitGatewayRouteOutcomeCallable; typedef std::future ReportInstanceStatusOutcomeCallable; typedef std::future RequestSpotFleetOutcomeCallable; typedef std::future RequestSpotInstancesOutcomeCallable; typedef std::future ResetEbsDefaultKmsKeyIdOutcomeCallable; typedef std::future ResetFpgaImageAttributeOutcomeCallable; typedef std::future ResetImageAttributeOutcomeCallable; typedef std::future ResetInstanceAttributeOutcomeCallable; typedef std::future ResetNetworkInterfaceAttributeOutcomeCallable; typedef std::future ResetSnapshotAttributeOutcomeCallable; typedef std::future RestoreAddressToClassicOutcomeCallable; typedef std::future RestoreManagedPrefixListVersionOutcomeCallable; typedef std::future RevokeClientVpnIngressOutcomeCallable; typedef std::future RevokeSecurityGroupEgressOutcomeCallable; typedef std::future RevokeSecurityGroupIngressOutcomeCallable; typedef std::future RunInstancesOutcomeCallable; typedef std::future RunScheduledInstancesOutcomeCallable; typedef std::future SearchLocalGatewayRoutesOutcomeCallable; typedef std::future SearchTransitGatewayMulticastGroupsOutcomeCallable; typedef std::future SearchTransitGatewayRoutesOutcomeCallable; typedef std::future SendDiagnosticInterruptOutcomeCallable; typedef std::future StartInstancesOutcomeCallable; typedef std::future StartVpcEndpointServicePrivateDnsVerificationOutcomeCallable; typedef std::future StopInstancesOutcomeCallable; typedef std::future TerminateClientVpnConnectionsOutcomeCallable; typedef std::future TerminateInstancesOutcomeCallable; typedef std::future UnassignIpv6AddressesOutcomeCallable; typedef std::future UnassignPrivateIpAddressesOutcomeCallable; typedef std::future UnmonitorInstancesOutcomeCallable; typedef std::future UpdateSecurityGroupRuleDescriptionsEgressOutcomeCallable; typedef std::future UpdateSecurityGroupRuleDescriptionsIngressOutcomeCallable; typedef std::future WithdrawByoipCidrOutcomeCallable; } // namespace Model class EC2Client; typedef std::function&) > AcceptReservedInstancesExchangeQuoteResponseReceivedHandler; typedef std::function&) > AcceptTransitGatewayPeeringAttachmentResponseReceivedHandler; typedef std::function&) > AcceptTransitGatewayVpcAttachmentResponseReceivedHandler; typedef std::function&) > AcceptVpcEndpointConnectionsResponseReceivedHandler; typedef std::function&) > AcceptVpcPeeringConnectionResponseReceivedHandler; typedef std::function&) > AdvertiseByoipCidrResponseReceivedHandler; typedef std::function&) > AllocateAddressResponseReceivedHandler; typedef std::function&) > AllocateHostsResponseReceivedHandler; typedef std::function&) > ApplySecurityGroupsToClientVpnTargetNetworkResponseReceivedHandler; typedef std::function&) > AssignIpv6AddressesResponseReceivedHandler; typedef std::function&) > AssignPrivateIpAddressesResponseReceivedHandler; typedef std::function&) > AssociateAddressResponseReceivedHandler; typedef std::function&) > AssociateClientVpnTargetNetworkResponseReceivedHandler; typedef std::function&) > AssociateDhcpOptionsResponseReceivedHandler; typedef std::function&) > AssociateIamInstanceProfileResponseReceivedHandler; typedef std::function&) > AssociateRouteTableResponseReceivedHandler; typedef std::function&) > AssociateSubnetCidrBlockResponseReceivedHandler; typedef std::function&) > AssociateTransitGatewayMulticastDomainResponseReceivedHandler; typedef std::function&) > AssociateTransitGatewayRouteTableResponseReceivedHandler; typedef std::function&) > AssociateVpcCidrBlockResponseReceivedHandler; typedef std::function&) > AttachClassicLinkVpcResponseReceivedHandler; typedef std::function&) > AttachInternetGatewayResponseReceivedHandler; typedef std::function&) > AttachNetworkInterfaceResponseReceivedHandler; typedef std::function&) > AttachVolumeResponseReceivedHandler; typedef std::function&) > AttachVpnGatewayResponseReceivedHandler; typedef std::function&) > AuthorizeClientVpnIngressResponseReceivedHandler; typedef std::function&) > AuthorizeSecurityGroupEgressResponseReceivedHandler; typedef std::function&) > AuthorizeSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > BundleInstanceResponseReceivedHandler; typedef std::function&) > CancelBundleTaskResponseReceivedHandler; typedef std::function&) > CancelCapacityReservationResponseReceivedHandler; typedef std::function&) > CancelConversionTaskResponseReceivedHandler; typedef std::function&) > CancelExportTaskResponseReceivedHandler; typedef std::function&) > CancelImportTaskResponseReceivedHandler; typedef std::function&) > CancelReservedInstancesListingResponseReceivedHandler; typedef std::function&) > CancelSpotFleetRequestsResponseReceivedHandler; typedef std::function&) > CancelSpotInstanceRequestsResponseReceivedHandler; typedef std::function&) > ConfirmProductInstanceResponseReceivedHandler; typedef std::function&) > CopyFpgaImageResponseReceivedHandler; typedef std::function&) > CopyImageResponseReceivedHandler; typedef std::function&) > CopySnapshotResponseReceivedHandler; typedef std::function&) > CreateCapacityReservationResponseReceivedHandler; typedef std::function&) > CreateCarrierGatewayResponseReceivedHandler; typedef std::function&) > CreateClientVpnEndpointResponseReceivedHandler; typedef std::function&) > CreateClientVpnRouteResponseReceivedHandler; typedef std::function&) > CreateCustomerGatewayResponseReceivedHandler; typedef std::function&) > CreateDefaultSubnetResponseReceivedHandler; typedef std::function&) > CreateDefaultVpcResponseReceivedHandler; typedef std::function&) > CreateDhcpOptionsResponseReceivedHandler; typedef std::function&) > CreateEgressOnlyInternetGatewayResponseReceivedHandler; typedef std::function&) > CreateFleetResponseReceivedHandler; typedef std::function&) > CreateFlowLogsResponseReceivedHandler; typedef std::function&) > CreateFpgaImageResponseReceivedHandler; typedef std::function&) > CreateImageResponseReceivedHandler; typedef std::function&) > CreateInstanceExportTaskResponseReceivedHandler; typedef std::function&) > CreateInternetGatewayResponseReceivedHandler; typedef std::function&) > CreateKeyPairResponseReceivedHandler; typedef std::function&) > CreateLaunchTemplateResponseReceivedHandler; typedef std::function&) > CreateLaunchTemplateVersionResponseReceivedHandler; typedef std::function&) > CreateLocalGatewayRouteResponseReceivedHandler; typedef std::function&) > CreateLocalGatewayRouteTableVpcAssociationResponseReceivedHandler; typedef std::function&) > CreateManagedPrefixListResponseReceivedHandler; typedef std::function&) > CreateNatGatewayResponseReceivedHandler; typedef std::function&) > CreateNetworkAclResponseReceivedHandler; typedef std::function&) > CreateNetworkAclEntryResponseReceivedHandler; typedef std::function&) > CreateNetworkInterfaceResponseReceivedHandler; typedef std::function&) > CreateNetworkInterfacePermissionResponseReceivedHandler; typedef std::function&) > CreatePlacementGroupResponseReceivedHandler; typedef std::function&) > CreateReservedInstancesListingResponseReceivedHandler; typedef std::function&) > CreateRouteResponseReceivedHandler; typedef std::function&) > CreateRouteTableResponseReceivedHandler; typedef std::function&) > CreateSecurityGroupResponseReceivedHandler; typedef std::function&) > CreateSnapshotResponseReceivedHandler; typedef std::function&) > CreateSnapshotsResponseReceivedHandler; typedef std::function&) > CreateSpotDatafeedSubscriptionResponseReceivedHandler; typedef std::function&) > CreateSubnetResponseReceivedHandler; typedef std::function&) > CreateTagsResponseReceivedHandler; typedef std::function&) > CreateTrafficMirrorFilterResponseReceivedHandler; typedef std::function&) > CreateTrafficMirrorFilterRuleResponseReceivedHandler; typedef std::function&) > CreateTrafficMirrorSessionResponseReceivedHandler; typedef std::function&) > CreateTrafficMirrorTargetResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayMulticastDomainResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayPeeringAttachmentResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayPrefixListReferenceResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayRouteResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayRouteTableResponseReceivedHandler; typedef std::function&) > CreateTransitGatewayVpcAttachmentResponseReceivedHandler; typedef std::function&) > CreateVolumeResponseReceivedHandler; typedef std::function&) > CreateVpcResponseReceivedHandler; typedef std::function&) > CreateVpcEndpointResponseReceivedHandler; typedef std::function&) > CreateVpcEndpointConnectionNotificationResponseReceivedHandler; typedef std::function&) > CreateVpcEndpointServiceConfigurationResponseReceivedHandler; typedef std::function&) > CreateVpcPeeringConnectionResponseReceivedHandler; typedef std::function&) > CreateVpnConnectionResponseReceivedHandler; typedef std::function&) > CreateVpnConnectionRouteResponseReceivedHandler; typedef std::function&) > CreateVpnGatewayResponseReceivedHandler; typedef std::function&) > DeleteCarrierGatewayResponseReceivedHandler; typedef std::function&) > DeleteClientVpnEndpointResponseReceivedHandler; typedef std::function&) > DeleteClientVpnRouteResponseReceivedHandler; typedef std::function&) > DeleteCustomerGatewayResponseReceivedHandler; typedef std::function&) > DeleteDhcpOptionsResponseReceivedHandler; typedef std::function&) > DeleteEgressOnlyInternetGatewayResponseReceivedHandler; typedef std::function&) > DeleteFleetsResponseReceivedHandler; typedef std::function&) > DeleteFlowLogsResponseReceivedHandler; typedef std::function&) > DeleteFpgaImageResponseReceivedHandler; typedef std::function&) > DeleteInternetGatewayResponseReceivedHandler; typedef std::function&) > DeleteKeyPairResponseReceivedHandler; typedef std::function&) > DeleteLaunchTemplateResponseReceivedHandler; typedef std::function&) > DeleteLaunchTemplateVersionsResponseReceivedHandler; typedef std::function&) > DeleteLocalGatewayRouteResponseReceivedHandler; typedef std::function&) > DeleteLocalGatewayRouteTableVpcAssociationResponseReceivedHandler; typedef std::function&) > DeleteManagedPrefixListResponseReceivedHandler; typedef std::function&) > DeleteNatGatewayResponseReceivedHandler; typedef std::function&) > DeleteNetworkAclResponseReceivedHandler; typedef std::function&) > DeleteNetworkAclEntryResponseReceivedHandler; typedef std::function&) > DeleteNetworkInterfaceResponseReceivedHandler; typedef std::function&) > DeleteNetworkInterfacePermissionResponseReceivedHandler; typedef std::function&) > DeletePlacementGroupResponseReceivedHandler; typedef std::function&) > DeleteQueuedReservedInstancesResponseReceivedHandler; typedef std::function&) > DeleteRouteResponseReceivedHandler; typedef std::function&) > DeleteRouteTableResponseReceivedHandler; typedef std::function&) > DeleteSecurityGroupResponseReceivedHandler; typedef std::function&) > DeleteSnapshotResponseReceivedHandler; typedef std::function&) > DeleteSpotDatafeedSubscriptionResponseReceivedHandler; typedef std::function&) > DeleteSubnetResponseReceivedHandler; typedef std::function&) > DeleteTagsResponseReceivedHandler; typedef std::function&) > DeleteTrafficMirrorFilterResponseReceivedHandler; typedef std::function&) > DeleteTrafficMirrorFilterRuleResponseReceivedHandler; typedef std::function&) > DeleteTrafficMirrorSessionResponseReceivedHandler; typedef std::function&) > DeleteTrafficMirrorTargetResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayMulticastDomainResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayPeeringAttachmentResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayPrefixListReferenceResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayRouteResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayRouteTableResponseReceivedHandler; typedef std::function&) > DeleteTransitGatewayVpcAttachmentResponseReceivedHandler; typedef std::function&) > DeleteVolumeResponseReceivedHandler; typedef std::function&) > DeleteVpcResponseReceivedHandler; typedef std::function&) > DeleteVpcEndpointConnectionNotificationsResponseReceivedHandler; typedef std::function&) > DeleteVpcEndpointServiceConfigurationsResponseReceivedHandler; typedef std::function&) > DeleteVpcEndpointsResponseReceivedHandler; typedef std::function&) > DeleteVpcPeeringConnectionResponseReceivedHandler; typedef std::function&) > DeleteVpnConnectionResponseReceivedHandler; typedef std::function&) > DeleteVpnConnectionRouteResponseReceivedHandler; typedef std::function&) > DeleteVpnGatewayResponseReceivedHandler; typedef std::function&) > DeprovisionByoipCidrResponseReceivedHandler; typedef std::function&) > DeregisterImageResponseReceivedHandler; typedef std::function&) > DeregisterInstanceEventNotificationAttributesResponseReceivedHandler; typedef std::function&) > DeregisterTransitGatewayMulticastGroupMembersResponseReceivedHandler; typedef std::function&) > DeregisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler; typedef std::function&) > DescribeAccountAttributesResponseReceivedHandler; typedef std::function&) > DescribeAddressesResponseReceivedHandler; typedef std::function&) > DescribeAggregateIdFormatResponseReceivedHandler; typedef std::function&) > DescribeAvailabilityZonesResponseReceivedHandler; typedef std::function&) > DescribeBundleTasksResponseReceivedHandler; typedef std::function&) > DescribeByoipCidrsResponseReceivedHandler; typedef std::function&) > DescribeCapacityReservationsResponseReceivedHandler; typedef std::function&) > DescribeCarrierGatewaysResponseReceivedHandler; typedef std::function&) > DescribeClassicLinkInstancesResponseReceivedHandler; typedef std::function&) > DescribeClientVpnAuthorizationRulesResponseReceivedHandler; typedef std::function&) > DescribeClientVpnConnectionsResponseReceivedHandler; typedef std::function&) > DescribeClientVpnEndpointsResponseReceivedHandler; typedef std::function&) > DescribeClientVpnRoutesResponseReceivedHandler; typedef std::function&) > DescribeClientVpnTargetNetworksResponseReceivedHandler; typedef std::function&) > DescribeCoipPoolsResponseReceivedHandler; typedef std::function&) > DescribeConversionTasksResponseReceivedHandler; typedef std::function&) > DescribeCustomerGatewaysResponseReceivedHandler; typedef std::function&) > DescribeDhcpOptionsResponseReceivedHandler; typedef std::function&) > DescribeEgressOnlyInternetGatewaysResponseReceivedHandler; typedef std::function&) > DescribeElasticGpusResponseReceivedHandler; typedef std::function&) > DescribeExportImageTasksResponseReceivedHandler; typedef std::function&) > DescribeExportTasksResponseReceivedHandler; typedef std::function&) > DescribeFastSnapshotRestoresResponseReceivedHandler; typedef std::function&) > DescribeFleetHistoryResponseReceivedHandler; typedef std::function&) > DescribeFleetInstancesResponseReceivedHandler; typedef std::function&) > DescribeFleetsResponseReceivedHandler; typedef std::function&) > DescribeFlowLogsResponseReceivedHandler; typedef std::function&) > DescribeFpgaImageAttributeResponseReceivedHandler; typedef std::function&) > DescribeFpgaImagesResponseReceivedHandler; typedef std::function&) > DescribeHostReservationOfferingsResponseReceivedHandler; typedef std::function&) > DescribeHostReservationsResponseReceivedHandler; typedef std::function&) > DescribeHostsResponseReceivedHandler; typedef std::function&) > DescribeIamInstanceProfileAssociationsResponseReceivedHandler; typedef std::function&) > DescribeIdFormatResponseReceivedHandler; typedef std::function&) > DescribeIdentityIdFormatResponseReceivedHandler; typedef std::function&) > DescribeImageAttributeResponseReceivedHandler; typedef std::function&) > DescribeImagesResponseReceivedHandler; typedef std::function&) > DescribeImportImageTasksResponseReceivedHandler; typedef std::function&) > DescribeImportSnapshotTasksResponseReceivedHandler; typedef std::function&) > DescribeInstanceAttributeResponseReceivedHandler; typedef std::function&) > DescribeInstanceCreditSpecificationsResponseReceivedHandler; typedef std::function&) > DescribeInstanceEventNotificationAttributesResponseReceivedHandler; typedef std::function&) > DescribeInstanceStatusResponseReceivedHandler; typedef std::function&) > DescribeInstanceTypeOfferingsResponseReceivedHandler; typedef std::function&) > DescribeInstanceTypesResponseReceivedHandler; typedef std::function&) > DescribeInstancesResponseReceivedHandler; typedef std::function&) > DescribeInternetGatewaysResponseReceivedHandler; typedef std::function&) > DescribeIpv6PoolsResponseReceivedHandler; typedef std::function&) > DescribeKeyPairsResponseReceivedHandler; typedef std::function&) > DescribeLaunchTemplateVersionsResponseReceivedHandler; typedef std::function&) > DescribeLaunchTemplatesResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewayRouteTableVpcAssociationsResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewayRouteTablesResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewayVirtualInterfaceGroupsResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewayVirtualInterfacesResponseReceivedHandler; typedef std::function&) > DescribeLocalGatewaysResponseReceivedHandler; typedef std::function&) > DescribeManagedPrefixListsResponseReceivedHandler; typedef std::function&) > DescribeMovingAddressesResponseReceivedHandler; typedef std::function&) > DescribeNatGatewaysResponseReceivedHandler; typedef std::function&) > DescribeNetworkAclsResponseReceivedHandler; typedef std::function&) > DescribeNetworkInterfaceAttributeResponseReceivedHandler; typedef std::function&) > DescribeNetworkInterfacePermissionsResponseReceivedHandler; typedef std::function&) > DescribeNetworkInterfacesResponseReceivedHandler; typedef std::function&) > DescribePlacementGroupsResponseReceivedHandler; typedef std::function&) > DescribePrefixListsResponseReceivedHandler; typedef std::function&) > DescribePrincipalIdFormatResponseReceivedHandler; typedef std::function&) > DescribePublicIpv4PoolsResponseReceivedHandler; typedef std::function&) > DescribeRegionsResponseReceivedHandler; typedef std::function&) > DescribeReservedInstancesResponseReceivedHandler; typedef std::function&) > DescribeReservedInstancesListingsResponseReceivedHandler; typedef std::function&) > DescribeReservedInstancesModificationsResponseReceivedHandler; typedef std::function&) > DescribeReservedInstancesOfferingsResponseReceivedHandler; typedef std::function&) > DescribeRouteTablesResponseReceivedHandler; typedef std::function&) > DescribeScheduledInstanceAvailabilityResponseReceivedHandler; typedef std::function&) > DescribeScheduledInstancesResponseReceivedHandler; typedef std::function&) > DescribeSecurityGroupReferencesResponseReceivedHandler; typedef std::function&) > DescribeSecurityGroupsResponseReceivedHandler; typedef std::function&) > DescribeSnapshotAttributeResponseReceivedHandler; typedef std::function&) > DescribeSnapshotsResponseReceivedHandler; typedef std::function&) > DescribeSpotDatafeedSubscriptionResponseReceivedHandler; typedef std::function&) > DescribeSpotFleetInstancesResponseReceivedHandler; typedef std::function&) > DescribeSpotFleetRequestHistoryResponseReceivedHandler; typedef std::function&) > DescribeSpotFleetRequestsResponseReceivedHandler; typedef std::function&) > DescribeSpotInstanceRequestsResponseReceivedHandler; typedef std::function&) > DescribeSpotPriceHistoryResponseReceivedHandler; typedef std::function&) > DescribeStaleSecurityGroupsResponseReceivedHandler; typedef std::function&) > DescribeSubnetsResponseReceivedHandler; typedef std::function&) > DescribeTagsResponseReceivedHandler; typedef std::function&) > DescribeTrafficMirrorFiltersResponseReceivedHandler; typedef std::function&) > DescribeTrafficMirrorSessionsResponseReceivedHandler; typedef std::function&) > DescribeTrafficMirrorTargetsResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewayAttachmentsResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewayMulticastDomainsResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewayPeeringAttachmentsResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewayRouteTablesResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewayVpcAttachmentsResponseReceivedHandler; typedef std::function&) > DescribeTransitGatewaysResponseReceivedHandler; typedef std::function&) > DescribeVolumeAttributeResponseReceivedHandler; typedef std::function&) > DescribeVolumeStatusResponseReceivedHandler; typedef std::function&) > DescribeVolumesResponseReceivedHandler; typedef std::function&) > DescribeVolumesModificationsResponseReceivedHandler; typedef std::function&) > DescribeVpcAttributeResponseReceivedHandler; typedef std::function&) > DescribeVpcClassicLinkResponseReceivedHandler; typedef std::function&) > DescribeVpcClassicLinkDnsSupportResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointConnectionNotificationsResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointConnectionsResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointServiceConfigurationsResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointServicePermissionsResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointServicesResponseReceivedHandler; typedef std::function&) > DescribeVpcEndpointsResponseReceivedHandler; typedef std::function&) > DescribeVpcPeeringConnectionsResponseReceivedHandler; typedef std::function&) > DescribeVpcsResponseReceivedHandler; typedef std::function&) > DescribeVpnConnectionsResponseReceivedHandler; typedef std::function&) > DescribeVpnGatewaysResponseReceivedHandler; typedef std::function&) > DetachClassicLinkVpcResponseReceivedHandler; typedef std::function&) > DetachInternetGatewayResponseReceivedHandler; typedef std::function&) > DetachNetworkInterfaceResponseReceivedHandler; typedef std::function&) > DetachVolumeResponseReceivedHandler; typedef std::function&) > DetachVpnGatewayResponseReceivedHandler; typedef std::function&) > DisableEbsEncryptionByDefaultResponseReceivedHandler; typedef std::function&) > DisableFastSnapshotRestoresResponseReceivedHandler; typedef std::function&) > DisableTransitGatewayRouteTablePropagationResponseReceivedHandler; typedef std::function&) > DisableVgwRoutePropagationResponseReceivedHandler; typedef std::function&) > DisableVpcClassicLinkResponseReceivedHandler; typedef std::function&) > DisableVpcClassicLinkDnsSupportResponseReceivedHandler; typedef std::function&) > DisassociateAddressResponseReceivedHandler; typedef std::function&) > DisassociateClientVpnTargetNetworkResponseReceivedHandler; typedef std::function&) > DisassociateIamInstanceProfileResponseReceivedHandler; typedef std::function&) > DisassociateRouteTableResponseReceivedHandler; typedef std::function&) > DisassociateSubnetCidrBlockResponseReceivedHandler; typedef std::function&) > DisassociateTransitGatewayMulticastDomainResponseReceivedHandler; typedef std::function&) > DisassociateTransitGatewayRouteTableResponseReceivedHandler; typedef std::function&) > DisassociateVpcCidrBlockResponseReceivedHandler; typedef std::function&) > EnableEbsEncryptionByDefaultResponseReceivedHandler; typedef std::function&) > EnableFastSnapshotRestoresResponseReceivedHandler; typedef std::function&) > EnableTransitGatewayRouteTablePropagationResponseReceivedHandler; typedef std::function&) > EnableVgwRoutePropagationResponseReceivedHandler; typedef std::function&) > EnableVolumeIOResponseReceivedHandler; typedef std::function&) > EnableVpcClassicLinkResponseReceivedHandler; typedef std::function&) > EnableVpcClassicLinkDnsSupportResponseReceivedHandler; typedef std::function&) > ExportClientVpnClientCertificateRevocationListResponseReceivedHandler; typedef std::function&) > ExportClientVpnClientConfigurationResponseReceivedHandler; typedef std::function&) > ExportImageResponseReceivedHandler; typedef std::function&) > ExportTransitGatewayRoutesResponseReceivedHandler; typedef std::function&) > GetAssociatedIpv6PoolCidrsResponseReceivedHandler; typedef std::function&) > GetCapacityReservationUsageResponseReceivedHandler; typedef std::function&) > GetCoipPoolUsageResponseReceivedHandler; typedef std::function&) > GetConsoleOutputResponseReceivedHandler; typedef std::function&) > GetConsoleScreenshotResponseReceivedHandler; typedef std::function&) > GetDefaultCreditSpecificationResponseReceivedHandler; typedef std::function&) > GetEbsDefaultKmsKeyIdResponseReceivedHandler; typedef std::function&) > GetEbsEncryptionByDefaultResponseReceivedHandler; typedef std::function&) > GetGroupsForCapacityReservationResponseReceivedHandler; typedef std::function&) > GetHostReservationPurchasePreviewResponseReceivedHandler; typedef std::function&) > GetLaunchTemplateDataResponseReceivedHandler; typedef std::function&) > GetManagedPrefixListAssociationsResponseReceivedHandler; typedef std::function&) > GetManagedPrefixListEntriesResponseReceivedHandler; typedef std::function&) > GetPasswordDataResponseReceivedHandler; typedef std::function&) > GetReservedInstancesExchangeQuoteResponseReceivedHandler; typedef std::function&) > GetTransitGatewayAttachmentPropagationsResponseReceivedHandler; typedef std::function&) > GetTransitGatewayMulticastDomainAssociationsResponseReceivedHandler; typedef std::function&) > GetTransitGatewayPrefixListReferencesResponseReceivedHandler; typedef std::function&) > GetTransitGatewayRouteTableAssociationsResponseReceivedHandler; typedef std::function&) > GetTransitGatewayRouteTablePropagationsResponseReceivedHandler; typedef std::function&) > ImportClientVpnClientCertificateRevocationListResponseReceivedHandler; typedef std::function&) > ImportImageResponseReceivedHandler; typedef std::function&) > ImportInstanceResponseReceivedHandler; typedef std::function&) > ImportKeyPairResponseReceivedHandler; typedef std::function&) > ImportSnapshotResponseReceivedHandler; typedef std::function&) > ImportVolumeResponseReceivedHandler; typedef std::function&) > ModifyAvailabilityZoneGroupResponseReceivedHandler; typedef std::function&) > ModifyCapacityReservationResponseReceivedHandler; typedef std::function&) > ModifyClientVpnEndpointResponseReceivedHandler; typedef std::function&) > ModifyDefaultCreditSpecificationResponseReceivedHandler; typedef std::function&) > ModifyEbsDefaultKmsKeyIdResponseReceivedHandler; typedef std::function&) > ModifyFleetResponseReceivedHandler; typedef std::function&) > ModifyFpgaImageAttributeResponseReceivedHandler; typedef std::function&) > ModifyHostsResponseReceivedHandler; typedef std::function&) > ModifyIdFormatResponseReceivedHandler; typedef std::function&) > ModifyIdentityIdFormatResponseReceivedHandler; typedef std::function&) > ModifyImageAttributeResponseReceivedHandler; typedef std::function&) > ModifyInstanceAttributeResponseReceivedHandler; typedef std::function&) > ModifyInstanceCapacityReservationAttributesResponseReceivedHandler; typedef std::function&) > ModifyInstanceCreditSpecificationResponseReceivedHandler; typedef std::function&) > ModifyInstanceEventStartTimeResponseReceivedHandler; typedef std::function&) > ModifyInstanceMetadataOptionsResponseReceivedHandler; typedef std::function&) > ModifyInstancePlacementResponseReceivedHandler; typedef std::function&) > ModifyLaunchTemplateResponseReceivedHandler; typedef std::function&) > ModifyManagedPrefixListResponseReceivedHandler; typedef std::function&) > ModifyNetworkInterfaceAttributeResponseReceivedHandler; typedef std::function&) > ModifyReservedInstancesResponseReceivedHandler; typedef std::function&) > ModifySnapshotAttributeResponseReceivedHandler; typedef std::function&) > ModifySpotFleetRequestResponseReceivedHandler; typedef std::function&) > ModifySubnetAttributeResponseReceivedHandler; typedef std::function&) > ModifyTrafficMirrorFilterNetworkServicesResponseReceivedHandler; typedef std::function&) > ModifyTrafficMirrorFilterRuleResponseReceivedHandler; typedef std::function&) > ModifyTrafficMirrorSessionResponseReceivedHandler; typedef std::function&) > ModifyTransitGatewayResponseReceivedHandler; typedef std::function&) > ModifyTransitGatewayPrefixListReferenceResponseReceivedHandler; typedef std::function&) > ModifyTransitGatewayVpcAttachmentResponseReceivedHandler; typedef std::function&) > ModifyVolumeResponseReceivedHandler; typedef std::function&) > ModifyVolumeAttributeResponseReceivedHandler; typedef std::function&) > ModifyVpcAttributeResponseReceivedHandler; typedef std::function&) > ModifyVpcEndpointResponseReceivedHandler; typedef std::function&) > ModifyVpcEndpointConnectionNotificationResponseReceivedHandler; typedef std::function&) > ModifyVpcEndpointServiceConfigurationResponseReceivedHandler; typedef std::function&) > ModifyVpcEndpointServicePermissionsResponseReceivedHandler; typedef std::function&) > ModifyVpcPeeringConnectionOptionsResponseReceivedHandler; typedef std::function&) > ModifyVpcTenancyResponseReceivedHandler; typedef std::function&) > ModifyVpnConnectionResponseReceivedHandler; typedef std::function&) > ModifyVpnTunnelCertificateResponseReceivedHandler; typedef std::function&) > ModifyVpnTunnelOptionsResponseReceivedHandler; typedef std::function&) > MonitorInstancesResponseReceivedHandler; typedef std::function&) > MoveAddressToVpcResponseReceivedHandler; typedef std::function&) > ProvisionByoipCidrResponseReceivedHandler; typedef std::function&) > PurchaseHostReservationResponseReceivedHandler; typedef std::function&) > PurchaseReservedInstancesOfferingResponseReceivedHandler; typedef std::function&) > PurchaseScheduledInstancesResponseReceivedHandler; typedef std::function&) > RebootInstancesResponseReceivedHandler; typedef std::function&) > RegisterImageResponseReceivedHandler; typedef std::function&) > RegisterInstanceEventNotificationAttributesResponseReceivedHandler; typedef std::function&) > RegisterTransitGatewayMulticastGroupMembersResponseReceivedHandler; typedef std::function&) > RegisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler; typedef std::function&) > RejectTransitGatewayPeeringAttachmentResponseReceivedHandler; typedef std::function&) > RejectTransitGatewayVpcAttachmentResponseReceivedHandler; typedef std::function&) > RejectVpcEndpointConnectionsResponseReceivedHandler; typedef std::function&) > RejectVpcPeeringConnectionResponseReceivedHandler; typedef std::function&) > ReleaseAddressResponseReceivedHandler; typedef std::function&) > ReleaseHostsResponseReceivedHandler; typedef std::function&) > ReplaceIamInstanceProfileAssociationResponseReceivedHandler; typedef std::function&) > ReplaceNetworkAclAssociationResponseReceivedHandler; typedef std::function&) > ReplaceNetworkAclEntryResponseReceivedHandler; typedef std::function&) > ReplaceRouteResponseReceivedHandler; typedef std::function&) > ReplaceRouteTableAssociationResponseReceivedHandler; typedef std::function&) > ReplaceTransitGatewayRouteResponseReceivedHandler; typedef std::function&) > ReportInstanceStatusResponseReceivedHandler; typedef std::function&) > RequestSpotFleetResponseReceivedHandler; typedef std::function&) > RequestSpotInstancesResponseReceivedHandler; typedef std::function&) > ResetEbsDefaultKmsKeyIdResponseReceivedHandler; typedef std::function&) > ResetFpgaImageAttributeResponseReceivedHandler; typedef std::function&) > ResetImageAttributeResponseReceivedHandler; typedef std::function&) > ResetInstanceAttributeResponseReceivedHandler; typedef std::function&) > ResetNetworkInterfaceAttributeResponseReceivedHandler; typedef std::function&) > ResetSnapshotAttributeResponseReceivedHandler; typedef std::function&) > RestoreAddressToClassicResponseReceivedHandler; typedef std::function&) > RestoreManagedPrefixListVersionResponseReceivedHandler; typedef std::function&) > RevokeClientVpnIngressResponseReceivedHandler; typedef std::function&) > RevokeSecurityGroupEgressResponseReceivedHandler; typedef std::function&) > RevokeSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > RunInstancesResponseReceivedHandler; typedef std::function&) > RunScheduledInstancesResponseReceivedHandler; typedef std::function&) > SearchLocalGatewayRoutesResponseReceivedHandler; typedef std::function&) > SearchTransitGatewayMulticastGroupsResponseReceivedHandler; typedef std::function&) > SearchTransitGatewayRoutesResponseReceivedHandler; typedef std::function&) > SendDiagnosticInterruptResponseReceivedHandler; typedef std::function&) > StartInstancesResponseReceivedHandler; typedef std::function&) > StartVpcEndpointServicePrivateDnsVerificationResponseReceivedHandler; typedef std::function&) > StopInstancesResponseReceivedHandler; typedef std::function&) > TerminateClientVpnConnectionsResponseReceivedHandler; typedef std::function&) > TerminateInstancesResponseReceivedHandler; typedef std::function&) > UnassignIpv6AddressesResponseReceivedHandler; typedef std::function&) > UnassignPrivateIpAddressesResponseReceivedHandler; typedef std::function&) > UnmonitorInstancesResponseReceivedHandler; typedef std::function&) > UpdateSecurityGroupRuleDescriptionsEgressResponseReceivedHandler; typedef std::function&) > UpdateSecurityGroupRuleDescriptionsIngressResponseReceivedHandler; typedef std::function&) > WithdrawByoipCidrResponseReceivedHandler; /** * Amazon Elastic Compute Cloud

Amazon Elastic Compute * Cloud (Amazon EC2) provides secure and resizable computing capacity in the AWS * cloud. Using Amazon EC2 eliminates the need to invest in hardware up front, so * you can develop and deploy applications faster.

To learn more, see the * following resources:

*/ class AWS_EC2_API EC2Client : public Aws::Client::AWSXMLClient { public: typedef Aws::Client::AWSXMLClient BASECLASS; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ EC2Client(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ EC2Client(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ EC2Client(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~EC2Client(); /** *

Accepts the Convertible Reserved Instance exchange quote described in the * GetReservedInstancesExchangeQuote call.

See Also:

AWS * API Reference

*/ virtual Model::AcceptReservedInstancesExchangeQuoteOutcome AcceptReservedInstancesExchangeQuote(const Model::AcceptReservedInstancesExchangeQuoteRequest& request) const; /** *

Accepts the Convertible Reserved Instance exchange quote described in the * GetReservedInstancesExchangeQuote call.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptReservedInstancesExchangeQuoteOutcomeCallable AcceptReservedInstancesExchangeQuoteCallable(const Model::AcceptReservedInstancesExchangeQuoteRequest& request) const; /** *

Accepts the Convertible Reserved Instance exchange quote described in the * GetReservedInstancesExchangeQuote call.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptReservedInstancesExchangeQuoteAsync(const Model::AcceptReservedInstancesExchangeQuoteRequest& request, const AcceptReservedInstancesExchangeQuoteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Accepts a transit gateway peering attachment request. The peering attachment * must be in the pendingAcceptance state.

See Also:

* AWS * API Reference

*/ virtual Model::AcceptTransitGatewayPeeringAttachmentOutcome AcceptTransitGatewayPeeringAttachment(const Model::AcceptTransitGatewayPeeringAttachmentRequest& request) const; /** *

Accepts a transit gateway peering attachment request. The peering attachment * must be in the pendingAcceptance state.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptTransitGatewayPeeringAttachmentOutcomeCallable AcceptTransitGatewayPeeringAttachmentCallable(const Model::AcceptTransitGatewayPeeringAttachmentRequest& request) const; /** *

Accepts a transit gateway peering attachment request. The peering attachment * must be in the pendingAcceptance state.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptTransitGatewayPeeringAttachmentAsync(const Model::AcceptTransitGatewayPeeringAttachmentRequest& request, const AcceptTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Accepts a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use RejectTransitGatewayVpcAttachment to reject a VPC * attachment request.

See Also:

AWS * API Reference

*/ virtual Model::AcceptTransitGatewayVpcAttachmentOutcome AcceptTransitGatewayVpcAttachment(const Model::AcceptTransitGatewayVpcAttachmentRequest& request) const; /** *

Accepts a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use RejectTransitGatewayVpcAttachment to reject a VPC * attachment request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptTransitGatewayVpcAttachmentOutcomeCallable AcceptTransitGatewayVpcAttachmentCallable(const Model::AcceptTransitGatewayVpcAttachmentRequest& request) const; /** *

Accepts a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use RejectTransitGatewayVpcAttachment to reject a VPC * attachment request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptTransitGatewayVpcAttachmentAsync(const Model::AcceptTransitGatewayVpcAttachmentRequest& request, const AcceptTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Accepts one or more interface VPC endpoint connection requests to your VPC * endpoint service.

See Also:

AWS * API Reference

*/ virtual Model::AcceptVpcEndpointConnectionsOutcome AcceptVpcEndpointConnections(const Model::AcceptVpcEndpointConnectionsRequest& request) const; /** *

Accepts one or more interface VPC endpoint connection requests to your VPC * endpoint service.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptVpcEndpointConnectionsOutcomeCallable AcceptVpcEndpointConnectionsCallable(const Model::AcceptVpcEndpointConnectionsRequest& request) const; /** *

Accepts one or more interface VPC endpoint connection requests to your VPC * endpoint service.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptVpcEndpointConnectionsAsync(const Model::AcceptVpcEndpointConnectionsRequest& request, const AcceptVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Accept a VPC peering connection request. To accept a request, the VPC peering * connection must be in the pending-acceptance state, and you must be * the owner of the peer VPC. Use DescribeVpcPeeringConnections to view your * outstanding VPC peering connection requests.

For an inter-Region VPC * peering connection request, you must accept the VPC peering connection in the * Region of the accepter VPC.

See Also:

AWS * API Reference

*/ virtual Model::AcceptVpcPeeringConnectionOutcome AcceptVpcPeeringConnection(const Model::AcceptVpcPeeringConnectionRequest& request) const; /** *

Accept a VPC peering connection request. To accept a request, the VPC peering * connection must be in the pending-acceptance state, and you must be * the owner of the peer VPC. Use DescribeVpcPeeringConnections to view your * outstanding VPC peering connection requests.

For an inter-Region VPC * peering connection request, you must accept the VPC peering connection in the * Region of the accepter VPC.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptVpcPeeringConnectionOutcomeCallable AcceptVpcPeeringConnectionCallable(const Model::AcceptVpcPeeringConnectionRequest& request) const; /** *

Accept a VPC peering connection request. To accept a request, the VPC peering * connection must be in the pending-acceptance state, and you must be * the owner of the peer VPC. Use DescribeVpcPeeringConnections to view your * outstanding VPC peering connection requests.

For an inter-Region VPC * peering connection request, you must accept the VPC peering connection in the * Region of the accepter VPC.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptVpcPeeringConnectionAsync(const Model::AcceptVpcPeeringConnectionRequest& request, const AcceptVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Advertises an IPv4 or IPv6 address range that is provisioned for use with * your AWS resources through bring your own IP addresses (BYOIP).

You can * perform this operation at most once every 10 seconds, even if you specify * different address ranges each time.

We recommend that you stop * advertising the BYOIP CIDR from other locations when you advertise it from AWS. * To minimize down time, you can configure your AWS resources to use an address * from a BYOIP CIDR before it is advertised, and then simultaneously stop * advertising it from the current location and start advertising it through * AWS.

It can take a few minutes before traffic to the specified addresses * starts routing to AWS because of BGP propagation delays.

To stop * advertising the BYOIP CIDR, use WithdrawByoipCidr.

See * Also:

AWS * API Reference

*/ virtual Model::AdvertiseByoipCidrOutcome AdvertiseByoipCidr(const Model::AdvertiseByoipCidrRequest& request) const; /** *

Advertises an IPv4 or IPv6 address range that is provisioned for use with * your AWS resources through bring your own IP addresses (BYOIP).

You can * perform this operation at most once every 10 seconds, even if you specify * different address ranges each time.

We recommend that you stop * advertising the BYOIP CIDR from other locations when you advertise it from AWS. * To minimize down time, you can configure your AWS resources to use an address * from a BYOIP CIDR before it is advertised, and then simultaneously stop * advertising it from the current location and start advertising it through * AWS.

It can take a few minutes before traffic to the specified addresses * starts routing to AWS because of BGP propagation delays.

To stop * advertising the BYOIP CIDR, use WithdrawByoipCidr.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AdvertiseByoipCidrOutcomeCallable AdvertiseByoipCidrCallable(const Model::AdvertiseByoipCidrRequest& request) const; /** *

Advertises an IPv4 or IPv6 address range that is provisioned for use with * your AWS resources through bring your own IP addresses (BYOIP).

You can * perform this operation at most once every 10 seconds, even if you specify * different address ranges each time.

We recommend that you stop * advertising the BYOIP CIDR from other locations when you advertise it from AWS. * To minimize down time, you can configure your AWS resources to use an address * from a BYOIP CIDR before it is advertised, and then simultaneously stop * advertising it from the current location and start advertising it through * AWS.

It can take a few minutes before traffic to the specified addresses * starts routing to AWS because of BGP propagation delays.

To stop * advertising the BYOIP CIDR, use WithdrawByoipCidr.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AdvertiseByoipCidrAsync(const Model::AdvertiseByoipCidrRequest& request, const AdvertiseByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Allocates an Elastic IP address to your AWS account. After you allocate the * Elastic IP address you can associate it with an instance or network interface. * After you release an Elastic IP address, it is released to the IP address pool * and can be allocated to a different AWS account.

You can allocate an * Elastic IP address from an address pool owned by AWS or from an address pool * created from a public IPv4 address range that you have brought to AWS for use * with your AWS resources using bring your own IP addresses (BYOIP). For more * information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

[EC2-VPC] If you release an Elastic IP address, you might be * able to recover it. You cannot recover an Elastic IP address that you released * after it is allocated to another AWS account. You cannot recover an Elastic IP * address for EC2-Classic. To attempt to recover an Elastic IP address that you * released, specify it in this operation.

An Elastic IP address is for use * either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 * Elastic IP addresses for EC2-Classic per Region and 5 Elastic IP addresses for * EC2-VPC per Region.

For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

You can allocate a carrier IP address which is a public IP address from a * telecommunication carrier, to a network interface which resides in a subnet in a * Wavelength Zone (for example an EC2 instance).

See Also:

AWS * API Reference

*/ virtual Model::AllocateAddressOutcome AllocateAddress(const Model::AllocateAddressRequest& request) const; /** *

Allocates an Elastic IP address to your AWS account. After you allocate the * Elastic IP address you can associate it with an instance or network interface. * After you release an Elastic IP address, it is released to the IP address pool * and can be allocated to a different AWS account.

You can allocate an * Elastic IP address from an address pool owned by AWS or from an address pool * created from a public IPv4 address range that you have brought to AWS for use * with your AWS resources using bring your own IP addresses (BYOIP). For more * information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

[EC2-VPC] If you release an Elastic IP address, you might be * able to recover it. You cannot recover an Elastic IP address that you released * after it is allocated to another AWS account. You cannot recover an Elastic IP * address for EC2-Classic. To attempt to recover an Elastic IP address that you * released, specify it in this operation.

An Elastic IP address is for use * either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 * Elastic IP addresses for EC2-Classic per Region and 5 Elastic IP addresses for * EC2-VPC per Region.

For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

You can allocate a carrier IP address which is a public IP address from a * telecommunication carrier, to a network interface which resides in a subnet in a * Wavelength Zone (for example an EC2 instance).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AllocateAddressOutcomeCallable AllocateAddressCallable(const Model::AllocateAddressRequest& request) const; /** *

Allocates an Elastic IP address to your AWS account. After you allocate the * Elastic IP address you can associate it with an instance or network interface. * After you release an Elastic IP address, it is released to the IP address pool * and can be allocated to a different AWS account.

You can allocate an * Elastic IP address from an address pool owned by AWS or from an address pool * created from a public IPv4 address range that you have brought to AWS for use * with your AWS resources using bring your own IP addresses (BYOIP). For more * information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

[EC2-VPC] If you release an Elastic IP address, you might be * able to recover it. You cannot recover an Elastic IP address that you released * after it is allocated to another AWS account. You cannot recover an Elastic IP * address for EC2-Classic. To attempt to recover an Elastic IP address that you * released, specify it in this operation.

An Elastic IP address is for use * either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 * Elastic IP addresses for EC2-Classic per Region and 5 Elastic IP addresses for * EC2-VPC per Region.

For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

You can allocate a carrier IP address which is a public IP address from a * telecommunication carrier, to a network interface which resides in a subnet in a * Wavelength Zone (for example an EC2 instance).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AllocateAddressAsync(const Model::AllocateAddressRequest& request, const AllocateAddressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Allocates a Dedicated Host to your account. At a minimum, specify the * supported instance type or instance family, the Availability Zone in which to * allocate the host, and the number of hosts to allocate.

See Also:

* AWS * API Reference

*/ virtual Model::AllocateHostsOutcome AllocateHosts(const Model::AllocateHostsRequest& request) const; /** *

Allocates a Dedicated Host to your account. At a minimum, specify the * supported instance type or instance family, the Availability Zone in which to * allocate the host, and the number of hosts to allocate.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AllocateHostsOutcomeCallable AllocateHostsCallable(const Model::AllocateHostsRequest& request) const; /** *

Allocates a Dedicated Host to your account. At a minimum, specify the * supported instance type or instance family, the Availability Zone in which to * allocate the host, and the number of hosts to allocate.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AllocateHostsAsync(const Model::AllocateHostsRequest& request, const AllocateHostsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Applies a security group to the association between the target network and * the Client VPN endpoint. This action replaces the existing security groups with * the specified security groups.

See Also:

AWS * API Reference

*/ virtual Model::ApplySecurityGroupsToClientVpnTargetNetworkOutcome ApplySecurityGroupsToClientVpnTargetNetwork(const Model::ApplySecurityGroupsToClientVpnTargetNetworkRequest& request) const; /** *

Applies a security group to the association between the target network and * the Client VPN endpoint. This action replaces the existing security groups with * the specified security groups.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ApplySecurityGroupsToClientVpnTargetNetworkOutcomeCallable ApplySecurityGroupsToClientVpnTargetNetworkCallable(const Model::ApplySecurityGroupsToClientVpnTargetNetworkRequest& request) const; /** *

Applies a security group to the association between the target network and * the Client VPN endpoint. This action replaces the existing security groups with * the specified security groups.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ApplySecurityGroupsToClientVpnTargetNetworkAsync(const Model::ApplySecurityGroupsToClientVpnTargetNetworkRequest& request, const ApplySecurityGroupsToClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Assigns one or more IPv6 addresses to the specified network interface. You * can specify one or more specific IPv6 addresses, or you can specify the number * of IPv6 addresses to be automatically assigned from within the subnet's IPv6 * CIDR block range. You can assign as many IPv6 addresses to a network interface * as you can assign private IPv4 addresses, and the limit varies per instance * type. For information, see IP * Addresses Per Network Interface Per Instance Type in the Amazon Elastic * Compute Cloud User Guide.

You must specify either the IPv6 addresses * or the IPv6 address count in the request.

See Also:

AWS * API Reference

*/ virtual Model::AssignIpv6AddressesOutcome AssignIpv6Addresses(const Model::AssignIpv6AddressesRequest& request) const; /** *

Assigns one or more IPv6 addresses to the specified network interface. You * can specify one or more specific IPv6 addresses, or you can specify the number * of IPv6 addresses to be automatically assigned from within the subnet's IPv6 * CIDR block range. You can assign as many IPv6 addresses to a network interface * as you can assign private IPv4 addresses, and the limit varies per instance * type. For information, see IP * Addresses Per Network Interface Per Instance Type in the Amazon Elastic * Compute Cloud User Guide.

You must specify either the IPv6 addresses * or the IPv6 address count in the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssignIpv6AddressesOutcomeCallable AssignIpv6AddressesCallable(const Model::AssignIpv6AddressesRequest& request) const; /** *

Assigns one or more IPv6 addresses to the specified network interface. You * can specify one or more specific IPv6 addresses, or you can specify the number * of IPv6 addresses to be automatically assigned from within the subnet's IPv6 * CIDR block range. You can assign as many IPv6 addresses to a network interface * as you can assign private IPv4 addresses, and the limit varies per instance * type. For information, see IP * Addresses Per Network Interface Per Instance Type in the Amazon Elastic * Compute Cloud User Guide.

You must specify either the IPv6 addresses * or the IPv6 address count in the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssignIpv6AddressesAsync(const Model::AssignIpv6AddressesRequest& request, const AssignIpv6AddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Assigns one or more secondary private IP addresses to the specified network * interface.

You can specify one or more specific secondary IP addresses, * or you can specify the number of secondary IP addresses to be automatically * assigned within the subnet's CIDR block range. The number of secondary IP * addresses that you can assign to an instance varies by instance type. For * information about instance types, see Instance * Types in the Amazon Elastic Compute Cloud User Guide. For more * information about Elastic IP addresses, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

When you move a secondary private IP address to another network interface, * any Elastic IP address that is associated with the IP address is also moved.

*

Remapping an IP address is an asynchronous operation. When you move an IP * address from one network interface to another, check * network/interfaces/macs/mac/local-ipv4s in the instance metadata to * confirm that the remapping is complete.

You must specify either the IP * addresses or the IP address count in the request.

See Also:

AWS * API Reference

*/ virtual Model::AssignPrivateIpAddressesOutcome AssignPrivateIpAddresses(const Model::AssignPrivateIpAddressesRequest& request) const; /** *

Assigns one or more secondary private IP addresses to the specified network * interface.

You can specify one or more specific secondary IP addresses, * or you can specify the number of secondary IP addresses to be automatically * assigned within the subnet's CIDR block range. The number of secondary IP * addresses that you can assign to an instance varies by instance type. For * information about instance types, see Instance * Types in the Amazon Elastic Compute Cloud User Guide. For more * information about Elastic IP addresses, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

When you move a secondary private IP address to another network interface, * any Elastic IP address that is associated with the IP address is also moved.

*

Remapping an IP address is an asynchronous operation. When you move an IP * address from one network interface to another, check * network/interfaces/macs/mac/local-ipv4s in the instance metadata to * confirm that the remapping is complete.

You must specify either the IP * addresses or the IP address count in the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssignPrivateIpAddressesOutcomeCallable AssignPrivateIpAddressesCallable(const Model::AssignPrivateIpAddressesRequest& request) const; /** *

Assigns one or more secondary private IP addresses to the specified network * interface.

You can specify one or more specific secondary IP addresses, * or you can specify the number of secondary IP addresses to be automatically * assigned within the subnet's CIDR block range. The number of secondary IP * addresses that you can assign to an instance varies by instance type. For * information about instance types, see Instance * Types in the Amazon Elastic Compute Cloud User Guide. For more * information about Elastic IP addresses, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

When you move a secondary private IP address to another network interface, * any Elastic IP address that is associated with the IP address is also moved.

*

Remapping an IP address is an asynchronous operation. When you move an IP * address from one network interface to another, check * network/interfaces/macs/mac/local-ipv4s in the instance metadata to * confirm that the remapping is complete.

You must specify either the IP * addresses or the IP address count in the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssignPrivateIpAddressesAsync(const Model::AssignPrivateIpAddressesRequest& request, const AssignPrivateIpAddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates an Elastic IP address, or carrier IP address (for instances that * are in subnets in Wavelength Zones) with an instance or a network interface. * Before you can use an Elastic IP address, you must allocate it to your * account.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

[EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is * already associated with a different instance, it is disassociated from that * instance and associated with the specified instance. If you associate an Elastic * IP address with an instance that has an existing Elastic IP address, the * existing address is disassociated from the instance, but remains allocated to * your account.

[VPC in an EC2-Classic account] If you don't specify a * private IP address, the Elastic IP address is associated with the primary IP * address. If the Elastic IP address is already associated with a different * instance or a network interface, you get an error unless you allow * reassociation. You cannot associate an Elastic IP address with an instance or * network interface that has an existing Elastic IP address.

[Subnets in * Wavelength Zones] You can associate an IP address from the telecommunication * carrier to the instance or network interface.

You cannot associate an * Elastic IP address with an interface in a different network border group.

*

This is an idempotent operation. If you perform the operation * more than once, Amazon EC2 doesn't return an error, and you may be charged for * each time the Elastic IP address is remapped to the same instance. For more * information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

*

See Also:

AWS * API Reference

*/ virtual Model::AssociateAddressOutcome AssociateAddress(const Model::AssociateAddressRequest& request) const; /** *

Associates an Elastic IP address, or carrier IP address (for instances that * are in subnets in Wavelength Zones) with an instance or a network interface. * Before you can use an Elastic IP address, you must allocate it to your * account.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

[EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is * already associated with a different instance, it is disassociated from that * instance and associated with the specified instance. If you associate an Elastic * IP address with an instance that has an existing Elastic IP address, the * existing address is disassociated from the instance, but remains allocated to * your account.

[VPC in an EC2-Classic account] If you don't specify a * private IP address, the Elastic IP address is associated with the primary IP * address. If the Elastic IP address is already associated with a different * instance or a network interface, you get an error unless you allow * reassociation. You cannot associate an Elastic IP address with an instance or * network interface that has an existing Elastic IP address.

[Subnets in * Wavelength Zones] You can associate an IP address from the telecommunication * carrier to the instance or network interface.

You cannot associate an * Elastic IP address with an interface in a different network border group.

*

This is an idempotent operation. If you perform the operation * more than once, Amazon EC2 doesn't return an error, and you may be charged for * each time the Elastic IP address is remapped to the same instance. For more * information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

*

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateAddressOutcomeCallable AssociateAddressCallable(const Model::AssociateAddressRequest& request) const; /** *

Associates an Elastic IP address, or carrier IP address (for instances that * are in subnets in Wavelength Zones) with an instance or a network interface. * Before you can use an Elastic IP address, you must allocate it to your * account.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

[EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is * already associated with a different instance, it is disassociated from that * instance and associated with the specified instance. If you associate an Elastic * IP address with an instance that has an existing Elastic IP address, the * existing address is disassociated from the instance, but remains allocated to * your account.

[VPC in an EC2-Classic account] If you don't specify a * private IP address, the Elastic IP address is associated with the primary IP * address. If the Elastic IP address is already associated with a different * instance or a network interface, you get an error unless you allow * reassociation. You cannot associate an Elastic IP address with an instance or * network interface that has an existing Elastic IP address.

[Subnets in * Wavelength Zones] You can associate an IP address from the telecommunication * carrier to the instance or network interface.

You cannot associate an * Elastic IP address with an interface in a different network border group.

*

This is an idempotent operation. If you perform the operation * more than once, Amazon EC2 doesn't return an error, and you may be charged for * each time the Elastic IP address is remapped to the same instance. For more * information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

*

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateAddressAsync(const Model::AssociateAddressRequest& request, const AssociateAddressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates a target network with a Client VPN endpoint. A target network is a * subnet in a VPC. You can associate multiple subnets from the same VPC with a * Client VPN endpoint. You can associate only one subnet in each Availability * Zone. We recommend that you associate at least two subnets to provide * Availability Zone redundancy.

If you specified a VPC when you created the * Client VPN endpoint or if you have previous subnet associations, the specified * subnet must be in the same VPC. To specify a subnet that's in a different VPC, * you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) * and change the VPC that's associated with it.

See Also:

AWS * API Reference

*/ virtual Model::AssociateClientVpnTargetNetworkOutcome AssociateClientVpnTargetNetwork(const Model::AssociateClientVpnTargetNetworkRequest& request) const; /** *

Associates a target network with a Client VPN endpoint. A target network is a * subnet in a VPC. You can associate multiple subnets from the same VPC with a * Client VPN endpoint. You can associate only one subnet in each Availability * Zone. We recommend that you associate at least two subnets to provide * Availability Zone redundancy.

If you specified a VPC when you created the * Client VPN endpoint or if you have previous subnet associations, the specified * subnet must be in the same VPC. To specify a subnet that's in a different VPC, * you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) * and change the VPC that's associated with it.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateClientVpnTargetNetworkOutcomeCallable AssociateClientVpnTargetNetworkCallable(const Model::AssociateClientVpnTargetNetworkRequest& request) const; /** *

Associates a target network with a Client VPN endpoint. A target network is a * subnet in a VPC. You can associate multiple subnets from the same VPC with a * Client VPN endpoint. You can associate only one subnet in each Availability * Zone. We recommend that you associate at least two subnets to provide * Availability Zone redundancy.

If you specified a VPC when you created the * Client VPN endpoint or if you have previous subnet associations, the specified * subnet must be in the same VPC. To specify a subnet that's in a different VPC, * you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) * and change the VPC that's associated with it.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateClientVpnTargetNetworkAsync(const Model::AssociateClientVpnTargetNetworkRequest& request, const AssociateClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates a set of DHCP options (that you've previously created) with the * specified VPC, or associates no DHCP options with the VPC.

After you * associate the options with the VPC, any existing instances and all new instances * that you launch in that VPC use the options. You don't need to restart or * relaunch the instances. They automatically pick up the changes within a few * hours, depending on how frequently the instance renews its DHCP lease. You can * explicitly renew the lease using the operating system on the instance.

*

For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AssociateDhcpOptionsOutcome AssociateDhcpOptions(const Model::AssociateDhcpOptionsRequest& request) const; /** *

Associates a set of DHCP options (that you've previously created) with the * specified VPC, or associates no DHCP options with the VPC.

After you * associate the options with the VPC, any existing instances and all new instances * that you launch in that VPC use the options. You don't need to restart or * relaunch the instances. They automatically pick up the changes within a few * hours, depending on how frequently the instance renews its DHCP lease. You can * explicitly renew the lease using the operating system on the instance.

*

For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateDhcpOptionsOutcomeCallable AssociateDhcpOptionsCallable(const Model::AssociateDhcpOptionsRequest& request) const; /** *

Associates a set of DHCP options (that you've previously created) with the * specified VPC, or associates no DHCP options with the VPC.

After you * associate the options with the VPC, any existing instances and all new instances * that you launch in that VPC use the options. You don't need to restart or * relaunch the instances. They automatically pick up the changes within a few * hours, depending on how frequently the instance renews its DHCP lease. You can * explicitly renew the lease using the operating system on the instance.

*

For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateDhcpOptionsAsync(const Model::AssociateDhcpOptionsRequest& request, const AssociateDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates an IAM instance profile with a running or stopped instance. You * cannot associate more than one IAM instance profile with an * instance.

See Also:

AWS * API Reference

*/ virtual Model::AssociateIamInstanceProfileOutcome AssociateIamInstanceProfile(const Model::AssociateIamInstanceProfileRequest& request) const; /** *

Associates an IAM instance profile with a running or stopped instance. You * cannot associate more than one IAM instance profile with an * instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateIamInstanceProfileOutcomeCallable AssociateIamInstanceProfileCallable(const Model::AssociateIamInstanceProfileRequest& request) const; /** *

Associates an IAM instance profile with a running or stopped instance. You * cannot associate more than one IAM instance profile with an * instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateIamInstanceProfileAsync(const Model::AssociateIamInstanceProfileRequest& request, const AssociateIamInstanceProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates a subnet in your VPC or an internet gateway or virtual private * gateway attached to your VPC with a route table in your VPC. This association * causes traffic from the subnet or gateway to be routed according to the routes * in the route table. The action returns an association ID, which you need in * order to disassociate the route table later. A route table can be associated * with multiple subnets.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::AssociateRouteTableOutcome AssociateRouteTable(const Model::AssociateRouteTableRequest& request) const; /** *

Associates a subnet in your VPC or an internet gateway or virtual private * gateway attached to your VPC with a route table in your VPC. This association * causes traffic from the subnet or gateway to be routed according to the routes * in the route table. The action returns an association ID, which you need in * order to disassociate the route table later. A route table can be associated * with multiple subnets.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateRouteTableOutcomeCallable AssociateRouteTableCallable(const Model::AssociateRouteTableRequest& request) const; /** *

Associates a subnet in your VPC or an internet gateway or virtual private * gateway attached to your VPC with a route table in your VPC. This association * causes traffic from the subnet or gateway to be routed according to the routes * in the route table. The action returns an association ID, which you need in * order to disassociate the route table later. A route table can be associated * with multiple subnets.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateRouteTableAsync(const Model::AssociateRouteTableRequest& request, const AssociateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates a CIDR block with your subnet. You can only associate a single * IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length * of /64.

See Also:

AWS * API Reference

*/ virtual Model::AssociateSubnetCidrBlockOutcome AssociateSubnetCidrBlock(const Model::AssociateSubnetCidrBlockRequest& request) const; /** *

Associates a CIDR block with your subnet. You can only associate a single * IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length * of /64.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateSubnetCidrBlockOutcomeCallable AssociateSubnetCidrBlockCallable(const Model::AssociateSubnetCidrBlockRequest& request) const; /** *

Associates a CIDR block with your subnet. You can only associate a single * IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length * of /64.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateSubnetCidrBlockAsync(const Model::AssociateSubnetCidrBlockRequest& request, const AssociateSubnetCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates the specified subnets and transit gateway attachments with the * specified transit gateway multicast domain.

The transit gateway * attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments * to see the state of the attachment.

See Also:

AWS * API Reference

*/ virtual Model::AssociateTransitGatewayMulticastDomainOutcome AssociateTransitGatewayMulticastDomain(const Model::AssociateTransitGatewayMulticastDomainRequest& request) const; /** *

Associates the specified subnets and transit gateway attachments with the * specified transit gateway multicast domain.

The transit gateway * attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments * to see the state of the attachment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateTransitGatewayMulticastDomainOutcomeCallable AssociateTransitGatewayMulticastDomainCallable(const Model::AssociateTransitGatewayMulticastDomainRequest& request) const; /** *

Associates the specified subnets and transit gateway attachments with the * specified transit gateway multicast domain.

The transit gateway * attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments * to see the state of the attachment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateTransitGatewayMulticastDomainAsync(const Model::AssociateTransitGatewayMulticastDomainRequest& request, const AssociateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates the specified attachment with the specified transit gateway route * table. You can associate only one route table with an attachment.

See * Also:

AWS * API Reference

*/ virtual Model::AssociateTransitGatewayRouteTableOutcome AssociateTransitGatewayRouteTable(const Model::AssociateTransitGatewayRouteTableRequest& request) const; /** *

Associates the specified attachment with the specified transit gateway route * table. You can associate only one route table with an attachment.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateTransitGatewayRouteTableOutcomeCallable AssociateTransitGatewayRouteTableCallable(const Model::AssociateTransitGatewayRouteTableRequest& request) const; /** *

Associates the specified attachment with the specified transit gateway route * table. You can associate only one route table with an attachment.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateTransitGatewayRouteTableAsync(const Model::AssociateTransitGatewayRouteTableRequest& request, const AssociateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates a CIDR block with your VPC. You can associate a secondary IPv4 * CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an * IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). * The IPv6 CIDR block size is fixed at /56.

You must specify one of the * following in the request: an IPv4 CIDR block, an IPv6 pool, or an * Amazon-provided IPv6 CIDR block.

For more information about associating * CIDR blocks with your VPC and applicable restrictions, see VPC * and Subnet Sizing in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AssociateVpcCidrBlockOutcome AssociateVpcCidrBlock(const Model::AssociateVpcCidrBlockRequest& request) const; /** *

Associates a CIDR block with your VPC. You can associate a secondary IPv4 * CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an * IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). * The IPv6 CIDR block size is fixed at /56.

You must specify one of the * following in the request: an IPv4 CIDR block, an IPv6 pool, or an * Amazon-provided IPv6 CIDR block.

For more information about associating * CIDR blocks with your VPC and applicable restrictions, see VPC * and Subnet Sizing in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateVpcCidrBlockOutcomeCallable AssociateVpcCidrBlockCallable(const Model::AssociateVpcCidrBlockRequest& request) const; /** *

Associates a CIDR block with your VPC. You can associate a secondary IPv4 * CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an * IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). * The IPv6 CIDR block size is fixed at /56.

You must specify one of the * following in the request: an IPv4 CIDR block, an IPv6 pool, or an * Amazon-provided IPv6 CIDR block.

For more information about associating * CIDR blocks with your VPC and applicable restrictions, see VPC * and Subnet Sizing in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateVpcCidrBlockAsync(const Model::AssociateVpcCidrBlockRequest& request, const AssociateVpcCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or * more of the VPC's security groups. You cannot link an EC2-Classic instance to * more than one VPC at a time. You can only link an instance that's in the * running state. An instance is automatically unlinked from a VPC * when it's stopped - you can link it to the VPC again when you restart it.

*

After you've linked an instance, you cannot change the VPC security groups * that are associated with it. To change the security groups, you must first * unlink the instance, and then link it again.

Linking your instance to a * VPC is sometimes referred to as attaching your instance.

See * Also:

AWS * API Reference

*/ virtual Model::AttachClassicLinkVpcOutcome AttachClassicLinkVpc(const Model::AttachClassicLinkVpcRequest& request) const; /** *

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or * more of the VPC's security groups. You cannot link an EC2-Classic instance to * more than one VPC at a time. You can only link an instance that's in the * running state. An instance is automatically unlinked from a VPC * when it's stopped - you can link it to the VPC again when you restart it.

*

After you've linked an instance, you cannot change the VPC security groups * that are associated with it. To change the security groups, you must first * unlink the instance, and then link it again.

Linking your instance to a * VPC is sometimes referred to as attaching your instance.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AttachClassicLinkVpcOutcomeCallable AttachClassicLinkVpcCallable(const Model::AttachClassicLinkVpcRequest& request) const; /** *

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or * more of the VPC's security groups. You cannot link an EC2-Classic instance to * more than one VPC at a time. You can only link an instance that's in the * running state. An instance is automatically unlinked from a VPC * when it's stopped - you can link it to the VPC again when you restart it.

*

After you've linked an instance, you cannot change the VPC security groups * that are associated with it. To change the security groups, you must first * unlink the instance, and then link it again.

Linking your instance to a * VPC is sometimes referred to as attaching your instance.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AttachClassicLinkVpcAsync(const Model::AttachClassicLinkVpcRequest& request, const AttachClassicLinkVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attaches an internet gateway or a virtual private gateway to a VPC, enabling * connectivity between the internet and the VPC. For more information about your * VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

*/ virtual Model::AttachInternetGatewayOutcome AttachInternetGateway(const Model::AttachInternetGatewayRequest& request) const; /** *

Attaches an internet gateway or a virtual private gateway to a VPC, enabling * connectivity between the internet and the VPC. For more information about your * VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AttachInternetGatewayOutcomeCallable AttachInternetGatewayCallable(const Model::AttachInternetGatewayRequest& request) const; /** *

Attaches an internet gateway or a virtual private gateway to a VPC, enabling * connectivity between the internet and the VPC. For more information about your * VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AttachInternetGatewayAsync(const Model::AttachInternetGatewayRequest& request, const AttachInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attaches a network interface to an instance.

See Also:

AWS * API Reference

*/ virtual Model::AttachNetworkInterfaceOutcome AttachNetworkInterface(const Model::AttachNetworkInterfaceRequest& request) const; /** *

Attaches a network interface to an instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AttachNetworkInterfaceOutcomeCallable AttachNetworkInterfaceCallable(const Model::AttachNetworkInterfaceRequest& request) const; /** *

Attaches a network interface to an instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AttachNetworkInterfaceAsync(const Model::AttachNetworkInterfaceRequest& request, const AttachNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attaches an EBS volume to a running or stopped instance and exposes it to the * instance with the specified device name.

Encrypted EBS volumes must be * attached to instances that support Amazon EBS encryption. For more information, * see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

After you attach an EBS volume, you must make it available. For more * information, see Making * an EBS volume available for use.

If a volume has an AWS Marketplace * product code:

  • The volume can be attached only to a stopped * instance.

  • AWS Marketplace product codes are copied from the * volume to the instance.

  • You must be subscribed to the * product.

  • The instance type and operating system of the * instance must support the product. For example, you can't detach a volume from a * Windows instance and attach it to a Linux instance.

For more * information, see Attaching * Amazon EBS volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AttachVolumeOutcome AttachVolume(const Model::AttachVolumeRequest& request) const; /** *

Attaches an EBS volume to a running or stopped instance and exposes it to the * instance with the specified device name.

Encrypted EBS volumes must be * attached to instances that support Amazon EBS encryption. For more information, * see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

After you attach an EBS volume, you must make it available. For more * information, see Making * an EBS volume available for use.

If a volume has an AWS Marketplace * product code:

  • The volume can be attached only to a stopped * instance.

  • AWS Marketplace product codes are copied from the * volume to the instance.

  • You must be subscribed to the * product.

  • The instance type and operating system of the * instance must support the product. For example, you can't detach a volume from a * Windows instance and attach it to a Linux instance.

For more * information, see Attaching * Amazon EBS volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AttachVolumeOutcomeCallable AttachVolumeCallable(const Model::AttachVolumeRequest& request) const; /** *

Attaches an EBS volume to a running or stopped instance and exposes it to the * instance with the specified device name.

Encrypted EBS volumes must be * attached to instances that support Amazon EBS encryption. For more information, * see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

After you attach an EBS volume, you must make it available. For more * information, see Making * an EBS volume available for use.

If a volume has an AWS Marketplace * product code:

  • The volume can be attached only to a stopped * instance.

  • AWS Marketplace product codes are copied from the * volume to the instance.

  • You must be subscribed to the * product.

  • The instance type and operating system of the * instance must support the product. For example, you can't detach a volume from a * Windows instance and attach it to a Linux instance.

For more * information, see Attaching * Amazon EBS volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AttachVolumeAsync(const Model::AttachVolumeRequest& request, const AttachVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attaches a virtual private gateway to a VPC. You can attach one virtual * private gateway to one VPC at a time.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AttachVpnGatewayOutcome AttachVpnGateway(const Model::AttachVpnGatewayRequest& request) const; /** *

Attaches a virtual private gateway to a VPC. You can attach one virtual * private gateway to one VPC at a time.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AttachVpnGatewayOutcomeCallable AttachVpnGatewayCallable(const Model::AttachVpnGatewayRequest& request) const; /** *

Attaches a virtual private gateway to a VPC. You can attach one virtual * private gateway to one VPC at a time.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AttachVpnGatewayAsync(const Model::AttachVpnGatewayRequest& request, const AttachVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds an ingress authorization rule to a Client VPN endpoint. Ingress * authorization rules act as firewall rules that grant access to networks. You * must configure ingress authorization rules to enable clients to access resources * in AWS or on-premises networks.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeClientVpnIngressOutcome AuthorizeClientVpnIngress(const Model::AuthorizeClientVpnIngressRequest& request) const; /** *

Adds an ingress authorization rule to a Client VPN endpoint. Ingress * authorization rules act as firewall rules that grant access to networks. You * must configure ingress authorization rules to enable clients to access resources * in AWS or on-premises networks.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeClientVpnIngressOutcomeCallable AuthorizeClientVpnIngressCallable(const Model::AuthorizeClientVpnIngressRequest& request) const; /** *

Adds an ingress authorization rule to a Client VPN endpoint. Ingress * authorization rules act as firewall rules that grant access to networks. You * must configure ingress authorization rules to enable clients to access resources * in AWS or on-premises networks.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeClientVpnIngressAsync(const Model::AuthorizeClientVpnIngressRequest& request, const AuthorizeClientVpnIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[VPC only] Adds the specified egress rules to a security group for use with a * VPC.

An outbound rule permits instances to send traffic to the specified * IPv4 or IPv6 CIDR address ranges, or to the instances associated with the * specified destination security groups.

You specify a protocol for each * rule (for example, TCP). For the TCP and UDP protocols, you must also specify * the destination port or port range. For the ICMP protocol, you must also specify * the ICMP type and code. You can use -1 for the type or code to mean all types or * all codes.

Rule changes are propagated to affected instances as quickly * as possible. However, a small delay might occur.

For more information * about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeSecurityGroupEgressOutcome AuthorizeSecurityGroupEgress(const Model::AuthorizeSecurityGroupEgressRequest& request) const; /** *

[VPC only] Adds the specified egress rules to a security group for use with a * VPC.

An outbound rule permits instances to send traffic to the specified * IPv4 or IPv6 CIDR address ranges, or to the instances associated with the * specified destination security groups.

You specify a protocol for each * rule (for example, TCP). For the TCP and UDP protocols, you must also specify * the destination port or port range. For the ICMP protocol, you must also specify * the ICMP type and code. You can use -1 for the type or code to mean all types or * all codes.

Rule changes are propagated to affected instances as quickly * as possible. However, a small delay might occur.

For more information * about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeSecurityGroupEgressOutcomeCallable AuthorizeSecurityGroupEgressCallable(const Model::AuthorizeSecurityGroupEgressRequest& request) const; /** *

[VPC only] Adds the specified egress rules to a security group for use with a * VPC.

An outbound rule permits instances to send traffic to the specified * IPv4 or IPv6 CIDR address ranges, or to the instances associated with the * specified destination security groups.

You specify a protocol for each * rule (for example, TCP). For the TCP and UDP protocols, you must also specify * the destination port or port range. For the ICMP protocol, you must also specify * the ICMP type and code. You can use -1 for the type or code to mean all types or * all codes.

Rule changes are propagated to affected instances as quickly * as possible. However, a small delay might occur.

For more information * about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeSecurityGroupEgressAsync(const Model::AuthorizeSecurityGroupEgressRequest& request, const AuthorizeSecurityGroupEgressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds the specified ingress rules to a security group.

An inbound rule * permits instances to receive traffic from the specified IPv4 or IPv6 CIDR * address ranges, or from the instances associated with the specified destination * security groups.

You specify a protocol for each rule (for example, TCP). * For TCP and UDP, you must also specify the destination port or port range. For * ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 * to mean all types or all codes.

Rule changes are propagated to instances * within the security group as quickly as possible. However, a small delay might * occur.

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeSecurityGroupIngressOutcome AuthorizeSecurityGroupIngress(const Model::AuthorizeSecurityGroupIngressRequest& request) const; /** *

Adds the specified ingress rules to a security group.

An inbound rule * permits instances to receive traffic from the specified IPv4 or IPv6 CIDR * address ranges, or from the instances associated with the specified destination * security groups.

You specify a protocol for each rule (for example, TCP). * For TCP and UDP, you must also specify the destination port or port range. For * ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 * to mean all types or all codes.

Rule changes are propagated to instances * within the security group as quickly as possible. However, a small delay might * occur.

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeSecurityGroupIngressOutcomeCallable AuthorizeSecurityGroupIngressCallable(const Model::AuthorizeSecurityGroupIngressRequest& request) const; /** *

Adds the specified ingress rules to a security group.

An inbound rule * permits instances to receive traffic from the specified IPv4 or IPv6 CIDR * address ranges, or from the instances associated with the specified destination * security groups.

You specify a protocol for each rule (for example, TCP). * For TCP and UDP, you must also specify the destination port or port range. For * ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 * to mean all types or all codes.

Rule changes are propagated to instances * within the security group as quickly as possible. However, a small delay might * occur.

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeSecurityGroupIngressAsync(const Model::AuthorizeSecurityGroupIngressRequest& request, const AuthorizeSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Bundles an Amazon instance store-backed Windows instance.

During * bundling, only the root device volume (C:\) is bundled. Data on other instance * store volumes is not preserved.

This action is not applicable for * Linux/Unix instances or Windows instances that are backed by Amazon EBS.

*

See Also:

AWS * API Reference

*/ virtual Model::BundleInstanceOutcome BundleInstance(const Model::BundleInstanceRequest& request) const; /** *

Bundles an Amazon instance store-backed Windows instance.

During * bundling, only the root device volume (C:\) is bundled. Data on other instance * store volumes is not preserved.

This action is not applicable for * Linux/Unix instances or Windows instances that are backed by Amazon EBS.

*

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BundleInstanceOutcomeCallable BundleInstanceCallable(const Model::BundleInstanceRequest& request) const; /** *

Bundles an Amazon instance store-backed Windows instance.

During * bundling, only the root device volume (C:\) is bundled. Data on other instance * store volumes is not preserved.

This action is not applicable for * Linux/Unix instances or Windows instances that are backed by Amazon EBS.

*

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BundleInstanceAsync(const Model::BundleInstanceRequest& request, const BundleInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels a bundling operation for an instance store-backed Windows * instance.

See Also:

AWS * API Reference

*/ virtual Model::CancelBundleTaskOutcome CancelBundleTask(const Model::CancelBundleTaskRequest& request) const; /** *

Cancels a bundling operation for an instance store-backed Windows * instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelBundleTaskOutcomeCallable CancelBundleTaskCallable(const Model::CancelBundleTaskRequest& request) const; /** *

Cancels a bundling operation for an instance store-backed Windows * instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelBundleTaskAsync(const Model::CancelBundleTaskRequest& request, const CancelBundleTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels the specified Capacity Reservation, releases the reserved capacity, * and changes the Capacity Reservation's state to cancelled.

*

Instances running in the reserved capacity continue running until you stop * them. Stopped instances that target the Capacity Reservation can no longer * launch. Modify these instances to either target a different Capacity * Reservation, launch On-Demand Instance capacity, or run in any open Capacity * Reservation that has matching attributes and sufficient capacity.

See * Also:

AWS * API Reference

*/ virtual Model::CancelCapacityReservationOutcome CancelCapacityReservation(const Model::CancelCapacityReservationRequest& request) const; /** *

Cancels the specified Capacity Reservation, releases the reserved capacity, * and changes the Capacity Reservation's state to cancelled.

*

Instances running in the reserved capacity continue running until you stop * them. Stopped instances that target the Capacity Reservation can no longer * launch. Modify these instances to either target a different Capacity * Reservation, launch On-Demand Instance capacity, or run in any open Capacity * Reservation that has matching attributes and sufficient capacity.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelCapacityReservationOutcomeCallable CancelCapacityReservationCallable(const Model::CancelCapacityReservationRequest& request) const; /** *

Cancels the specified Capacity Reservation, releases the reserved capacity, * and changes the Capacity Reservation's state to cancelled.

*

Instances running in the reserved capacity continue running until you stop * them. Stopped instances that target the Capacity Reservation can no longer * launch. Modify these instances to either target a different Capacity * Reservation, launch On-Demand Instance capacity, or run in any open Capacity * Reservation that has matching attributes and sufficient capacity.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelCapacityReservationAsync(const Model::CancelCapacityReservationRequest& request, const CancelCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels an active conversion task. The task can be the import of an instance * or volume. The action removes all artifacts of the conversion, including a * partially uploaded volume or instance. If the conversion is complete or is in * the process of transferring the final disk image, the command fails and returns * an exception.

For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

See Also:

AWS * API Reference

*/ virtual Model::CancelConversionTaskOutcome CancelConversionTask(const Model::CancelConversionTaskRequest& request) const; /** *

Cancels an active conversion task. The task can be the import of an instance * or volume. The action removes all artifacts of the conversion, including a * partially uploaded volume or instance. If the conversion is complete or is in * the process of transferring the final disk image, the command fails and returns * an exception.

For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelConversionTaskOutcomeCallable CancelConversionTaskCallable(const Model::CancelConversionTaskRequest& request) const; /** *

Cancels an active conversion task. The task can be the import of an instance * or volume. The action removes all artifacts of the conversion, including a * partially uploaded volume or instance. If the conversion is complete or is in * the process of transferring the final disk image, the command fails and returns * an exception.

For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelConversionTaskAsync(const Model::CancelConversionTaskRequest& request, const CancelConversionTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels an active export task. The request removes all artifacts of the * export, including any partially-created Amazon S3 objects. If the export task is * complete or is in the process of transferring the final disk image, the command * fails and returns an error.

See Also:

AWS * API Reference

*/ virtual Model::CancelExportTaskOutcome CancelExportTask(const Model::CancelExportTaskRequest& request) const; /** *

Cancels an active export task. The request removes all artifacts of the * export, including any partially-created Amazon S3 objects. If the export task is * complete or is in the process of transferring the final disk image, the command * fails and returns an error.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelExportTaskOutcomeCallable CancelExportTaskCallable(const Model::CancelExportTaskRequest& request) const; /** *

Cancels an active export task. The request removes all artifacts of the * export, including any partially-created Amazon S3 objects. If the export task is * complete or is in the process of transferring the final disk image, the command * fails and returns an error.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelExportTaskAsync(const Model::CancelExportTaskRequest& request, const CancelExportTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels an in-process import virtual machine or import snapshot * task.

See Also:

AWS * API Reference

*/ virtual Model::CancelImportTaskOutcome CancelImportTask(const Model::CancelImportTaskRequest& request) const; /** *

Cancels an in-process import virtual machine or import snapshot * task.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelImportTaskOutcomeCallable CancelImportTaskCallable(const Model::CancelImportTaskRequest& request) const; /** *

Cancels an in-process import virtual machine or import snapshot * task.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelImportTaskAsync(const Model::CancelImportTaskRequest& request, const CancelImportTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels the specified Reserved Instance listing in the Reserved Instance * Marketplace.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CancelReservedInstancesListingOutcome CancelReservedInstancesListing(const Model::CancelReservedInstancesListingRequest& request) const; /** *

Cancels the specified Reserved Instance listing in the Reserved Instance * Marketplace.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelReservedInstancesListingOutcomeCallable CancelReservedInstancesListingCallable(const Model::CancelReservedInstancesListingRequest& request) const; /** *

Cancels the specified Reserved Instance listing in the Reserved Instance * Marketplace.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelReservedInstancesListingAsync(const Model::CancelReservedInstancesListingRequest& request, const CancelReservedInstancesListingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels the specified Spot Fleet requests.

After you cancel a Spot * Fleet request, the Spot Fleet launches no new Spot Instances. You must specify * whether the Spot Fleet should also terminate its Spot Instances. If you * terminate the instances, the Spot Fleet request enters the * cancelled_terminating state. Otherwise, the Spot Fleet request * enters the cancelled_running state and the instances continue to * run until they are interrupted or you terminate them manually.

See * Also:

AWS * API Reference

*/ virtual Model::CancelSpotFleetRequestsOutcome CancelSpotFleetRequests(const Model::CancelSpotFleetRequestsRequest& request) const; /** *

Cancels the specified Spot Fleet requests.

After you cancel a Spot * Fleet request, the Spot Fleet launches no new Spot Instances. You must specify * whether the Spot Fleet should also terminate its Spot Instances. If you * terminate the instances, the Spot Fleet request enters the * cancelled_terminating state. Otherwise, the Spot Fleet request * enters the cancelled_running state and the instances continue to * run until they are interrupted or you terminate them manually.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelSpotFleetRequestsOutcomeCallable CancelSpotFleetRequestsCallable(const Model::CancelSpotFleetRequestsRequest& request) const; /** *

Cancels the specified Spot Fleet requests.

After you cancel a Spot * Fleet request, the Spot Fleet launches no new Spot Instances. You must specify * whether the Spot Fleet should also terminate its Spot Instances. If you * terminate the instances, the Spot Fleet request enters the * cancelled_terminating state. Otherwise, the Spot Fleet request * enters the cancelled_running state and the instances continue to * run until they are interrupted or you terminate them manually.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelSpotFleetRequestsAsync(const Model::CancelSpotFleetRequestsRequest& request, const CancelSpotFleetRequestsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels one or more Spot Instance requests.

Canceling a * Spot Instance request does not terminate running Spot Instances associated with * the request.

See Also:

AWS * API Reference

*/ virtual Model::CancelSpotInstanceRequestsOutcome CancelSpotInstanceRequests(const Model::CancelSpotInstanceRequestsRequest& request) const; /** *

Cancels one or more Spot Instance requests.

Canceling a * Spot Instance request does not terminate running Spot Instances associated with * the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelSpotInstanceRequestsOutcomeCallable CancelSpotInstanceRequestsCallable(const Model::CancelSpotInstanceRequestsRequest& request) const; /** *

Cancels one or more Spot Instance requests.

Canceling a * Spot Instance request does not terminate running Spot Instances associated with * the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelSpotInstanceRequestsAsync(const Model::CancelSpotInstanceRequestsRequest& request, const CancelSpotInstanceRequestsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Determines whether a product code is associated with an instance. This action * can only be used by the owner of the product code. It is useful when a product * code owner must verify whether another user's instance is eligible for * support.

See Also:

AWS * API Reference

*/ virtual Model::ConfirmProductInstanceOutcome ConfirmProductInstance(const Model::ConfirmProductInstanceRequest& request) const; /** *

Determines whether a product code is associated with an instance. This action * can only be used by the owner of the product code. It is useful when a product * code owner must verify whether another user's instance is eligible for * support.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ConfirmProductInstanceOutcomeCallable ConfirmProductInstanceCallable(const Model::ConfirmProductInstanceRequest& request) const; /** *

Determines whether a product code is associated with an instance. This action * can only be used by the owner of the product code. It is useful when a product * code owner must verify whether another user's instance is eligible for * support.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ConfirmProductInstanceAsync(const Model::ConfirmProductInstanceRequest& request, const ConfirmProductInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Copies the specified Amazon FPGA Image (AFI) to the current * Region.

See Also:

AWS * API Reference

*/ virtual Model::CopyFpgaImageOutcome CopyFpgaImage(const Model::CopyFpgaImageRequest& request) const; /** *

Copies the specified Amazon FPGA Image (AFI) to the current * Region.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CopyFpgaImageOutcomeCallable CopyFpgaImageCallable(const Model::CopyFpgaImageRequest& request) const; /** *

Copies the specified Amazon FPGA Image (AFI) to the current * Region.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CopyFpgaImageAsync(const Model::CopyFpgaImageRequest& request, const CopyFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Initiates the copy of an AMI from the specified source Region to the current * Region. You specify the destination Region by using its endpoint when making the * request.

Copies of encrypted backing snapshots for the AMI are encrypted. * Copies of unencrypted backing snapshots remain unencrypted, unless you set * Encrypted during the copy operation. You cannot create an * unencrypted copy of an encrypted backing snapshot.

For more information * about the prerequisites and limits when copying an AMI, see Copying * an AMI in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS API * Reference

*/ virtual Model::CopyImageOutcome CopyImage(const Model::CopyImageRequest& request) const; /** *

Initiates the copy of an AMI from the specified source Region to the current * Region. You specify the destination Region by using its endpoint when making the * request.

Copies of encrypted backing snapshots for the AMI are encrypted. * Copies of unencrypted backing snapshots remain unencrypted, unless you set * Encrypted during the copy operation. You cannot create an * unencrypted copy of an encrypted backing snapshot.

For more information * about the prerequisites and limits when copying an AMI, see Copying * an AMI in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CopyImageOutcomeCallable CopyImageCallable(const Model::CopyImageRequest& request) const; /** *

Initiates the copy of an AMI from the specified source Region to the current * Region. You specify the destination Region by using its endpoint when making the * request.

Copies of encrypted backing snapshots for the AMI are encrypted. * Copies of unencrypted backing snapshots remain unencrypted, unless you set * Encrypted during the copy operation. You cannot create an * unencrypted copy of an encrypted backing snapshot.

For more information * about the prerequisites and limits when copying an AMI, see Copying * an AMI in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CopyImageAsync(const Model::CopyImageRequest& request, const CopyImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. * You can copy the snapshot within the same Region or from one Region to another. * You can use the snapshot to create EBS volumes or Amazon Machine Images * (AMIs).

Copies of encrypted EBS snapshots remain encrypted. Copies of * unencrypted snapshots remain unencrypted, unless you enable encryption for the * snapshot copy operation. By default, encrypted snapshot copies use the default * AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can * specify a different CMK.

To copy an encrypted snapshot that has been * shared from another account, you must have permissions for the CMK used to * encrypt the snapshot.

Snapshots created by copying another snapshot have * an arbitrary volume ID that should not be used for any purpose.

For more * information, see Copying * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CopySnapshotOutcome CopySnapshot(const Model::CopySnapshotRequest& request) const; /** *

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. * You can copy the snapshot within the same Region or from one Region to another. * You can use the snapshot to create EBS volumes or Amazon Machine Images * (AMIs).

Copies of encrypted EBS snapshots remain encrypted. Copies of * unencrypted snapshots remain unencrypted, unless you enable encryption for the * snapshot copy operation. By default, encrypted snapshot copies use the default * AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can * specify a different CMK.

To copy an encrypted snapshot that has been * shared from another account, you must have permissions for the CMK used to * encrypt the snapshot.

Snapshots created by copying another snapshot have * an arbitrary volume ID that should not be used for any purpose.

For more * information, see Copying * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CopySnapshotOutcomeCallable CopySnapshotCallable(const Model::CopySnapshotRequest& request) const; /** *

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. * You can copy the snapshot within the same Region or from one Region to another. * You can use the snapshot to create EBS volumes or Amazon Machine Images * (AMIs).

Copies of encrypted EBS snapshots remain encrypted. Copies of * unencrypted snapshots remain unencrypted, unless you enable encryption for the * snapshot copy operation. By default, encrypted snapshot copies use the default * AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can * specify a different CMK.

To copy an encrypted snapshot that has been * shared from another account, you must have permissions for the CMK used to * encrypt the snapshot.

Snapshots created by copying another snapshot have * an arbitrary volume ID that should not be used for any purpose.

For more * information, see Copying * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CopySnapshotAsync(const Model::CopySnapshotRequest& request, const CopySnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new Capacity Reservation with the specified attributes.

*

Capacity Reservations enable you to reserve capacity for your Amazon EC2 * instances in a specific Availability Zone for any duration. This gives you the * flexibility to selectively add capacity reservations and still get the Regional * RI discounts for that usage. By creating Capacity Reservations, you ensure that * you always have access to Amazon EC2 capacity when you need it, for as long as * you need it. For more information, see Capacity * Reservations in the Amazon Elastic Compute Cloud User Guide.

*

Your request to create a Capacity Reservation could fail if Amazon EC2 does * not have sufficient capacity to fulfill the request. If your request fails due * to Amazon EC2 capacity constraints, either try again at a later time, try in a * different Availability Zone, or request a smaller capacity reservation. If your * application is flexible across instance types and sizes, try to create a * Capacity Reservation with different instance attributes.

Your request * could also fail if the requested quantity exceeds your On-Demand Instance limit * for the selected instance type. If your request fails due to limit constraints, * increase your On-Demand Instance limit for the required instance type and try * again. For more information about increasing your instance limits, see Amazon * EC2 Service Limits in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateCapacityReservationOutcome CreateCapacityReservation(const Model::CreateCapacityReservationRequest& request) const; /** *

Creates a new Capacity Reservation with the specified attributes.

*

Capacity Reservations enable you to reserve capacity for your Amazon EC2 * instances in a specific Availability Zone for any duration. This gives you the * flexibility to selectively add capacity reservations and still get the Regional * RI discounts for that usage. By creating Capacity Reservations, you ensure that * you always have access to Amazon EC2 capacity when you need it, for as long as * you need it. For more information, see Capacity * Reservations in the Amazon Elastic Compute Cloud User Guide.

*

Your request to create a Capacity Reservation could fail if Amazon EC2 does * not have sufficient capacity to fulfill the request. If your request fails due * to Amazon EC2 capacity constraints, either try again at a later time, try in a * different Availability Zone, or request a smaller capacity reservation. If your * application is flexible across instance types and sizes, try to create a * Capacity Reservation with different instance attributes.

Your request * could also fail if the requested quantity exceeds your On-Demand Instance limit * for the selected instance type. If your request fails due to limit constraints, * increase your On-Demand Instance limit for the required instance type and try * again. For more information about increasing your instance limits, see Amazon * EC2 Service Limits in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateCapacityReservationOutcomeCallable CreateCapacityReservationCallable(const Model::CreateCapacityReservationRequest& request) const; /** *

Creates a new Capacity Reservation with the specified attributes.

*

Capacity Reservations enable you to reserve capacity for your Amazon EC2 * instances in a specific Availability Zone for any duration. This gives you the * flexibility to selectively add capacity reservations and still get the Regional * RI discounts for that usage. By creating Capacity Reservations, you ensure that * you always have access to Amazon EC2 capacity when you need it, for as long as * you need it. For more information, see Capacity * Reservations in the Amazon Elastic Compute Cloud User Guide.

*

Your request to create a Capacity Reservation could fail if Amazon EC2 does * not have sufficient capacity to fulfill the request. If your request fails due * to Amazon EC2 capacity constraints, either try again at a later time, try in a * different Availability Zone, or request a smaller capacity reservation. If your * application is flexible across instance types and sizes, try to create a * Capacity Reservation with different instance attributes.

Your request * could also fail if the requested quantity exceeds your On-Demand Instance limit * for the selected instance type. If your request fails due to limit constraints, * increase your On-Demand Instance limit for the required instance type and try * again. For more information about increasing your instance limits, see Amazon * EC2 Service Limits in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateCapacityReservationAsync(const Model::CreateCapacityReservationRequest& request, const CreateCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a carrier gateway. For more information about carrier gateways, see * Carrier * gateways in the AWS Wavelength Developer Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateCarrierGatewayOutcome CreateCarrierGateway(const Model::CreateCarrierGatewayRequest& request) const; /** *

Creates a carrier gateway. For more information about carrier gateways, see * Carrier * gateways in the AWS Wavelength Developer Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateCarrierGatewayOutcomeCallable CreateCarrierGatewayCallable(const Model::CreateCarrierGatewayRequest& request) const; /** *

Creates a carrier gateway. For more information about carrier gateways, see * Carrier * gateways in the AWS Wavelength Developer Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateCarrierGatewayAsync(const Model::CreateCarrierGatewayRequest& request, const CreateCarrierGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Client VPN endpoint. A Client VPN endpoint is the resource you * create and configure to enable and manage client VPN sessions. It is the * destination endpoint at which all client VPN sessions are * terminated.

See Also:

AWS * API Reference

*/ virtual Model::CreateClientVpnEndpointOutcome CreateClientVpnEndpoint(const Model::CreateClientVpnEndpointRequest& request) const; /** *

Creates a Client VPN endpoint. A Client VPN endpoint is the resource you * create and configure to enable and manage client VPN sessions. It is the * destination endpoint at which all client VPN sessions are * terminated.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClientVpnEndpointOutcomeCallable CreateClientVpnEndpointCallable(const Model::CreateClientVpnEndpointRequest& request) const; /** *

Creates a Client VPN endpoint. A Client VPN endpoint is the resource you * create and configure to enable and manage client VPN sessions. It is the * destination endpoint at which all client VPN sessions are * terminated.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClientVpnEndpointAsync(const Model::CreateClientVpnEndpointRequest& request, const CreateClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint * has a route table that describes the available destination network routes. Each * route in the route table specifies the path for traffic to specific resources or * networks.

See Also:

AWS * API Reference

*/ virtual Model::CreateClientVpnRouteOutcome CreateClientVpnRoute(const Model::CreateClientVpnRouteRequest& request) const; /** *

Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint * has a route table that describes the available destination network routes. Each * route in the route table specifies the path for traffic to specific resources or * networks.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClientVpnRouteOutcomeCallable CreateClientVpnRouteCallable(const Model::CreateClientVpnRouteRequest& request) const; /** *

Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint * has a route table that describes the available destination network routes. Each * route in the route table specifies the path for traffic to specific resources or * networks.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClientVpnRouteAsync(const Model::CreateClientVpnRouteRequest& request, const CreateClientVpnRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Provides information to AWS about your VPN customer gateway device. The * customer gateway is the appliance at your end of the VPN connection. (The device * on the AWS side of the VPN connection is the virtual private gateway.) You must * provide the Internet-routable IP address of the customer gateway's external * interface. The IP address must be static and can be behind a device performing * network address translation (NAT).

For devices that use Border Gateway * Protocol (BGP), you can also provide the device's BGP Autonomous System Number * (ASN). You can use an existing ASN assigned to your network. If you don't have * an ASN already, you can use a private ASN (in the 64512 - 65534 range).

*

Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, * with the exception of 7224, which is reserved in the us-east-1 * Region, and 9059, which is reserved in the eu-west-1 Region.

*

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.

*

To create more than one customer gateway with the same VPN type, * IP address, and BGP ASN, specify a unique device name for each customer gateway. * Identical requests return information about the existing customer gateway and do * not create new customer gateways.

See Also:

AWS * API Reference

*/ virtual Model::CreateCustomerGatewayOutcome CreateCustomerGateway(const Model::CreateCustomerGatewayRequest& request) const; /** *

Provides information to AWS about your VPN customer gateway device. The * customer gateway is the appliance at your end of the VPN connection. (The device * on the AWS side of the VPN connection is the virtual private gateway.) You must * provide the Internet-routable IP address of the customer gateway's external * interface. The IP address must be static and can be behind a device performing * network address translation (NAT).

For devices that use Border Gateway * Protocol (BGP), you can also provide the device's BGP Autonomous System Number * (ASN). You can use an existing ASN assigned to your network. If you don't have * an ASN already, you can use a private ASN (in the 64512 - 65534 range).

*

Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, * with the exception of 7224, which is reserved in the us-east-1 * Region, and 9059, which is reserved in the eu-west-1 Region.

*

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.

*

To create more than one customer gateway with the same VPN type, * IP address, and BGP ASN, specify a unique device name for each customer gateway. * Identical requests return information about the existing customer gateway and do * not create new customer gateways.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateCustomerGatewayOutcomeCallable CreateCustomerGatewayCallable(const Model::CreateCustomerGatewayRequest& request) const; /** *

Provides information to AWS about your VPN customer gateway device. The * customer gateway is the appliance at your end of the VPN connection. (The device * on the AWS side of the VPN connection is the virtual private gateway.) You must * provide the Internet-routable IP address of the customer gateway's external * interface. The IP address must be static and can be behind a device performing * network address translation (NAT).

For devices that use Border Gateway * Protocol (BGP), you can also provide the device's BGP Autonomous System Number * (ASN). You can use an existing ASN assigned to your network. If you don't have * an ASN already, you can use a private ASN (in the 64512 - 65534 range).

*

Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, * with the exception of 7224, which is reserved in the us-east-1 * Region, and 9059, which is reserved in the eu-west-1 Region.

*

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.

*

To create more than one customer gateway with the same VPN type, * IP address, and BGP ASN, specify a unique device name for each customer gateway. * Identical requests return information about the existing customer gateway and do * not create new customer gateways.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateCustomerGatewayAsync(const Model::CreateCustomerGatewayRequest& request, const CreateCustomerGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a default subnet with a size /20 IPv4 CIDR block in the * specified Availability Zone in your default VPC. You can have only one default * subnet per Availability Zone. For more information, see Creating * a Default Subnet in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateDefaultSubnetOutcome CreateDefaultSubnet(const Model::CreateDefaultSubnetRequest& request) const; /** *

Creates a default subnet with a size /20 IPv4 CIDR block in the * specified Availability Zone in your default VPC. You can have only one default * subnet per Availability Zone. For more information, see Creating * a Default Subnet in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDefaultSubnetOutcomeCallable CreateDefaultSubnetCallable(const Model::CreateDefaultSubnetRequest& request) const; /** *

Creates a default subnet with a size /20 IPv4 CIDR block in the * specified Availability Zone in your default VPC. You can have only one default * subnet per Availability Zone. For more information, see Creating * a Default Subnet in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDefaultSubnetAsync(const Model::CreateDefaultSubnetRequest& request, const CreateDefaultSubnetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a default VPC with a size /16 IPv4 CIDR block and a * default subnet in each Availability Zone. For more information about the * components of a default VPC, see Default * VPC and Default Subnets in the Amazon Virtual Private Cloud User * Guide. You cannot specify the components of the default VPC yourself.

*

If you deleted your previous default VPC, you can create a default VPC. You * cannot have more than one default VPC per Region.

If your account * supports EC2-Classic, you cannot use this action to create a default VPC in a * Region that supports EC2-Classic. If you want a default VPC in a Region that * supports EC2-Classic, see "I really want a default VPC for my existing EC2 * account. Is that possible?" in the Default VPCs * FAQ.

See Also:

AWS * API Reference

*/ virtual Model::CreateDefaultVpcOutcome CreateDefaultVpc(const Model::CreateDefaultVpcRequest& request) const; /** *

Creates a default VPC with a size /16 IPv4 CIDR block and a * default subnet in each Availability Zone. For more information about the * components of a default VPC, see Default * VPC and Default Subnets in the Amazon Virtual Private Cloud User * Guide. You cannot specify the components of the default VPC yourself.

*

If you deleted your previous default VPC, you can create a default VPC. You * cannot have more than one default VPC per Region.

If your account * supports EC2-Classic, you cannot use this action to create a default VPC in a * Region that supports EC2-Classic. If you want a default VPC in a Region that * supports EC2-Classic, see "I really want a default VPC for my existing EC2 * account. Is that possible?" in the Default VPCs * FAQ.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDefaultVpcOutcomeCallable CreateDefaultVpcCallable(const Model::CreateDefaultVpcRequest& request) const; /** *

Creates a default VPC with a size /16 IPv4 CIDR block and a * default subnet in each Availability Zone. For more information about the * components of a default VPC, see Default * VPC and Default Subnets in the Amazon Virtual Private Cloud User * Guide. You cannot specify the components of the default VPC yourself.

*

If you deleted your previous default VPC, you can create a default VPC. You * cannot have more than one default VPC per Region.

If your account * supports EC2-Classic, you cannot use this action to create a default VPC in a * Region that supports EC2-Classic. If you want a default VPC in a Region that * supports EC2-Classic, see "I really want a default VPC for my existing EC2 * account. Is that possible?" in the Default VPCs * FAQ.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDefaultVpcAsync(const Model::CreateDefaultVpcRequest& request, const CreateDefaultVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a set of DHCP options for your VPC. After creating the set, you must * associate it with the VPC, causing all existing and new instances that you * launch in the VPC to use this set of DHCP options. The following are the * individual DHCP options you can specify. For more information about the options, * see RFC 2132.

  • *

    domain-name-servers - The IP addresses of up to four domain * name servers, or AmazonProvidedDNS. The default DHCP option set specifies * AmazonProvidedDNS. If specifying more than one domain name server, specify the * IP addresses in a single parameter, separated by commas. To have your instance * receive a custom DNS hostname as specified in domain-name, you must * set domain-name-servers to a custom DNS server.

  • * domain-name - If you're using AmazonProvidedDNS in * us-east-1, specify ec2.internal. If you're using * AmazonProvidedDNS in another Region, specify * region.compute.internal (for example, * ap-northeast-1.compute.internal). Otherwise, specify a domain name * (for example, ExampleCompany.com). This value is used to complete * unqualified DNS hostnames. Important: Some Linux operating systems accept * multiple domain names separated by spaces. However, Windows and other Linux * operating systems treat the value as a single domain, which results in * unexpected behavior. If your DHCP options set is associated with a VPC that has * instances with multiple operating systems, specify only one domain name.

    *
  • ntp-servers - The IP addresses of up to four Network * Time Protocol (NTP) servers.

  • * netbios-name-servers - The IP addresses of up to four NetBIOS name * servers.

  • netbios-node-type - The NetBIOS node * type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast * are not currently supported). For more information about these node types, see * RFC 2132.

*

Your VPC automatically starts out with a set of DHCP options that includes * only a DNS server that we provide (AmazonProvidedDNS). If you create a set of * options, and if your VPC has an internet gateway, make sure to set the * domain-name-servers option either to AmazonProvidedDNS * or to a domain name server of your choice. For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateDhcpOptionsOutcome CreateDhcpOptions(const Model::CreateDhcpOptionsRequest& request) const; /** *

Creates a set of DHCP options for your VPC. After creating the set, you must * associate it with the VPC, causing all existing and new instances that you * launch in the VPC to use this set of DHCP options. The following are the * individual DHCP options you can specify. For more information about the options, * see RFC 2132.

  • *

    domain-name-servers - The IP addresses of up to four domain * name servers, or AmazonProvidedDNS. The default DHCP option set specifies * AmazonProvidedDNS. If specifying more than one domain name server, specify the * IP addresses in a single parameter, separated by commas. To have your instance * receive a custom DNS hostname as specified in domain-name, you must * set domain-name-servers to a custom DNS server.

  • * domain-name - If you're using AmazonProvidedDNS in * us-east-1, specify ec2.internal. If you're using * AmazonProvidedDNS in another Region, specify * region.compute.internal (for example, * ap-northeast-1.compute.internal). Otherwise, specify a domain name * (for example, ExampleCompany.com). This value is used to complete * unqualified DNS hostnames. Important: Some Linux operating systems accept * multiple domain names separated by spaces. However, Windows and other Linux * operating systems treat the value as a single domain, which results in * unexpected behavior. If your DHCP options set is associated with a VPC that has * instances with multiple operating systems, specify only one domain name.

    *
  • ntp-servers - The IP addresses of up to four Network * Time Protocol (NTP) servers.

  • * netbios-name-servers - The IP addresses of up to four NetBIOS name * servers.

  • netbios-node-type - The NetBIOS node * type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast * are not currently supported). For more information about these node types, see * RFC 2132.

*

Your VPC automatically starts out with a set of DHCP options that includes * only a DNS server that we provide (AmazonProvidedDNS). If you create a set of * options, and if your VPC has an internet gateway, make sure to set the * domain-name-servers option either to AmazonProvidedDNS * or to a domain name server of your choice. For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDhcpOptionsOutcomeCallable CreateDhcpOptionsCallable(const Model::CreateDhcpOptionsRequest& request) const; /** *

Creates a set of DHCP options for your VPC. After creating the set, you must * associate it with the VPC, causing all existing and new instances that you * launch in the VPC to use this set of DHCP options. The following are the * individual DHCP options you can specify. For more information about the options, * see RFC 2132.

  • *

    domain-name-servers - The IP addresses of up to four domain * name servers, or AmazonProvidedDNS. The default DHCP option set specifies * AmazonProvidedDNS. If specifying more than one domain name server, specify the * IP addresses in a single parameter, separated by commas. To have your instance * receive a custom DNS hostname as specified in domain-name, you must * set domain-name-servers to a custom DNS server.

  • * domain-name - If you're using AmazonProvidedDNS in * us-east-1, specify ec2.internal. If you're using * AmazonProvidedDNS in another Region, specify * region.compute.internal (for example, * ap-northeast-1.compute.internal). Otherwise, specify a domain name * (for example, ExampleCompany.com). This value is used to complete * unqualified DNS hostnames. Important: Some Linux operating systems accept * multiple domain names separated by spaces. However, Windows and other Linux * operating systems treat the value as a single domain, which results in * unexpected behavior. If your DHCP options set is associated with a VPC that has * instances with multiple operating systems, specify only one domain name.

    *
  • ntp-servers - The IP addresses of up to four Network * Time Protocol (NTP) servers.

  • * netbios-name-servers - The IP addresses of up to four NetBIOS name * servers.

  • netbios-node-type - The NetBIOS node * type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast * are not currently supported). For more information about these node types, see * RFC 2132.

*

Your VPC automatically starts out with a set of DHCP options that includes * only a DNS server that we provide (AmazonProvidedDNS). If you create a set of * options, and if your VPC has an internet gateway, make sure to set the * domain-name-servers option either to AmazonProvidedDNS * or to a domain name server of your choice. For more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDhcpOptionsAsync(const Model::CreateDhcpOptionsRequest& request, const CreateDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[IPv6 only] Creates an egress-only internet gateway for your VPC. An * egress-only internet gateway is used to enable outbound communication over IPv6 * from instances in your VPC to the internet, and prevents hosts outside of your * VPC from initiating an IPv6 connection with your instance.

See * Also:

AWS * API Reference

*/ virtual Model::CreateEgressOnlyInternetGatewayOutcome CreateEgressOnlyInternetGateway(const Model::CreateEgressOnlyInternetGatewayRequest& request) const; /** *

[IPv6 only] Creates an egress-only internet gateway for your VPC. An * egress-only internet gateway is used to enable outbound communication over IPv6 * from instances in your VPC to the internet, and prevents hosts outside of your * VPC from initiating an IPv6 connection with your instance.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateEgressOnlyInternetGatewayOutcomeCallable CreateEgressOnlyInternetGatewayCallable(const Model::CreateEgressOnlyInternetGatewayRequest& request) const; /** *

[IPv6 only] Creates an egress-only internet gateway for your VPC. An * egress-only internet gateway is used to enable outbound communication over IPv6 * from instances in your VPC to the internet, and prevents hosts outside of your * VPC from initiating an IPv6 connection with your instance.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateEgressOnlyInternetGatewayAsync(const Model::CreateEgressOnlyInternetGatewayRequest& request, const CreateEgressOnlyInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Launches an EC2 Fleet.

You can create a single EC2 Fleet that includes * multiple launch specifications that vary by instance type, AMI, Availability * Zone, or subnet.

For more information, see Launching * an EC2 Fleet in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

*/ virtual Model::CreateFleetOutcome CreateFleet(const Model::CreateFleetRequest& request) const; /** *

Launches an EC2 Fleet.

You can create a single EC2 Fleet that includes * multiple launch specifications that vary by instance type, AMI, Availability * Zone, or subnet.

For more information, see Launching * an EC2 Fleet in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateFleetOutcomeCallable CreateFleetCallable(const Model::CreateFleetRequest& request) const; /** *

Launches an EC2 Fleet.

You can create a single EC2 Fleet that includes * multiple launch specifications that vary by instance type, AMI, Availability * Zone, or subnet.

For more information, see Launching * an EC2 Fleet in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateFleetAsync(const Model::CreateFleetRequest& request, const CreateFleetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates one or more flow logs to capture information about IP traffic for a * specific network interface, subnet, or VPC.

Flow log data for a * monitored network interface is recorded as flow log records, which are log * events consisting of fields that describe the traffic flow. For more * information, see Flow * Log Records in the Amazon Virtual Private Cloud User Guide.

*

When publishing to CloudWatch Logs, flow log records are published to a log * group, and each network interface has a unique log stream in the log group. When * publishing to Amazon S3, flow log records for all of the monitored network * interfaces are published to a single log file object that is stored in the * specified bucket.

For more information, see VPC Flow * Logs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateFlowLogsOutcome CreateFlowLogs(const Model::CreateFlowLogsRequest& request) const; /** *

Creates one or more flow logs to capture information about IP traffic for a * specific network interface, subnet, or VPC.

Flow log data for a * monitored network interface is recorded as flow log records, which are log * events consisting of fields that describe the traffic flow. For more * information, see Flow * Log Records in the Amazon Virtual Private Cloud User Guide.

*

When publishing to CloudWatch Logs, flow log records are published to a log * group, and each network interface has a unique log stream in the log group. When * publishing to Amazon S3, flow log records for all of the monitored network * interfaces are published to a single log file object that is stored in the * specified bucket.

For more information, see VPC Flow * Logs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateFlowLogsOutcomeCallable CreateFlowLogsCallable(const Model::CreateFlowLogsRequest& request) const; /** *

Creates one or more flow logs to capture information about IP traffic for a * specific network interface, subnet, or VPC.

Flow log data for a * monitored network interface is recorded as flow log records, which are log * events consisting of fields that describe the traffic flow. For more * information, see Flow * Log Records in the Amazon Virtual Private Cloud User Guide.

*

When publishing to CloudWatch Logs, flow log records are published to a log * group, and each network interface has a unique log stream in the log group. When * publishing to Amazon S3, flow log records for all of the monitored network * interfaces are published to a single log file object that is stored in the * specified bucket.

For more information, see VPC Flow * Logs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateFlowLogsAsync(const Model::CreateFlowLogsRequest& request, const CreateFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint * (DCP).

The create operation is asynchronous. To verify that the AFI is * ready for use, check the output logs.

An AFI contains the FPGA bitstream * that is ready to download to an FPGA. You can securely deploy an AFI on multiple * FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development * Kit.

See Also:

AWS * API Reference

*/ virtual Model::CreateFpgaImageOutcome CreateFpgaImage(const Model::CreateFpgaImageRequest& request) const; /** *

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint * (DCP).

The create operation is asynchronous. To verify that the AFI is * ready for use, check the output logs.

An AFI contains the FPGA bitstream * that is ready to download to an FPGA. You can securely deploy an AFI on multiple * FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development * Kit.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateFpgaImageOutcomeCallable CreateFpgaImageCallable(const Model::CreateFpgaImageRequest& request) const; /** *

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint * (DCP).

The create operation is asynchronous. To verify that the AFI is * ready for use, check the output logs.

An AFI contains the FPGA bitstream * that is ready to download to an FPGA. You can securely deploy an AFI on multiple * FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development * Kit.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateFpgaImageAsync(const Model::CreateFpgaImageRequest& request, const CreateFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is * either running or stopped.

If you customized your instance with instance * store volumes or EBS volumes in addition to the root device volume, the new AMI * contains block device mapping information for those volumes. When you launch an * instance from this new AMI, the instance automatically launches with those * additional volumes.

For more information, see Creating * Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

*/ virtual Model::CreateImageOutcome CreateImage(const Model::CreateImageRequest& request) const; /** *

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is * either running or stopped.

If you customized your instance with instance * store volumes or EBS volumes in addition to the root device volume, the new AMI * contains block device mapping information for those volumes. When you launch an * instance from this new AMI, the instance automatically launches with those * additional volumes.

For more information, see Creating * Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateImageOutcomeCallable CreateImageCallable(const Model::CreateImageRequest& request) const; /** *

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is * either running or stopped.

If you customized your instance with instance * store volumes or EBS volumes in addition to the root device volume, the new AMI * contains block device mapping information for those volumes. When you launch an * instance from this new AMI, the instance automatically launches with those * additional volumes.

For more information, see Creating * Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateImageAsync(const Model::CreateImageRequest& request, const CreateImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Exports a running or stopped instance to an Amazon S3 bucket.

For * information about the supported operating systems, image formats, and known * limitations for the types of instances you can export, see Exporting * an Instance as a VM Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateInstanceExportTaskOutcome CreateInstanceExportTask(const Model::CreateInstanceExportTaskRequest& request) const; /** *

Exports a running or stopped instance to an Amazon S3 bucket.

For * information about the supported operating systems, image formats, and known * limitations for the types of instances you can export, see Exporting * an Instance as a VM Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateInstanceExportTaskOutcomeCallable CreateInstanceExportTaskCallable(const Model::CreateInstanceExportTaskRequest& request) const; /** *

Exports a running or stopped instance to an Amazon S3 bucket.

For * information about the supported operating systems, image formats, and known * limitations for the types of instances you can export, see Exporting * an Instance as a VM Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateInstanceExportTaskAsync(const Model::CreateInstanceExportTaskRequest& request, const CreateInstanceExportTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an internet gateway for use with a VPC. After creating the internet * gateway, you attach it to a VPC using AttachInternetGateway.

For * more information about your VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateInternetGatewayOutcome CreateInternetGateway(const Model::CreateInternetGatewayRequest& request) const; /** *

Creates an internet gateway for use with a VPC. After creating the internet * gateway, you attach it to a VPC using AttachInternetGateway.

For * more information about your VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateInternetGatewayOutcomeCallable CreateInternetGatewayCallable(const Model::CreateInternetGatewayRequest& request) const; /** *

Creates an internet gateway for use with a VPC. After creating the internet * gateway, you attach it to a VPC using AttachInternetGateway.

For * more information about your VPC and internet gateway, see the Amazon Virtual Private * Cloud User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateInternetGatewayAsync(const Model::CreateInternetGatewayRequest& request, const CreateInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores * the public key and displays the private key for you to save to a file. The * private key is returned as an unencrypted PEM encoded PKCS#1 private key. If a * key with the specified name already exists, Amazon EC2 returns an error.

*

You can have up to five thousand key pairs per Region.

The key pair * returned to you is available only in the Region in which you create it. If you * prefer, you can create your own key pair using a third-party tool and upload it * to any Region using ImportKeyPair.

For more information, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateKeyPairOutcome CreateKeyPair(const Model::CreateKeyPairRequest& request) const; /** *

Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores * the public key and displays the private key for you to save to a file. The * private key is returned as an unencrypted PEM encoded PKCS#1 private key. If a * key with the specified name already exists, Amazon EC2 returns an error.

*

You can have up to five thousand key pairs per Region.

The key pair * returned to you is available only in the Region in which you create it. If you * prefer, you can create your own key pair using a third-party tool and upload it * to any Region using ImportKeyPair.

For more information, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateKeyPairOutcomeCallable CreateKeyPairCallable(const Model::CreateKeyPairRequest& request) const; /** *

Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores * the public key and displays the private key for you to save to a file. The * private key is returned as an unencrypted PEM encoded PKCS#1 private key. If a * key with the specified name already exists, Amazon EC2 returns an error.

*

You can have up to five thousand key pairs per Region.

The key pair * returned to you is available only in the Region in which you create it. If you * prefer, you can create your own key pair using a third-party tool and upload it * to any Region using ImportKeyPair.

For more information, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateKeyPairAsync(const Model::CreateKeyPairRequest& request, const CreateKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a launch template. A launch template contains the parameters to * launch an instance. When you launch an instance using RunInstances, you * can specify a launch template instead of providing the launch parameters in the * request. For more information, see Launching * an instance from a launch templatein the Amazon Elastic Compute Cloud * User Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateLaunchTemplateOutcome CreateLaunchTemplate(const Model::CreateLaunchTemplateRequest& request) const; /** *

Creates a launch template. A launch template contains the parameters to * launch an instance. When you launch an instance using RunInstances, you * can specify a launch template instead of providing the launch parameters in the * request. For more information, see Launching * an instance from a launch templatein the Amazon Elastic Compute Cloud * User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateLaunchTemplateOutcomeCallable CreateLaunchTemplateCallable(const Model::CreateLaunchTemplateRequest& request) const; /** *

Creates a launch template. A launch template contains the parameters to * launch an instance. When you launch an instance using RunInstances, you * can specify a launch template instead of providing the launch parameters in the * request. For more information, see Launching * an instance from a launch templatein the Amazon Elastic Compute Cloud * User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateLaunchTemplateAsync(const Model::CreateLaunchTemplateRequest& request, const CreateLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new version for a launch template. You can specify an existing * version of launch template from which to base the new version.

Launch * template versions are numbered in the order in which they are created. You * cannot specify, change, or replace the numbering of launch template * versions.

For more information, see Managing * launch template versionsin the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateLaunchTemplateVersionOutcome CreateLaunchTemplateVersion(const Model::CreateLaunchTemplateVersionRequest& request) const; /** *

Creates a new version for a launch template. You can specify an existing * version of launch template from which to base the new version.

Launch * template versions are numbered in the order in which they are created. You * cannot specify, change, or replace the numbering of launch template * versions.

For more information, see Managing * launch template versionsin the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateLaunchTemplateVersionOutcomeCallable CreateLaunchTemplateVersionCallable(const Model::CreateLaunchTemplateVersionRequest& request) const; /** *

Creates a new version for a launch template. You can specify an existing * version of launch template from which to base the new version.

Launch * template versions are numbered in the order in which they are created. You * cannot specify, change, or replace the numbering of launch template * versions.

For more information, see Managing * launch template versionsin the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateLaunchTemplateVersionAsync(const Model::CreateLaunchTemplateVersionRequest& request, const CreateLaunchTemplateVersionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a static route for the specified local gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::CreateLocalGatewayRouteOutcome CreateLocalGatewayRoute(const Model::CreateLocalGatewayRouteRequest& request) const; /** *

Creates a static route for the specified local gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateLocalGatewayRouteOutcomeCallable CreateLocalGatewayRouteCallable(const Model::CreateLocalGatewayRouteRequest& request) const; /** *

Creates a static route for the specified local gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateLocalGatewayRouteAsync(const Model::CreateLocalGatewayRouteRequest& request, const CreateLocalGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates the specified VPC with the specified local gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::CreateLocalGatewayRouteTableVpcAssociationOutcome CreateLocalGatewayRouteTableVpcAssociation(const Model::CreateLocalGatewayRouteTableVpcAssociationRequest& request) const; /** *

Associates the specified VPC with the specified local gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateLocalGatewayRouteTableVpcAssociationOutcomeCallable CreateLocalGatewayRouteTableVpcAssociationCallable(const Model::CreateLocalGatewayRouteTableVpcAssociationRequest& request) const; /** *

Associates the specified VPC with the specified local gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateLocalGatewayRouteTableVpcAssociationAsync(const Model::CreateLocalGatewayRouteTableVpcAssociationRequest& request, const CreateLocalGatewayRouteTableVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a managed prefix list. You can specify one or more entries for the * prefix list. Each entry consists of a CIDR block and an optional * description.

You must specify the maximum number of entries for the * prefix list. The maximum number of entries cannot be changed * later.

See Also:

AWS * API Reference

*/ virtual Model::CreateManagedPrefixListOutcome CreateManagedPrefixList(const Model::CreateManagedPrefixListRequest& request) const; /** *

Creates a managed prefix list. You can specify one or more entries for the * prefix list. Each entry consists of a CIDR block and an optional * description.

You must specify the maximum number of entries for the * prefix list. The maximum number of entries cannot be changed * later.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateManagedPrefixListOutcomeCallable CreateManagedPrefixListCallable(const Model::CreateManagedPrefixListRequest& request) const; /** *

Creates a managed prefix list. You can specify one or more entries for the * prefix list. Each entry consists of a CIDR block and an optional * description.

You must specify the maximum number of entries for the * prefix list. The maximum number of entries cannot be changed * later.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateManagedPrefixListAsync(const Model::CreateManagedPrefixListRequest& request, const CreateManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a NAT gateway in the specified public subnet. This action creates a * network interface in the specified subnet with a private IP address from the IP * address range of the subnet. Internet-bound traffic from a private subnet can be * routed to the NAT gateway, therefore enabling instances in the private subnet to * connect to the internet. For more information, see NAT * Gateways in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateNatGatewayOutcome CreateNatGateway(const Model::CreateNatGatewayRequest& request) const; /** *

Creates a NAT gateway in the specified public subnet. This action creates a * network interface in the specified subnet with a private IP address from the IP * address range of the subnet. Internet-bound traffic from a private subnet can be * routed to the NAT gateway, therefore enabling instances in the private subnet to * connect to the internet. For more information, see NAT * Gateways in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateNatGatewayOutcomeCallable CreateNatGatewayCallable(const Model::CreateNatGatewayRequest& request) const; /** *

Creates a NAT gateway in the specified public subnet. This action creates a * network interface in the specified subnet with a private IP address from the IP * address range of the subnet. Internet-bound traffic from a private subnet can be * routed to the NAT gateway, therefore enabling instances in the private subnet to * connect to the internet. For more information, see NAT * Gateways in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateNatGatewayAsync(const Model::CreateNatGatewayRequest& request, const CreateNatGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a network ACL in a VPC. Network ACLs provide an optional layer of * security (in addition to security groups) for the instances in your VPC.

*

For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateNetworkAclOutcome CreateNetworkAcl(const Model::CreateNetworkAclRequest& request) const; /** *

Creates a network ACL in a VPC. Network ACLs provide an optional layer of * security (in addition to security groups) for the instances in your VPC.

*

For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateNetworkAclOutcomeCallable CreateNetworkAclCallable(const Model::CreateNetworkAclRequest& request) const; /** *

Creates a network ACL in a VPC. Network ACLs provide an optional layer of * security (in addition to security groups) for the instances in your VPC.

*

For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateNetworkAclAsync(const Model::CreateNetworkAclRequest& request, const CreateNetworkAclResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an entry (a rule) in a network ACL with the specified rule number. * Each network ACL has a set of numbered ingress rules and a separate set of * numbered egress rules. When determining whether a packet should be allowed in or * out of a subnet associated with the ACL, we process the entries in the ACL * according to the rule numbers, in ascending order. Each network ACL has a set of * ingress rules and a separate set of egress rules.

We recommend that you * leave room between the rule numbers (for example, 100, 110, 120, ...), and not * number them one right after the other (for example, 101, 102, 103, ...). This * makes it easier to add a rule between existing ones without having to renumber * the rules.

After you add an entry, you can't modify it; you must either * replace it, or create an entry and delete the old one.

For more * information about network ACLs, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateNetworkAclEntryOutcome CreateNetworkAclEntry(const Model::CreateNetworkAclEntryRequest& request) const; /** *

Creates an entry (a rule) in a network ACL with the specified rule number. * Each network ACL has a set of numbered ingress rules and a separate set of * numbered egress rules. When determining whether a packet should be allowed in or * out of a subnet associated with the ACL, we process the entries in the ACL * according to the rule numbers, in ascending order. Each network ACL has a set of * ingress rules and a separate set of egress rules.

We recommend that you * leave room between the rule numbers (for example, 100, 110, 120, ...), and not * number them one right after the other (for example, 101, 102, 103, ...). This * makes it easier to add a rule between existing ones without having to renumber * the rules.

After you add an entry, you can't modify it; you must either * replace it, or create an entry and delete the old one.

For more * information about network ACLs, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateNetworkAclEntryOutcomeCallable CreateNetworkAclEntryCallable(const Model::CreateNetworkAclEntryRequest& request) const; /** *

Creates an entry (a rule) in a network ACL with the specified rule number. * Each network ACL has a set of numbered ingress rules and a separate set of * numbered egress rules. When determining whether a packet should be allowed in or * out of a subnet associated with the ACL, we process the entries in the ACL * according to the rule numbers, in ascending order. Each network ACL has a set of * ingress rules and a separate set of egress rules.

We recommend that you * leave room between the rule numbers (for example, 100, 110, 120, ...), and not * number them one right after the other (for example, 101, 102, 103, ...). This * makes it easier to add a rule between existing ones without having to renumber * the rules.

After you add an entry, you can't modify it; you must either * replace it, or create an entry and delete the old one.

For more * information about network ACLs, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateNetworkAclEntryAsync(const Model::CreateNetworkAclEntryRequest& request, const CreateNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a network interface in the specified subnet.

For more * information about network interfaces, see Elastic * Network Interfaces in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateNetworkInterfaceOutcome CreateNetworkInterface(const Model::CreateNetworkInterfaceRequest& request) const; /** *

Creates a network interface in the specified subnet.

For more * information about network interfaces, see Elastic * Network Interfaces in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateNetworkInterfaceOutcomeCallable CreateNetworkInterfaceCallable(const Model::CreateNetworkInterfaceRequest& request) const; /** *

Creates a network interface in the specified subnet.

For more * information about network interfaces, see Elastic * Network Interfaces in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateNetworkInterfaceAsync(const Model::CreateNetworkInterfaceRequest& request, const CreateNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Grants an AWS-authorized account permission to attach the specified network * interface to an instance in their account.

You can grant permission to a * single AWS account only, and only one account at a time.

See * Also:

AWS * API Reference

*/ virtual Model::CreateNetworkInterfacePermissionOutcome CreateNetworkInterfacePermission(const Model::CreateNetworkInterfacePermissionRequest& request) const; /** *

Grants an AWS-authorized account permission to attach the specified network * interface to an instance in their account.

You can grant permission to a * single AWS account only, and only one account at a time.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateNetworkInterfacePermissionOutcomeCallable CreateNetworkInterfacePermissionCallable(const Model::CreateNetworkInterfacePermissionRequest& request) const; /** *

Grants an AWS-authorized account permission to attach the specified network * interface to an instance in their account.

You can grant permission to a * single AWS account only, and only one account at a time.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateNetworkInterfacePermissionAsync(const Model::CreateNetworkInterfacePermissionRequest& request, const CreateNetworkInterfacePermissionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a placement group in which to launch instances. The strategy of the * placement group determines how the instances are organized within the group. *

A cluster placement group is a logical grouping of * instances within a single Availability Zone that benefit from low network * latency, high network throughput. A spread placement group places * instances on distinct hardware. A partition placement group places * groups of instances in different partitions, where instances in one partition do * not share the same hardware with instances in another partition.

For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreatePlacementGroupOutcome CreatePlacementGroup(const Model::CreatePlacementGroupRequest& request) const; /** *

Creates a placement group in which to launch instances. The strategy of the * placement group determines how the instances are organized within the group. *

A cluster placement group is a logical grouping of * instances within a single Availability Zone that benefit from low network * latency, high network throughput. A spread placement group places * instances on distinct hardware. A partition placement group places * groups of instances in different partitions, where instances in one partition do * not share the same hardware with instances in another partition.

For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreatePlacementGroupOutcomeCallable CreatePlacementGroupCallable(const Model::CreatePlacementGroupRequest& request) const; /** *

Creates a placement group in which to launch instances. The strategy of the * placement group determines how the instances are organized within the group. *

A cluster placement group is a logical grouping of * instances within a single Availability Zone that benefit from low network * latency, high network throughput. A spread placement group places * instances on distinct hardware. A partition placement group places * groups of instances in different partitions, where instances in one partition do * not share the same hardware with instances in another partition.

For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreatePlacementGroupAsync(const Model::CreatePlacementGroupRequest& request, const CreatePlacementGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in * the Reserved Instance Marketplace. You can submit one Standard Reserved Instance * listing at a time. To get a list of your Standard Reserved Instances, you can * use the DescribeReservedInstances operation.

Only Standard * Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible * Reserved Instances cannot be sold.

The Reserved Instance * Marketplace matches sellers who want to resell Standard Reserved Instance * capacity that they no longer need with buyers who want to purchase additional * capacity. Reserved Instances bought and sold through the Reserved Instance * Marketplace work like any other Reserved Instances.

To sell your Standard * Reserved Instances, you must first register as a seller in the Reserved Instance * Marketplace. After completing the registration process, you can create a * Reserved Instance Marketplace listing of some or all of your Standard Reserved * Instances, and specify the upfront price to receive for them. Your Standard * Reserved Instance listings then become available for purchase. To view the * details of your Standard Reserved Instance listing, you can use the * DescribeReservedInstancesListings operation.

For more information, * see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateReservedInstancesListingOutcome CreateReservedInstancesListing(const Model::CreateReservedInstancesListingRequest& request) const; /** *

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in * the Reserved Instance Marketplace. You can submit one Standard Reserved Instance * listing at a time. To get a list of your Standard Reserved Instances, you can * use the DescribeReservedInstances operation.

Only Standard * Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible * Reserved Instances cannot be sold.

The Reserved Instance * Marketplace matches sellers who want to resell Standard Reserved Instance * capacity that they no longer need with buyers who want to purchase additional * capacity. Reserved Instances bought and sold through the Reserved Instance * Marketplace work like any other Reserved Instances.

To sell your Standard * Reserved Instances, you must first register as a seller in the Reserved Instance * Marketplace. After completing the registration process, you can create a * Reserved Instance Marketplace listing of some or all of your Standard Reserved * Instances, and specify the upfront price to receive for them. Your Standard * Reserved Instance listings then become available for purchase. To view the * details of your Standard Reserved Instance listing, you can use the * DescribeReservedInstancesListings operation.

For more information, * see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateReservedInstancesListingOutcomeCallable CreateReservedInstancesListingCallable(const Model::CreateReservedInstancesListingRequest& request) const; /** *

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in * the Reserved Instance Marketplace. You can submit one Standard Reserved Instance * listing at a time. To get a list of your Standard Reserved Instances, you can * use the DescribeReservedInstances operation.

Only Standard * Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible * Reserved Instances cannot be sold.

The Reserved Instance * Marketplace matches sellers who want to resell Standard Reserved Instance * capacity that they no longer need with buyers who want to purchase additional * capacity. Reserved Instances bought and sold through the Reserved Instance * Marketplace work like any other Reserved Instances.

To sell your Standard * Reserved Instances, you must first register as a seller in the Reserved Instance * Marketplace. After completing the registration process, you can create a * Reserved Instance Marketplace listing of some or all of your Standard Reserved * Instances, and specify the upfront price to receive for them. Your Standard * Reserved Instance listings then become available for purchase. To view the * details of your Standard Reserved Instance listing, you can use the * DescribeReservedInstancesListings operation.

For more information, * see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateReservedInstancesListingAsync(const Model::CreateReservedInstancesListingRequest& request, const CreateReservedInstancesListingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a route in a route table within a VPC.

You must specify one of * the following targets: internet gateway or virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

When determining how to route * traffic, we use the route with the most specific match. For example, traffic is * destined for the IPv4 address 192.0.2.3, and the route table * includes the following two IPv4 routes:

  • * 192.0.2.0/24 (goes to some target A)

  • * 192.0.2.0/28 (goes to some target B)

Both routes * apply to the traffic destined for 192.0.2.3. However, the second * route in the list covers a smaller number of IP addresses and is therefore more * specific, so we use that route to determine where to target the traffic.

*

For more information about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS API * Reference

*/ virtual Model::CreateRouteOutcome CreateRoute(const Model::CreateRouteRequest& request) const; /** *

Creates a route in a route table within a VPC.

You must specify one of * the following targets: internet gateway or virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

When determining how to route * traffic, we use the route with the most specific match. For example, traffic is * destined for the IPv4 address 192.0.2.3, and the route table * includes the following two IPv4 routes:

  • * 192.0.2.0/24 (goes to some target A)

  • * 192.0.2.0/28 (goes to some target B)

Both routes * apply to the traffic destined for 192.0.2.3. However, the second * route in the list covers a smaller number of IP addresses and is therefore more * specific, so we use that route to determine where to target the traffic.

*

For more information about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateRouteOutcomeCallable CreateRouteCallable(const Model::CreateRouteRequest& request) const; /** *

Creates a route in a route table within a VPC.

You must specify one of * the following targets: internet gateway or virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

When determining how to route * traffic, we use the route with the most specific match. For example, traffic is * destined for the IPv4 address 192.0.2.3, and the route table * includes the following two IPv4 routes:

  • * 192.0.2.0/24 (goes to some target A)

  • * 192.0.2.0/28 (goes to some target B)

Both routes * apply to the traffic destined for 192.0.2.3. However, the second * route in the list covers a smaller number of IP addresses and is therefore more * specific, so we use that route to determine where to target the traffic.

*

For more information about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateRouteAsync(const Model::CreateRouteRequest& request, const CreateRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a route table for the specified VPC. After you create a route table, * you can add routes and associate the table with a subnet.

For more * information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::CreateRouteTableOutcome CreateRouteTable(const Model::CreateRouteTableRequest& request) const; /** *

Creates a route table for the specified VPC. After you create a route table, * you can add routes and associate the table with a subnet.

For more * information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateRouteTableOutcomeCallable CreateRouteTableCallable(const Model::CreateRouteTableRequest& request) const; /** *

Creates a route table for the specified VPC. After you create a route table, * you can add routes and associate the table with a subnet.

For more * information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateRouteTableAsync(const Model::CreateRouteTableRequest& request, const CreateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a security group.

A security group acts as a virtual firewall * for your instance to control inbound and outbound traffic. For more information, * see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

When you create a security group, you specify a friendly name * of your choice. You can have a security group for use in EC2-Classic with the * same name as a security group for use in a VPC. However, you can't have two * security groups for use in EC2-Classic with the same name or two security groups * for use in a VPC with the same name.

You have a default security group * for use in EC2-Classic and a default security group for use in your VPC. If you * don't specify a security group when you launch an instance, the instance is * launched into the appropriate default security group. A default security group * includes a default rule that grants instances unrestricted network access to * each other.

You can add or remove rules from your security groups using * AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, * RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

*

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

*/ virtual Model::CreateSecurityGroupOutcome CreateSecurityGroup(const Model::CreateSecurityGroupRequest& request) const; /** *

Creates a security group.

A security group acts as a virtual firewall * for your instance to control inbound and outbound traffic. For more information, * see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

When you create a security group, you specify a friendly name * of your choice. You can have a security group for use in EC2-Classic with the * same name as a security group for use in a VPC. However, you can't have two * security groups for use in EC2-Classic with the same name or two security groups * for use in a VPC with the same name.

You have a default security group * for use in EC2-Classic and a default security group for use in your VPC. If you * don't specify a security group when you launch an instance, the instance is * launched into the appropriate default security group. A default security group * includes a default rule that grants instances unrestricted network access to * each other.

You can add or remove rules from your security groups using * AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, * RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

*

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSecurityGroupOutcomeCallable CreateSecurityGroupCallable(const Model::CreateSecurityGroupRequest& request) const; /** *

Creates a security group.

A security group acts as a virtual firewall * for your instance to control inbound and outbound traffic. For more information, * see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

When you create a security group, you specify a friendly name * of your choice. You can have a security group for use in EC2-Classic with the * same name as a security group for use in a VPC. However, you can't have two * security groups for use in EC2-Classic with the same name or two security groups * for use in a VPC with the same name.

You have a default security group * for use in EC2-Classic and a default security group for use in your VPC. If you * don't specify a security group when you launch an instance, the instance is * launched into the appropriate default security group. A default security group * includes a default rule that grants instances unrestricted network access to * each other.

You can add or remove rules from your security groups using * AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, * RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

*

For more information about VPC security group limits, see Amazon * VPC Limits.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSecurityGroupAsync(const Model::CreateSecurityGroupRequest& request, const CreateSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use * snapshots for backups, to make copies of EBS volumes, and to save data before * shutting down an instance.

When a snapshot is created, any AWS * Marketplace product codes that are associated with the source volume are * propagated to the snapshot.

You can take a snapshot of an attached volume * that is in use. However, snapshots only capture data that has been written to * your EBS volume at the time the snapshot command is issued; this may exclude any * data that has been cached by any applications or the operating system. If you * can pause any file systems on the volume long enough to take a snapshot, your * snapshot should be complete. However, if you cannot pause all file writes to the * volume, you should unmount the volume from within the instance, issue the * snapshot command, and then remount the volume to ensure a consistent and * complete snapshot. You may remount and use your volume while the snapshot status * is pending.

To create a snapshot for EBS volumes that serve * as root devices, you should stop the instance before taking the snapshot.

*

Snapshots that are taken from encrypted volumes are automatically encrypted. * Volumes that are created from encrypted snapshots are also automatically * encrypted. Your encrypted volumes and any associated snapshots always remain * protected.

You can tag your snapshots during creation. For more * information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Amazon * Elastic Block Store and Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateSnapshotOutcome CreateSnapshot(const Model::CreateSnapshotRequest& request) const; /** *

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use * snapshots for backups, to make copies of EBS volumes, and to save data before * shutting down an instance.

When a snapshot is created, any AWS * Marketplace product codes that are associated with the source volume are * propagated to the snapshot.

You can take a snapshot of an attached volume * that is in use. However, snapshots only capture data that has been written to * your EBS volume at the time the snapshot command is issued; this may exclude any * data that has been cached by any applications or the operating system. If you * can pause any file systems on the volume long enough to take a snapshot, your * snapshot should be complete. However, if you cannot pause all file writes to the * volume, you should unmount the volume from within the instance, issue the * snapshot command, and then remount the volume to ensure a consistent and * complete snapshot. You may remount and use your volume while the snapshot status * is pending.

To create a snapshot for EBS volumes that serve * as root devices, you should stop the instance before taking the snapshot.

*

Snapshots that are taken from encrypted volumes are automatically encrypted. * Volumes that are created from encrypted snapshots are also automatically * encrypted. Your encrypted volumes and any associated snapshots always remain * protected.

You can tag your snapshots during creation. For more * information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Amazon * Elastic Block Store and Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSnapshotOutcomeCallable CreateSnapshotCallable(const Model::CreateSnapshotRequest& request) const; /** *

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use * snapshots for backups, to make copies of EBS volumes, and to save data before * shutting down an instance.

When a snapshot is created, any AWS * Marketplace product codes that are associated with the source volume are * propagated to the snapshot.

You can take a snapshot of an attached volume * that is in use. However, snapshots only capture data that has been written to * your EBS volume at the time the snapshot command is issued; this may exclude any * data that has been cached by any applications or the operating system. If you * can pause any file systems on the volume long enough to take a snapshot, your * snapshot should be complete. However, if you cannot pause all file writes to the * volume, you should unmount the volume from within the instance, issue the * snapshot command, and then remount the volume to ensure a consistent and * complete snapshot. You may remount and use your volume while the snapshot status * is pending.

To create a snapshot for EBS volumes that serve * as root devices, you should stop the instance before taking the snapshot.

*

Snapshots that are taken from encrypted volumes are automatically encrypted. * Volumes that are created from encrypted snapshots are also automatically * encrypted. Your encrypted volumes and any associated snapshots always remain * protected.

You can tag your snapshots during creation. For more * information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Amazon * Elastic Block Store and Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSnapshotAsync(const Model::CreateSnapshotRequest& request, const CreateSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates crash-consistent snapshots of multiple EBS volumes and stores the * data in S3. Volumes are chosen by specifying an instance. Any attached volumes * will produce one snapshot each that is crash-consistent across the instance. * Boot volumes can be excluded by changing the parameters.

See * Also:

AWS * API Reference

*/ virtual Model::CreateSnapshotsOutcome CreateSnapshots(const Model::CreateSnapshotsRequest& request) const; /** *

Creates crash-consistent snapshots of multiple EBS volumes and stores the * data in S3. Volumes are chosen by specifying an instance. Any attached volumes * will produce one snapshot each that is crash-consistent across the instance. * Boot volumes can be excluded by changing the parameters.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSnapshotsOutcomeCallable CreateSnapshotsCallable(const Model::CreateSnapshotsRequest& request) const; /** *

Creates crash-consistent snapshots of multiple EBS volumes and stores the * data in S3. Volumes are chosen by specifying an instance. Any attached volumes * will produce one snapshot each that is crash-consistent across the instance. * Boot volumes can be excluded by changing the parameters.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSnapshotsAsync(const Model::CreateSnapshotsRequest& request, const CreateSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a data feed for Spot Instances, enabling you to view Spot Instance * usage logs. You can create one data feed per AWS account. For more information, * see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

*/ virtual Model::CreateSpotDatafeedSubscriptionOutcome CreateSpotDatafeedSubscription(const Model::CreateSpotDatafeedSubscriptionRequest& request) const; /** *

Creates a data feed for Spot Instances, enabling you to view Spot Instance * usage logs. You can create one data feed per AWS account. For more information, * see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSpotDatafeedSubscriptionOutcomeCallable CreateSpotDatafeedSubscriptionCallable(const Model::CreateSpotDatafeedSubscriptionRequest& request) const; /** *

Creates a data feed for Spot Instances, enabling you to view Spot Instance * usage logs. You can create one data feed per AWS account. For more information, * see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSpotDatafeedSubscriptionAsync(const Model::CreateSpotDatafeedSubscriptionRequest& request, const CreateSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a subnet in a specified VPC.

You must specify an IPv4 CIDR * block for the subnet. After you create a subnet, you can't change its CIDR * block. The allowed block size is between a /16 netmask (65,536 IP addresses) and * /28 netmask (16 IP addresses). The CIDR block must not overlap with the CIDR * block of an existing subnet in the VPC.

If you've associated an IPv6 CIDR * block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a * /64 prefix length.

AWS reserves both the first four and the * last IPv4 address in each subnet's CIDR block. They're not available for * use.

If you add more than one subnet to a VPC, they're set * up in a star topology with a logical router in the middle.

When you stop * an instance in a subnet, it retains its private IPv4 address. It's therefore * possible to have a subnet with no running instances (they're all stopped), but * no remaining IP addresses available.

For more information about subnets, * see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateSubnetOutcome CreateSubnet(const Model::CreateSubnetRequest& request) const; /** *

Creates a subnet in a specified VPC.

You must specify an IPv4 CIDR * block for the subnet. After you create a subnet, you can't change its CIDR * block. The allowed block size is between a /16 netmask (65,536 IP addresses) and * /28 netmask (16 IP addresses). The CIDR block must not overlap with the CIDR * block of an existing subnet in the VPC.

If you've associated an IPv6 CIDR * block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a * /64 prefix length.

AWS reserves both the first four and the * last IPv4 address in each subnet's CIDR block. They're not available for * use.

If you add more than one subnet to a VPC, they're set * up in a star topology with a logical router in the middle.

When you stop * an instance in a subnet, it retains its private IPv4 address. It's therefore * possible to have a subnet with no running instances (they're all stopped), but * no remaining IP addresses available.

For more information about subnets, * see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSubnetOutcomeCallable CreateSubnetCallable(const Model::CreateSubnetRequest& request) const; /** *

Creates a subnet in a specified VPC.

You must specify an IPv4 CIDR * block for the subnet. After you create a subnet, you can't change its CIDR * block. The allowed block size is between a /16 netmask (65,536 IP addresses) and * /28 netmask (16 IP addresses). The CIDR block must not overlap with the CIDR * block of an existing subnet in the VPC.

If you've associated an IPv6 CIDR * block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a * /64 prefix length.

AWS reserves both the first four and the * last IPv4 address in each subnet's CIDR block. They're not available for * use.

If you add more than one subnet to a VPC, they're set * up in a star topology with a logical router in the middle.

When you stop * an instance in a subnet, it retains its private IPv4 address. It's therefore * possible to have a subnet with no running instances (they're all stopped), but * no remaining IP addresses available.

For more information about subnets, * see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSubnetAsync(const Model::CreateSubnetRequest& request, const CreateSubnetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds or overwrites only the specified tags for the specified Amazon EC2 * resource or resources. When you specify an existing tag key, the value is * overwritten with the new value. Each resource can have a maximum of 50 tags. * Each tag consists of a key and optional value. Tag keys must be unique per * resource.

For more information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User Guide. For * more information about creating IAM policies that control users' access to * resources based on tags, see Supported * Resource-Level Permissions for Amazon EC2 API Actions in the Amazon * Elastic Compute Cloud User Guide.

See Also:

AWS API * Reference

*/ virtual Model::CreateTagsOutcome CreateTags(const Model::CreateTagsRequest& request) const; /** *

Adds or overwrites only the specified tags for the specified Amazon EC2 * resource or resources. When you specify an existing tag key, the value is * overwritten with the new value. Each resource can have a maximum of 50 tags. * Each tag consists of a key and optional value. Tag keys must be unique per * resource.

For more information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User Guide. For * more information about creating IAM policies that control users' access to * resources based on tags, see Supported * Resource-Level Permissions for Amazon EC2 API Actions in the Amazon * Elastic Compute Cloud User Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTagsOutcomeCallable CreateTagsCallable(const Model::CreateTagsRequest& request) const; /** *

Adds or overwrites only the specified tags for the specified Amazon EC2 * resource or resources. When you specify an existing tag key, the value is * overwritten with the new value. Each resource can have a maximum of 50 tags. * Each tag consists of a key and optional value. Tag keys must be unique per * resource.

For more information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User Guide. For * more information about creating IAM policies that control users' access to * resources based on tags, see Supported * Resource-Level Permissions for Amazon EC2 API Actions in the Amazon * Elastic Compute Cloud User Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTagsAsync(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Traffic Mirror filter.

A Traffic Mirror filter is a set of * rules that defines the traffic to mirror.

By default, no traffic is * mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule * to add Traffic Mirror rules to the filter. The rules you add define what traffic * gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices * to mirror supported network services.

See Also:

AWS * API Reference

*/ virtual Model::CreateTrafficMirrorFilterOutcome CreateTrafficMirrorFilter(const Model::CreateTrafficMirrorFilterRequest& request) const; /** *

Creates a Traffic Mirror filter.

A Traffic Mirror filter is a set of * rules that defines the traffic to mirror.

By default, no traffic is * mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule * to add Traffic Mirror rules to the filter. The rules you add define what traffic * gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices * to mirror supported network services.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTrafficMirrorFilterOutcomeCallable CreateTrafficMirrorFilterCallable(const Model::CreateTrafficMirrorFilterRequest& request) const; /** *

Creates a Traffic Mirror filter.

A Traffic Mirror filter is a set of * rules that defines the traffic to mirror.

By default, no traffic is * mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule * to add Traffic Mirror rules to the filter. The rules you add define what traffic * gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices * to mirror supported network services.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTrafficMirrorFilterAsync(const Model::CreateTrafficMirrorFilterRequest& request, const CreateTrafficMirrorFilterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Traffic Mirror filter rule.

A Traffic Mirror rule defines * the Traffic Mirror source traffic to mirror.

You need the Traffic Mirror * filter ID when you create the rule.

See Also:

AWS * API Reference

*/ virtual Model::CreateTrafficMirrorFilterRuleOutcome CreateTrafficMirrorFilterRule(const Model::CreateTrafficMirrorFilterRuleRequest& request) const; /** *

Creates a Traffic Mirror filter rule.

A Traffic Mirror rule defines * the Traffic Mirror source traffic to mirror.

You need the Traffic Mirror * filter ID when you create the rule.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTrafficMirrorFilterRuleOutcomeCallable CreateTrafficMirrorFilterRuleCallable(const Model::CreateTrafficMirrorFilterRuleRequest& request) const; /** *

Creates a Traffic Mirror filter rule.

A Traffic Mirror rule defines * the Traffic Mirror source traffic to mirror.

You need the Traffic Mirror * filter ID when you create the rule.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTrafficMirrorFilterRuleAsync(const Model::CreateTrafficMirrorFilterRuleRequest& request, const CreateTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Traffic Mirror session.

A Traffic Mirror session actively * copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a * filter, and then assign it to the session to define a subset of the traffic to * mirror, for example all TCP traffic.

The Traffic Mirror source and the * Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a * different VPC connected via VPC peering or a transit gateway.

By * default, no traffic is mirrored. Use CreateTrafficMirrorFilter * to create filter rules that specify the traffic to mirror.

See * Also:

AWS * API Reference

*/ virtual Model::CreateTrafficMirrorSessionOutcome CreateTrafficMirrorSession(const Model::CreateTrafficMirrorSessionRequest& request) const; /** *

Creates a Traffic Mirror session.

A Traffic Mirror session actively * copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a * filter, and then assign it to the session to define a subset of the traffic to * mirror, for example all TCP traffic.

The Traffic Mirror source and the * Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a * different VPC connected via VPC peering or a transit gateway.

By * default, no traffic is mirrored. Use CreateTrafficMirrorFilter * to create filter rules that specify the traffic to mirror.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTrafficMirrorSessionOutcomeCallable CreateTrafficMirrorSessionCallable(const Model::CreateTrafficMirrorSessionRequest& request) const; /** *

Creates a Traffic Mirror session.

A Traffic Mirror session actively * copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a * filter, and then assign it to the session to define a subset of the traffic to * mirror, for example all TCP traffic.

The Traffic Mirror source and the * Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a * different VPC connected via VPC peering or a transit gateway.

By * default, no traffic is mirrored. Use CreateTrafficMirrorFilter * to create filter rules that specify the traffic to mirror.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTrafficMirrorSessionAsync(const Model::CreateTrafficMirrorSessionRequest& request, const CreateTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a target for your Traffic Mirror session.

A Traffic Mirror * target is the destination for mirrored traffic. The Traffic Mirror source and * the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in * different VPCs connected via VPC peering or a transit gateway.

A Traffic * Mirror target can be a network interface, or a Network Load Balancer.

To * use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.

See * Also:

AWS * API Reference

*/ virtual Model::CreateTrafficMirrorTargetOutcome CreateTrafficMirrorTarget(const Model::CreateTrafficMirrorTargetRequest& request) const; /** *

Creates a target for your Traffic Mirror session.

A Traffic Mirror * target is the destination for mirrored traffic. The Traffic Mirror source and * the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in * different VPCs connected via VPC peering or a transit gateway.

A Traffic * Mirror target can be a network interface, or a Network Load Balancer.

To * use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTrafficMirrorTargetOutcomeCallable CreateTrafficMirrorTargetCallable(const Model::CreateTrafficMirrorTargetRequest& request) const; /** *

Creates a target for your Traffic Mirror session.

A Traffic Mirror * target is the destination for mirrored traffic. The Traffic Mirror source and * the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in * different VPCs connected via VPC peering or a transit gateway.

A Traffic * Mirror target can be a network interface, or a Network Load Balancer.

To * use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTrafficMirrorTargetAsync(const Model::CreateTrafficMirrorTargetRequest& request, const CreateTrafficMirrorTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a transit gateway.

You can use a transit gateway to * interconnect your virtual private clouds (VPC) and on-premises networks. After * the transit gateway enters the available state, you can attach your * VPCs and VPN connections to the transit gateway.

To attach your VPCs, use * CreateTransitGatewayVpcAttachment.

To attach a VPN connection, use * CreateCustomerGateway to create a customer gateway and specify the ID of * the customer gateway and the ID of the transit gateway in a call to * CreateVpnConnection.

When you create a transit gateway, we create * a default transit gateway route table and use it as the default association * route table and the default propagation route table. You can use * CreateTransitGatewayRouteTable to create additional transit gateway route * tables. If you disable automatic route propagation, we do not create a default * transit gateway route table. You can use * EnableTransitGatewayRouteTablePropagation to propagate routes from a * resource attachment to a transit gateway route table. If you disable automatic * associations, you can use AssociateTransitGatewayRouteTable to associate * a resource attachment with a transit gateway route table.

See * Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayOutcome CreateTransitGateway(const Model::CreateTransitGatewayRequest& request) const; /** *

Creates a transit gateway.

You can use a transit gateway to * interconnect your virtual private clouds (VPC) and on-premises networks. After * the transit gateway enters the available state, you can attach your * VPCs and VPN connections to the transit gateway.

To attach your VPCs, use * CreateTransitGatewayVpcAttachment.

To attach a VPN connection, use * CreateCustomerGateway to create a customer gateway and specify the ID of * the customer gateway and the ID of the transit gateway in a call to * CreateVpnConnection.

When you create a transit gateway, we create * a default transit gateway route table and use it as the default association * route table and the default propagation route table. You can use * CreateTransitGatewayRouteTable to create additional transit gateway route * tables. If you disable automatic route propagation, we do not create a default * transit gateway route table. You can use * EnableTransitGatewayRouteTablePropagation to propagate routes from a * resource attachment to a transit gateway route table. If you disable automatic * associations, you can use AssociateTransitGatewayRouteTable to associate * a resource attachment with a transit gateway route table.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayOutcomeCallable CreateTransitGatewayCallable(const Model::CreateTransitGatewayRequest& request) const; /** *

Creates a transit gateway.

You can use a transit gateway to * interconnect your virtual private clouds (VPC) and on-premises networks. After * the transit gateway enters the available state, you can attach your * VPCs and VPN connections to the transit gateway.

To attach your VPCs, use * CreateTransitGatewayVpcAttachment.

To attach a VPN connection, use * CreateCustomerGateway to create a customer gateway and specify the ID of * the customer gateway and the ID of the transit gateway in a call to * CreateVpnConnection.

When you create a transit gateway, we create * a default transit gateway route table and use it as the default association * route table and the default propagation route table. You can use * CreateTransitGatewayRouteTable to create additional transit gateway route * tables. If you disable automatic route propagation, we do not create a default * transit gateway route table. You can use * EnableTransitGatewayRouteTablePropagation to propagate routes from a * resource attachment to a transit gateway route table. If you disable automatic * associations, you can use AssociateTransitGatewayRouteTable to associate * a resource attachment with a transit gateway route table.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayAsync(const Model::CreateTransitGatewayRequest& request, const CreateTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a multicast domain using the specified transit gateway.

The * transit gateway must be in the available state before you create a domain. Use * DescribeTransitGateways * to see the state of transit gateway.

See Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayMulticastDomainOutcome CreateTransitGatewayMulticastDomain(const Model::CreateTransitGatewayMulticastDomainRequest& request) const; /** *

Creates a multicast domain using the specified transit gateway.

The * transit gateway must be in the available state before you create a domain. Use * DescribeTransitGateways * to see the state of transit gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayMulticastDomainOutcomeCallable CreateTransitGatewayMulticastDomainCallable(const Model::CreateTransitGatewayMulticastDomainRequest& request) const; /** *

Creates a multicast domain using the specified transit gateway.

The * transit gateway must be in the available state before you create a domain. Use * DescribeTransitGateways * to see the state of transit gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayMulticastDomainAsync(const Model::CreateTransitGatewayMulticastDomainRequest& request, const CreateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Requests a transit gateway peering attachment between the specified transit * gateway (requester) and a peer transit gateway (accepter). The transit gateways * must be in different Regions. The peer transit gateway can be in your account or * a different AWS account.

After you create the peering attachment, the * owner of the accepter transit gateway must accept the attachment * request.

See Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayPeeringAttachmentOutcome CreateTransitGatewayPeeringAttachment(const Model::CreateTransitGatewayPeeringAttachmentRequest& request) const; /** *

Requests a transit gateway peering attachment between the specified transit * gateway (requester) and a peer transit gateway (accepter). The transit gateways * must be in different Regions. The peer transit gateway can be in your account or * a different AWS account.

After you create the peering attachment, the * owner of the accepter transit gateway must accept the attachment * request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayPeeringAttachmentOutcomeCallable CreateTransitGatewayPeeringAttachmentCallable(const Model::CreateTransitGatewayPeeringAttachmentRequest& request) const; /** *

Requests a transit gateway peering attachment between the specified transit * gateway (requester) and a peer transit gateway (accepter). The transit gateways * must be in different Regions. The peer transit gateway can be in your account or * a different AWS account.

After you create the peering attachment, the * owner of the accepter transit gateway must accept the attachment * request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayPeeringAttachmentAsync(const Model::CreateTransitGatewayPeeringAttachmentRequest& request, const CreateTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayPrefixListReferenceOutcome CreateTransitGatewayPrefixListReference(const Model::CreateTransitGatewayPrefixListReferenceRequest& request) const; /** *

Creates a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayPrefixListReferenceOutcomeCallable CreateTransitGatewayPrefixListReferenceCallable(const Model::CreateTransitGatewayPrefixListReferenceRequest& request) const; /** *

Creates a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayPrefixListReferenceAsync(const Model::CreateTransitGatewayPrefixListReferenceRequest& request, const CreateTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a static route for the specified transit gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayRouteOutcome CreateTransitGatewayRoute(const Model::CreateTransitGatewayRouteRequest& request) const; /** *

Creates a static route for the specified transit gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayRouteOutcomeCallable CreateTransitGatewayRouteCallable(const Model::CreateTransitGatewayRouteRequest& request) const; /** *

Creates a static route for the specified transit gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayRouteAsync(const Model::CreateTransitGatewayRouteRequest& request, const CreateTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a route table for the specified transit gateway.

See * Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayRouteTableOutcome CreateTransitGatewayRouteTable(const Model::CreateTransitGatewayRouteTableRequest& request) const; /** *

Creates a route table for the specified transit gateway.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayRouteTableOutcomeCallable CreateTransitGatewayRouteTableCallable(const Model::CreateTransitGatewayRouteTableRequest& request) const; /** *

Creates a route table for the specified transit gateway.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayRouteTableAsync(const Model::CreateTransitGatewayRouteTableRequest& request, const CreateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attaches the specified VPC to the specified transit gateway.

If you * attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is * already attached, the new VPC CIDR range is not propagated to the default * propagation route table.

To send VPC traffic to an attached transit * gateway, add a route to the VPC route table using * CreateRoute.

See Also:

AWS * API Reference

*/ virtual Model::CreateTransitGatewayVpcAttachmentOutcome CreateTransitGatewayVpcAttachment(const Model::CreateTransitGatewayVpcAttachmentRequest& request) const; /** *

Attaches the specified VPC to the specified transit gateway.

If you * attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is * already attached, the new VPC CIDR range is not propagated to the default * propagation route table.

To send VPC traffic to an attached transit * gateway, add a route to the VPC route table using * CreateRoute.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTransitGatewayVpcAttachmentOutcomeCallable CreateTransitGatewayVpcAttachmentCallable(const Model::CreateTransitGatewayVpcAttachmentRequest& request) const; /** *

Attaches the specified VPC to the specified transit gateway.

If you * attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is * already attached, the new VPC CIDR range is not propagated to the default * propagation route table.

To send VPC traffic to an attached transit * gateway, add a route to the VPC route table using * CreateRoute.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTransitGatewayVpcAttachmentAsync(const Model::CreateTransitGatewayVpcAttachmentRequest& request, const CreateTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an EBS volume that can be attached to an instance in the same * Availability Zone. The volume is created in the regional endpoint that you send * the HTTP request to. For more information see Regions and * Endpoints.

You can create a new empty volume or restore a volume from * an EBS snapshot. Any AWS Marketplace product codes from the snapshot are * propagated to the volume.

You can create encrypted volumes. Encrypted * volumes must be attached to instances that support Amazon EBS encryption. * Volumes that are created from encrypted snapshots are also automatically * encrypted. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can tag your volumes during creation. For more information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Creating * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateVolumeOutcome CreateVolume(const Model::CreateVolumeRequest& request) const; /** *

Creates an EBS volume that can be attached to an instance in the same * Availability Zone. The volume is created in the regional endpoint that you send * the HTTP request to. For more information see Regions and * Endpoints.

You can create a new empty volume or restore a volume from * an EBS snapshot. Any AWS Marketplace product codes from the snapshot are * propagated to the volume.

You can create encrypted volumes. Encrypted * volumes must be attached to instances that support Amazon EBS encryption. * Volumes that are created from encrypted snapshots are also automatically * encrypted. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can tag your volumes during creation. For more information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Creating * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVolumeOutcomeCallable CreateVolumeCallable(const Model::CreateVolumeRequest& request) const; /** *

Creates an EBS volume that can be attached to an instance in the same * Availability Zone. The volume is created in the regional endpoint that you send * the HTTP request to. For more information see Regions and * Endpoints.

You can create a new empty volume or restore a volume from * an EBS snapshot. Any AWS Marketplace product codes from the snapshot are * propagated to the volume.

You can create encrypted volumes. Encrypted * volumes must be attached to instances that support Amazon EBS encryption. * Volumes that are created from encrypted snapshots are also automatically * encrypted. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can tag your volumes during creation. For more information, see Tagging * your Amazon EC2 resources in the Amazon Elastic Compute Cloud User * Guide.

For more information, see Creating * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVolumeAsync(const Model::CreateVolumeRequest& request, const CreateVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can * create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 * netmask (65,536 IPv4 addresses). For more information about how large to make * your VPC, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

*

You can optionally request an IPv6 CIDR block for the VPC. You can request an * Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 * CIDR block from an IPv6 address pool that you provisioned through bring your own * IP addresses (BYOIP).

*

By default, each instance you launch in the VPC has the default DHCP options, * which include only a default DNS server that we provide (AmazonProvidedDNS). For * more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User Guide.

*

You can specify the instance tenancy value for the VPC when you create it. * You can't change this value for the VPC after you create it. For more * information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

*/ virtual Model::CreateVpcOutcome CreateVpc(const Model::CreateVpcRequest& request) const; /** *

Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can * create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 * netmask (65,536 IPv4 addresses). For more information about how large to make * your VPC, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

*

You can optionally request an IPv6 CIDR block for the VPC. You can request an * Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 * CIDR block from an IPv6 address pool that you provisioned through bring your own * IP addresses (BYOIP).

*

By default, each instance you launch in the VPC has the default DHCP options, * which include only a default DNS server that we provide (AmazonProvidedDNS). For * more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User Guide.

*

You can specify the instance tenancy value for the VPC when you create it. * You can't change this value for the VPC after you create it. For more * information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpcOutcomeCallable CreateVpcCallable(const Model::CreateVpcRequest& request) const; /** *

Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can * create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 * netmask (65,536 IPv4 addresses). For more information about how large to make * your VPC, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

*

You can optionally request an IPv6 CIDR block for the VPC. You can request an * Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 * CIDR block from an IPv6 address pool that you provisioned through bring your own * IP addresses (BYOIP).

*

By default, each instance you launch in the VPC has the default DHCP options, * which include only a default DNS server that we provide (AmazonProvidedDNS). For * more information, see DHCP * Options Sets in the Amazon Virtual Private Cloud User Guide.

*

You can specify the instance tenancy value for the VPC when you create it. * You can't change this value for the VPC after you create it. For more * information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpcAsync(const Model::CreateVpcRequest& request, const CreateVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a VPC endpoint for a specified service. An endpoint enables you to * create a private connection between your VPC and the service. The service may be * provided by AWS, an AWS Marketplace Partner, or another AWS account. For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User Guide.

A * gateway endpoint serves as a target for a route in your route table * for traffic destined for the AWS service. You can specify an endpoint policy to * attach to the endpoint, which will control access to the service from your VPC. * You can also specify the VPC route tables that use the endpoint.

An * interface endpoint is a network interface in your subnet that * serves as an endpoint for communicating with the specified service. You can * specify the subnets in which to create an endpoint, and the security groups to * associate with the endpoint network interface.

Use * DescribeVpcEndpointServices to get a list of supported * services.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpcEndpointOutcome CreateVpcEndpoint(const Model::CreateVpcEndpointRequest& request) const; /** *

Creates a VPC endpoint for a specified service. An endpoint enables you to * create a private connection between your VPC and the service. The service may be * provided by AWS, an AWS Marketplace Partner, or another AWS account. For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User Guide.

A * gateway endpoint serves as a target for a route in your route table * for traffic destined for the AWS service. You can specify an endpoint policy to * attach to the endpoint, which will control access to the service from your VPC. * You can also specify the VPC route tables that use the endpoint.

An * interface endpoint is a network interface in your subnet that * serves as an endpoint for communicating with the specified service. You can * specify the subnets in which to create an endpoint, and the security groups to * associate with the endpoint network interface.

Use * DescribeVpcEndpointServices to get a list of supported * services.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpcEndpointOutcomeCallable CreateVpcEndpointCallable(const Model::CreateVpcEndpointRequest& request) const; /** *

Creates a VPC endpoint for a specified service. An endpoint enables you to * create a private connection between your VPC and the service. The service may be * provided by AWS, an AWS Marketplace Partner, or another AWS account. For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User Guide.

A * gateway endpoint serves as a target for a route in your route table * for traffic destined for the AWS service. You can specify an endpoint policy to * attach to the endpoint, which will control access to the service from your VPC. * You can also specify the VPC route tables that use the endpoint.

An * interface endpoint is a network interface in your subnet that * serves as an endpoint for communicating with the specified service. You can * specify the subnets in which to create an endpoint, and the security groups to * associate with the endpoint network interface.

Use * DescribeVpcEndpointServices to get a list of supported * services.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpcEndpointAsync(const Model::CreateVpcEndpointRequest& request, const CreateVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a connection notification for a specified VPC endpoint or VPC * endpoint service. A connection notification notifies you of specific endpoint * events. You must create an SNS topic to receive notifications. For more * information, see Create a * Topic in the Amazon Simple Notification Service Developer Guide.

*

You can create a connection notification for interface endpoints * only.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpcEndpointConnectionNotificationOutcome CreateVpcEndpointConnectionNotification(const Model::CreateVpcEndpointConnectionNotificationRequest& request) const; /** *

Creates a connection notification for a specified VPC endpoint or VPC * endpoint service. A connection notification notifies you of specific endpoint * events. You must create an SNS topic to receive notifications. For more * information, see Create a * Topic in the Amazon Simple Notification Service Developer Guide.

*

You can create a connection notification for interface endpoints * only.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpcEndpointConnectionNotificationOutcomeCallable CreateVpcEndpointConnectionNotificationCallable(const Model::CreateVpcEndpointConnectionNotificationRequest& request) const; /** *

Creates a connection notification for a specified VPC endpoint or VPC * endpoint service. A connection notification notifies you of specific endpoint * events. You must create an SNS topic to receive notifications. For more * information, see Create a * Topic in the Amazon Simple Notification Service Developer Guide.

*

You can create a connection notification for interface endpoints * only.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpcEndpointConnectionNotificationAsync(const Model::CreateVpcEndpointConnectionNotificationRequest& request, const CreateVpcEndpointConnectionNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a VPC endpoint service configuration to which service consumers (AWS * accounts, IAM users, and IAM roles) can connect. Service consumers can create an * interface VPC endpoint to connect to your service.

To create an endpoint * service configuration, you must first create a Network Load Balancer for your * service. For more information, see VPC * Endpoint Services in the Amazon Virtual Private Cloud User Guide. *

If you set the private DNS name, you must prove that you own the private * DNS domain name. For more information, see VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpcEndpointServiceConfigurationOutcome CreateVpcEndpointServiceConfiguration(const Model::CreateVpcEndpointServiceConfigurationRequest& request) const; /** *

Creates a VPC endpoint service configuration to which service consumers (AWS * accounts, IAM users, and IAM roles) can connect. Service consumers can create an * interface VPC endpoint to connect to your service.

To create an endpoint * service configuration, you must first create a Network Load Balancer for your * service. For more information, see VPC * Endpoint Services in the Amazon Virtual Private Cloud User Guide. *

If you set the private DNS name, you must prove that you own the private * DNS domain name. For more information, see VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpcEndpointServiceConfigurationOutcomeCallable CreateVpcEndpointServiceConfigurationCallable(const Model::CreateVpcEndpointServiceConfigurationRequest& request) const; /** *

Creates a VPC endpoint service configuration to which service consumers (AWS * accounts, IAM users, and IAM roles) can connect. Service consumers can create an * interface VPC endpoint to connect to your service.

To create an endpoint * service configuration, you must first create a Network Load Balancer for your * service. For more information, see VPC * Endpoint Services in the Amazon Virtual Private Cloud User Guide. *

If you set the private DNS name, you must prove that you own the private * DNS domain name. For more information, see VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpcEndpointServiceConfigurationAsync(const Model::CreateVpcEndpointServiceConfigurationRequest& request, const CreateVpcEndpointServiceConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Requests a VPC peering connection between two VPCs: a requester VPC that you * own and an accepter VPC with which to create the connection. The accepter VPC * can belong to another AWS account and can be in a different Region to the * requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR * blocks.

Limitations and rules apply to a VPC peering connection. * For more information, see the limitations * section in the VPC Peering Guide.

The owner of the * accepter VPC must accept the peering request to activate the peering connection. * The VPC peering connection request expires after 7 days, after which it cannot * be accepted or rejected.

If you create a VPC peering connection request * between VPCs with overlapping CIDR blocks, the VPC peering connection has a * status of failed.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpcPeeringConnectionOutcome CreateVpcPeeringConnection(const Model::CreateVpcPeeringConnectionRequest& request) const; /** *

Requests a VPC peering connection between two VPCs: a requester VPC that you * own and an accepter VPC with which to create the connection. The accepter VPC * can belong to another AWS account and can be in a different Region to the * requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR * blocks.

Limitations and rules apply to a VPC peering connection. * For more information, see the limitations * section in the VPC Peering Guide.

The owner of the * accepter VPC must accept the peering request to activate the peering connection. * The VPC peering connection request expires after 7 days, after which it cannot * be accepted or rejected.

If you create a VPC peering connection request * between VPCs with overlapping CIDR blocks, the VPC peering connection has a * status of failed.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpcPeeringConnectionOutcomeCallable CreateVpcPeeringConnectionCallable(const Model::CreateVpcPeeringConnectionRequest& request) const; /** *

Requests a VPC peering connection between two VPCs: a requester VPC that you * own and an accepter VPC with which to create the connection. The accepter VPC * can belong to another AWS account and can be in a different Region to the * requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR * blocks.

Limitations and rules apply to a VPC peering connection. * For more information, see the limitations * section in the VPC Peering Guide.

The owner of the * accepter VPC must accept the peering request to activate the peering connection. * The VPC peering connection request expires after 7 days, after which it cannot * be accepted or rejected.

If you create a VPC peering connection request * between VPCs with overlapping CIDR blocks, the VPC peering connection has a * status of failed.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpcPeeringConnectionAsync(const Model::CreateVpcPeeringConnectionRequest& request, const CreateVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a VPN connection between an existing virtual private gateway or * transit gateway and a customer gateway. The supported connection type is * ipsec.1.

The response includes information that you need to * give to your network administrator to configure your customer gateway.

*

We strongly recommend that you use HTTPS when calling this * operation because the response contains sensitive cryptographic information for * configuring your customer gateway device.

If you decide to * shut down your VPN connection for any reason and later create a new VPN * connection, you must reconfigure your customer gateway with the new information * returned from this call.

This is an idempotent operation. If you perform * the operation more than once, Amazon EC2 doesn't return an error.

For * more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpnConnectionOutcome CreateVpnConnection(const Model::CreateVpnConnectionRequest& request) const; /** *

Creates a VPN connection between an existing virtual private gateway or * transit gateway and a customer gateway. The supported connection type is * ipsec.1.

The response includes information that you need to * give to your network administrator to configure your customer gateway.

*

We strongly recommend that you use HTTPS when calling this * operation because the response contains sensitive cryptographic information for * configuring your customer gateway device.

If you decide to * shut down your VPN connection for any reason and later create a new VPN * connection, you must reconfigure your customer gateway with the new information * returned from this call.

This is an idempotent operation. If you perform * the operation more than once, Amazon EC2 doesn't return an error.

For * more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpnConnectionOutcomeCallable CreateVpnConnectionCallable(const Model::CreateVpnConnectionRequest& request) const; /** *

Creates a VPN connection between an existing virtual private gateway or * transit gateway and a customer gateway. The supported connection type is * ipsec.1.

The response includes information that you need to * give to your network administrator to configure your customer gateway.

*

We strongly recommend that you use HTTPS when calling this * operation because the response contains sensitive cryptographic information for * configuring your customer gateway device.

If you decide to * shut down your VPN connection for any reason and later create a new VPN * connection, you must reconfigure your customer gateway with the new information * returned from this call.

This is an idempotent operation. If you perform * the operation more than once, Amazon EC2 doesn't return an error.

For * more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpnConnectionAsync(const Model::CreateVpnConnectionRequest& request, const CreateVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a static route associated with a VPN connection between an existing * virtual private gateway and a VPN customer gateway. The static route allows * traffic to be routed from the virtual private gateway to the VPN customer * gateway.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpnConnectionRouteOutcome CreateVpnConnectionRoute(const Model::CreateVpnConnectionRouteRequest& request) const; /** *

Creates a static route associated with a VPN connection between an existing * virtual private gateway and a VPN customer gateway. The static route allows * traffic to be routed from the virtual private gateway to the VPN customer * gateway.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpnConnectionRouteOutcomeCallable CreateVpnConnectionRouteCallable(const Model::CreateVpnConnectionRouteRequest& request) const; /** *

Creates a static route associated with a VPN connection between an existing * virtual private gateway and a VPN customer gateway. The static route allows * traffic to be routed from the virtual private gateway to the VPN customer * gateway.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpnConnectionRouteAsync(const Model::CreateVpnConnectionRouteRequest& request, const CreateVpnConnectionRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a virtual private gateway. A virtual private gateway is the endpoint * on the VPC side of your VPN connection. You can create a virtual private gateway * before creating the VPC itself.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateVpnGatewayOutcome CreateVpnGateway(const Model::CreateVpnGatewayRequest& request) const; /** *

Creates a virtual private gateway. A virtual private gateway is the endpoint * on the VPC side of your VPN connection. You can create a virtual private gateway * before creating the VPC itself.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateVpnGatewayOutcomeCallable CreateVpnGatewayCallable(const Model::CreateVpnGatewayRequest& request) const; /** *

Creates a virtual private gateway. A virtual private gateway is the endpoint * on the VPC side of your VPN connection. You can create a virtual private gateway * before creating the VPC itself.

For more information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateVpnGatewayAsync(const Model::CreateVpnGatewayRequest& request, const CreateVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a carrier gateway.

If you do not delete the route * that contains the carrier gateway as the Target, the route is a blackhole route. * For information about how to delete a route, see DeleteRoute.

*

See Also:

AWS * API Reference

*/ virtual Model::DeleteCarrierGatewayOutcome DeleteCarrierGateway(const Model::DeleteCarrierGatewayRequest& request) const; /** *

Deletes a carrier gateway.

If you do not delete the route * that contains the carrier gateway as the Target, the route is a blackhole route. * For information about how to delete a route, see DeleteRoute.

*

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteCarrierGatewayOutcomeCallable DeleteCarrierGatewayCallable(const Model::DeleteCarrierGatewayRequest& request) const; /** *

Deletes a carrier gateway.

If you do not delete the route * that contains the carrier gateway as the Target, the route is a blackhole route. * For information about how to delete a route, see DeleteRoute.

*

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteCarrierGatewayAsync(const Model::DeleteCarrierGatewayRequest& request, const DeleteCarrierGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Client VPN endpoint. You must disassociate all target * networks before you can delete a Client VPN endpoint.

See Also:

* AWS * API Reference

*/ virtual Model::DeleteClientVpnEndpointOutcome DeleteClientVpnEndpoint(const Model::DeleteClientVpnEndpointRequest& request) const; /** *

Deletes the specified Client VPN endpoint. You must disassociate all target * networks before you can delete a Client VPN endpoint.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClientVpnEndpointOutcomeCallable DeleteClientVpnEndpointCallable(const Model::DeleteClientVpnEndpointRequest& request) const; /** *

Deletes the specified Client VPN endpoint. You must disassociate all target * networks before you can delete a Client VPN endpoint.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClientVpnEndpointAsync(const Model::DeleteClientVpnEndpointRequest& request, const DeleteClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a route from a Client VPN endpoint. You can only delete routes that * you manually added using the CreateClientVpnRoute action. You cannot * delete routes that were automatically added when associating a subnet. To remove * routes that have been automatically added, disassociate the target subnet from * the Client VPN endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DeleteClientVpnRouteOutcome DeleteClientVpnRoute(const Model::DeleteClientVpnRouteRequest& request) const; /** *

Deletes a route from a Client VPN endpoint. You can only delete routes that * you manually added using the CreateClientVpnRoute action. You cannot * delete routes that were automatically added when associating a subnet. To remove * routes that have been automatically added, disassociate the target subnet from * the Client VPN endpoint.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClientVpnRouteOutcomeCallable DeleteClientVpnRouteCallable(const Model::DeleteClientVpnRouteRequest& request) const; /** *

Deletes a route from a Client VPN endpoint. You can only delete routes that * you manually added using the CreateClientVpnRoute action. You cannot * delete routes that were automatically added when associating a subnet. To remove * routes that have been automatically added, disassociate the target subnet from * the Client VPN endpoint.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClientVpnRouteAsync(const Model::DeleteClientVpnRouteRequest& request, const DeleteClientVpnRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified customer gateway. You must delete the VPN connection * before you can delete the customer gateway.

See Also:

AWS * API Reference

*/ virtual Model::DeleteCustomerGatewayOutcome DeleteCustomerGateway(const Model::DeleteCustomerGatewayRequest& request) const; /** *

Deletes the specified customer gateway. You must delete the VPN connection * before you can delete the customer gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteCustomerGatewayOutcomeCallable DeleteCustomerGatewayCallable(const Model::DeleteCustomerGatewayRequest& request) const; /** *

Deletes the specified customer gateway. You must delete the VPN connection * before you can delete the customer gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteCustomerGatewayAsync(const Model::DeleteCustomerGatewayRequest& request, const DeleteCustomerGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified set of DHCP options. You must disassociate the set of * DHCP options before you can delete it. You can disassociate the set of DHCP * options by associating either a new set of options or the default set of options * with the VPC.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDhcpOptionsOutcome DeleteDhcpOptions(const Model::DeleteDhcpOptionsRequest& request) const; /** *

Deletes the specified set of DHCP options. You must disassociate the set of * DHCP options before you can delete it. You can disassociate the set of DHCP * options by associating either a new set of options or the default set of options * with the VPC.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteDhcpOptionsOutcomeCallable DeleteDhcpOptionsCallable(const Model::DeleteDhcpOptionsRequest& request) const; /** *

Deletes the specified set of DHCP options. You must disassociate the set of * DHCP options before you can delete it. You can disassociate the set of DHCP * options by associating either a new set of options or the default set of options * with the VPC.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteDhcpOptionsAsync(const Model::DeleteDhcpOptionsRequest& request, const DeleteDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes an egress-only internet gateway.

See Also:

AWS * API Reference

*/ virtual Model::DeleteEgressOnlyInternetGatewayOutcome DeleteEgressOnlyInternetGateway(const Model::DeleteEgressOnlyInternetGatewayRequest& request) const; /** *

Deletes an egress-only internet gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteEgressOnlyInternetGatewayOutcomeCallable DeleteEgressOnlyInternetGatewayCallable(const Model::DeleteEgressOnlyInternetGatewayRequest& request) const; /** *

Deletes an egress-only internet gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteEgressOnlyInternetGatewayAsync(const Model::DeleteEgressOnlyInternetGatewayRequest& request, const DeleteEgressOnlyInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified EC2 Fleet.

After you delete an EC2 Fleet, it * launches no new instances. You must specify whether an EC2 Fleet should also * terminate its instances. If you terminate the instances, the EC2 Fleet enters * the deleted_terminating state. Otherwise, the EC2 Fleet enters the * deleted_running state, and the instances continue to run until they * are interrupted or you terminate them manually.

See Also:

AWS * API Reference

*/ virtual Model::DeleteFleetsOutcome DeleteFleets(const Model::DeleteFleetsRequest& request) const; /** *

Deletes the specified EC2 Fleet.

After you delete an EC2 Fleet, it * launches no new instances. You must specify whether an EC2 Fleet should also * terminate its instances. If you terminate the instances, the EC2 Fleet enters * the deleted_terminating state. Otherwise, the EC2 Fleet enters the * deleted_running state, and the instances continue to run until they * are interrupted or you terminate them manually.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteFleetsOutcomeCallable DeleteFleetsCallable(const Model::DeleteFleetsRequest& request) const; /** *

Deletes the specified EC2 Fleet.

After you delete an EC2 Fleet, it * launches no new instances. You must specify whether an EC2 Fleet should also * terminate its instances. If you terminate the instances, the EC2 Fleet enters * the deleted_terminating state. Otherwise, the EC2 Fleet enters the * deleted_running state, and the instances continue to run until they * are interrupted or you terminate them manually.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteFleetsAsync(const Model::DeleteFleetsRequest& request, const DeleteFleetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes one or more flow logs.

See Also:

AWS * API Reference

*/ virtual Model::DeleteFlowLogsOutcome DeleteFlowLogs(const Model::DeleteFlowLogsRequest& request) const; /** *

Deletes one or more flow logs.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteFlowLogsOutcomeCallable DeleteFlowLogsCallable(const Model::DeleteFlowLogsRequest& request) const; /** *

Deletes one or more flow logs.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteFlowLogsAsync(const Model::DeleteFlowLogsRequest& request, const DeleteFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Amazon FPGA Image (AFI).

See Also:

AWS * API Reference

*/ virtual Model::DeleteFpgaImageOutcome DeleteFpgaImage(const Model::DeleteFpgaImageRequest& request) const; /** *

Deletes the specified Amazon FPGA Image (AFI).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteFpgaImageOutcomeCallable DeleteFpgaImageCallable(const Model::DeleteFpgaImageRequest& request) const; /** *

Deletes the specified Amazon FPGA Image (AFI).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteFpgaImageAsync(const Model::DeleteFpgaImageRequest& request, const DeleteFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified internet gateway. You must detach the internet gateway * from the VPC before you can delete it.

See Also:

AWS * API Reference

*/ virtual Model::DeleteInternetGatewayOutcome DeleteInternetGateway(const Model::DeleteInternetGatewayRequest& request) const; /** *

Deletes the specified internet gateway. You must detach the internet gateway * from the VPC before you can delete it.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteInternetGatewayOutcomeCallable DeleteInternetGatewayCallable(const Model::DeleteInternetGatewayRequest& request) const; /** *

Deletes the specified internet gateway. You must detach the internet gateway * from the VPC before you can delete it.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteInternetGatewayAsync(const Model::DeleteInternetGatewayRequest& request, const DeleteInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified key pair, by removing the public key from Amazon * EC2.

See Also:

AWS * API Reference

*/ virtual Model::DeleteKeyPairOutcome DeleteKeyPair(const Model::DeleteKeyPairRequest& request) const; /** *

Deletes the specified key pair, by removing the public key from Amazon * EC2.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteKeyPairOutcomeCallable DeleteKeyPairCallable(const Model::DeleteKeyPairRequest& request) const; /** *

Deletes the specified key pair, by removing the public key from Amazon * EC2.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteKeyPairAsync(const Model::DeleteKeyPairRequest& request, const DeleteKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a launch template. Deleting a launch template deletes all of its * versions.

See Also:

AWS * API Reference

*/ virtual Model::DeleteLaunchTemplateOutcome DeleteLaunchTemplate(const Model::DeleteLaunchTemplateRequest& request) const; /** *

Deletes a launch template. Deleting a launch template deletes all of its * versions.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteLaunchTemplateOutcomeCallable DeleteLaunchTemplateCallable(const Model::DeleteLaunchTemplateRequest& request) const; /** *

Deletes a launch template. Deleting a launch template deletes all of its * versions.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteLaunchTemplateAsync(const Model::DeleteLaunchTemplateRequest& request, const DeleteLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes one or more versions of a launch template. You cannot delete the * default version of a launch template; you must first assign a different version * as the default. If the default version is the only version for the launch * template, you must delete the entire launch template using * DeleteLaunchTemplate.

See Also:

AWS * API Reference

*/ virtual Model::DeleteLaunchTemplateVersionsOutcome DeleteLaunchTemplateVersions(const Model::DeleteLaunchTemplateVersionsRequest& request) const; /** *

Deletes one or more versions of a launch template. You cannot delete the * default version of a launch template; you must first assign a different version * as the default. If the default version is the only version for the launch * template, you must delete the entire launch template using * DeleteLaunchTemplate.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteLaunchTemplateVersionsOutcomeCallable DeleteLaunchTemplateVersionsCallable(const Model::DeleteLaunchTemplateVersionsRequest& request) const; /** *

Deletes one or more versions of a launch template. You cannot delete the * default version of a launch template; you must first assign a different version * as the default. If the default version is the only version for the launch * template, you must delete the entire launch template using * DeleteLaunchTemplate.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteLaunchTemplateVersionsAsync(const Model::DeleteLaunchTemplateVersionsRequest& request, const DeleteLaunchTemplateVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified route from the specified local gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteLocalGatewayRouteOutcome DeleteLocalGatewayRoute(const Model::DeleteLocalGatewayRouteRequest& request) const; /** *

Deletes the specified route from the specified local gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteLocalGatewayRouteOutcomeCallable DeleteLocalGatewayRouteCallable(const Model::DeleteLocalGatewayRouteRequest& request) const; /** *

Deletes the specified route from the specified local gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteLocalGatewayRouteAsync(const Model::DeleteLocalGatewayRouteRequest& request, const DeleteLocalGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified association between a VPC and local gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteLocalGatewayRouteTableVpcAssociationOutcome DeleteLocalGatewayRouteTableVpcAssociation(const Model::DeleteLocalGatewayRouteTableVpcAssociationRequest& request) const; /** *

Deletes the specified association between a VPC and local gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteLocalGatewayRouteTableVpcAssociationOutcomeCallable DeleteLocalGatewayRouteTableVpcAssociationCallable(const Model::DeleteLocalGatewayRouteTableVpcAssociationRequest& request) const; /** *

Deletes the specified association between a VPC and local gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteLocalGatewayRouteTableVpcAssociationAsync(const Model::DeleteLocalGatewayRouteTableVpcAssociationRequest& request, const DeleteLocalGatewayRouteTableVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified managed prefix list. You must first remove all * references to the prefix list in your resources.

See Also:

AWS * API Reference

*/ virtual Model::DeleteManagedPrefixListOutcome DeleteManagedPrefixList(const Model::DeleteManagedPrefixListRequest& request) const; /** *

Deletes the specified managed prefix list. You must first remove all * references to the prefix list in your resources.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteManagedPrefixListOutcomeCallable DeleteManagedPrefixListCallable(const Model::DeleteManagedPrefixListRequest& request) const; /** *

Deletes the specified managed prefix list. You must first remove all * references to the prefix list in your resources.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteManagedPrefixListAsync(const Model::DeleteManagedPrefixListRequest& request, const DeleteManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its * Elastic IP address, but does not release the address from your account. Deleting * a NAT gateway does not delete any NAT gateway routes in your route * tables.

See Also:

AWS * API Reference

*/ virtual Model::DeleteNatGatewayOutcome DeleteNatGateway(const Model::DeleteNatGatewayRequest& request) const; /** *

Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its * Elastic IP address, but does not release the address from your account. Deleting * a NAT gateway does not delete any NAT gateway routes in your route * tables.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteNatGatewayOutcomeCallable DeleteNatGatewayCallable(const Model::DeleteNatGatewayRequest& request) const; /** *

Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its * Elastic IP address, but does not release the address from your account. Deleting * a NAT gateway does not delete any NAT gateway routes in your route * tables.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteNatGatewayAsync(const Model::DeleteNatGatewayRequest& request, const DeleteNatGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified network ACL. You can't delete the ACL if it's * associated with any subnets. You can't delete the default network * ACL.

See Also:

AWS * API Reference

*/ virtual Model::DeleteNetworkAclOutcome DeleteNetworkAcl(const Model::DeleteNetworkAclRequest& request) const; /** *

Deletes the specified network ACL. You can't delete the ACL if it's * associated with any subnets. You can't delete the default network * ACL.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteNetworkAclOutcomeCallable DeleteNetworkAclCallable(const Model::DeleteNetworkAclRequest& request) const; /** *

Deletes the specified network ACL. You can't delete the ACL if it's * associated with any subnets. You can't delete the default network * ACL.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteNetworkAclAsync(const Model::DeleteNetworkAclRequest& request, const DeleteNetworkAclResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified ingress or egress entry (rule) from the specified * network ACL.

See Also:

AWS * API Reference

*/ virtual Model::DeleteNetworkAclEntryOutcome DeleteNetworkAclEntry(const Model::DeleteNetworkAclEntryRequest& request) const; /** *

Deletes the specified ingress or egress entry (rule) from the specified * network ACL.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteNetworkAclEntryOutcomeCallable DeleteNetworkAclEntryCallable(const Model::DeleteNetworkAclEntryRequest& request) const; /** *

Deletes the specified ingress or egress entry (rule) from the specified * network ACL.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteNetworkAclEntryAsync(const Model::DeleteNetworkAclEntryRequest& request, const DeleteNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified network interface. You must detach the network * interface before you can delete it.

See Also:

AWS * API Reference

*/ virtual Model::DeleteNetworkInterfaceOutcome DeleteNetworkInterface(const Model::DeleteNetworkInterfaceRequest& request) const; /** *

Deletes the specified network interface. You must detach the network * interface before you can delete it.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteNetworkInterfaceOutcomeCallable DeleteNetworkInterfaceCallable(const Model::DeleteNetworkInterfaceRequest& request) const; /** *

Deletes the specified network interface. You must detach the network * interface before you can delete it.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteNetworkInterfaceAsync(const Model::DeleteNetworkInterfaceRequest& request, const DeleteNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a permission for a network interface. By default, you cannot delete * the permission if the account for which you're removing the permission has * attached the network interface to an instance. However, you can force delete the * permission, regardless of any attachment.

See Also:

AWS * API Reference

*/ virtual Model::DeleteNetworkInterfacePermissionOutcome DeleteNetworkInterfacePermission(const Model::DeleteNetworkInterfacePermissionRequest& request) const; /** *

Deletes a permission for a network interface. By default, you cannot delete * the permission if the account for which you're removing the permission has * attached the network interface to an instance. However, you can force delete the * permission, regardless of any attachment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteNetworkInterfacePermissionOutcomeCallable DeleteNetworkInterfacePermissionCallable(const Model::DeleteNetworkInterfacePermissionRequest& request) const; /** *

Deletes a permission for a network interface. By default, you cannot delete * the permission if the account for which you're removing the permission has * attached the network interface to an instance. However, you can force delete the * permission, regardless of any attachment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteNetworkInterfacePermissionAsync(const Model::DeleteNetworkInterfacePermissionRequest& request, const DeleteNetworkInterfacePermissionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified placement group. You must terminate all instances in * the placement group before you can delete the placement group. For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DeletePlacementGroupOutcome DeletePlacementGroup(const Model::DeletePlacementGroupRequest& request) const; /** *

Deletes the specified placement group. You must terminate all instances in * the placement group before you can delete the placement group. For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeletePlacementGroupOutcomeCallable DeletePlacementGroupCallable(const Model::DeletePlacementGroupRequest& request) const; /** *

Deletes the specified placement group. You must terminate all instances in * the placement group before you can delete the placement group. For more * information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeletePlacementGroupAsync(const Model::DeletePlacementGroupRequest& request, const DeletePlacementGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the queued purchases for the specified Reserved * Instances.

See Also:

AWS * API Reference

*/ virtual Model::DeleteQueuedReservedInstancesOutcome DeleteQueuedReservedInstances(const Model::DeleteQueuedReservedInstancesRequest& request) const; /** *

Deletes the queued purchases for the specified Reserved * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteQueuedReservedInstancesOutcomeCallable DeleteQueuedReservedInstancesCallable(const Model::DeleteQueuedReservedInstancesRequest& request) const; /** *

Deletes the queued purchases for the specified Reserved * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteQueuedReservedInstancesAsync(const Model::DeleteQueuedReservedInstancesRequest& request, const DeleteQueuedReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified route from the specified route table.

See * Also:

AWS API * Reference

*/ virtual Model::DeleteRouteOutcome DeleteRoute(const Model::DeleteRouteRequest& request) const; /** *

Deletes the specified route from the specified route table.

See * Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteRouteOutcomeCallable DeleteRouteCallable(const Model::DeleteRouteRequest& request) const; /** *

Deletes the specified route from the specified route table.

See * Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteRouteAsync(const Model::DeleteRouteRequest& request, const DeleteRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified route table. You must disassociate the route table from * any subnets before you can delete it. You can't delete the main route * table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteRouteTableOutcome DeleteRouteTable(const Model::DeleteRouteTableRequest& request) const; /** *

Deletes the specified route table. You must disassociate the route table from * any subnets before you can delete it. You can't delete the main route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteRouteTableOutcomeCallable DeleteRouteTableCallable(const Model::DeleteRouteTableRequest& request) const; /** *

Deletes the specified route table. You must disassociate the route table from * any subnets before you can delete it. You can't delete the main route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteRouteTableAsync(const Model::DeleteRouteTableRequest& request, const DeleteRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a security group.

If you attempt to delete a security group * that is associated with an instance, or is referenced by another security group, * the operation fails with InvalidGroup.InUse in EC2-Classic or * DependencyViolation in EC2-VPC.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSecurityGroupOutcome DeleteSecurityGroup(const Model::DeleteSecurityGroupRequest& request) const; /** *

Deletes a security group.

If you attempt to delete a security group * that is associated with an instance, or is referenced by another security group, * the operation fails with InvalidGroup.InUse in EC2-Classic or * DependencyViolation in EC2-VPC.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSecurityGroupOutcomeCallable DeleteSecurityGroupCallable(const Model::DeleteSecurityGroupRequest& request) const; /** *

Deletes a security group.

If you attempt to delete a security group * that is associated with an instance, or is referenced by another security group, * the operation fails with InvalidGroup.InUse in EC2-Classic or * DependencyViolation in EC2-VPC.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSecurityGroupAsync(const Model::DeleteSecurityGroupRequest& request, const DeleteSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified snapshot.

When you make periodic snapshots of a * volume, the snapshots are incremental, and only the blocks on the device that * have changed since your last snapshot are saved in the new snapshot. When you * delete a snapshot, only the data not needed for any other snapshot is removed. * So regardless of which prior snapshots have been deleted, all active snapshots * will have access to all the information needed to restore the volume.

You * cannot delete a snapshot of the root device of an EBS volume used by a * registered AMI. You must first de-register the AMI before you can delete the * snapshot.

For more information, see Deleting * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSnapshotOutcome DeleteSnapshot(const Model::DeleteSnapshotRequest& request) const; /** *

Deletes the specified snapshot.

When you make periodic snapshots of a * volume, the snapshots are incremental, and only the blocks on the device that * have changed since your last snapshot are saved in the new snapshot. When you * delete a snapshot, only the data not needed for any other snapshot is removed. * So regardless of which prior snapshots have been deleted, all active snapshots * will have access to all the information needed to restore the volume.

You * cannot delete a snapshot of the root device of an EBS volume used by a * registered AMI. You must first de-register the AMI before you can delete the * snapshot.

For more information, see Deleting * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSnapshotOutcomeCallable DeleteSnapshotCallable(const Model::DeleteSnapshotRequest& request) const; /** *

Deletes the specified snapshot.

When you make periodic snapshots of a * volume, the snapshots are incremental, and only the blocks on the device that * have changed since your last snapshot are saved in the new snapshot. When you * delete a snapshot, only the data not needed for any other snapshot is removed. * So regardless of which prior snapshots have been deleted, all active snapshots * will have access to all the information needed to restore the volume.

You * cannot delete a snapshot of the root device of an EBS volume used by a * registered AMI. You must first de-register the AMI before you can delete the * snapshot.

For more information, see Deleting * an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSnapshotAsync(const Model::DeleteSnapshotRequest& request, const DeleteSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the data feed for Spot Instances.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSpotDatafeedSubscriptionOutcome DeleteSpotDatafeedSubscription(const Model::DeleteSpotDatafeedSubscriptionRequest& request) const; /** *

Deletes the data feed for Spot Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSpotDatafeedSubscriptionOutcomeCallable DeleteSpotDatafeedSubscriptionCallable(const Model::DeleteSpotDatafeedSubscriptionRequest& request) const; /** *

Deletes the data feed for Spot Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSpotDatafeedSubscriptionAsync(const Model::DeleteSpotDatafeedSubscriptionRequest& request, const DeleteSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified subnet. You must terminate all running instances in the * subnet before you can delete the subnet.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSubnetOutcome DeleteSubnet(const Model::DeleteSubnetRequest& request) const; /** *

Deletes the specified subnet. You must terminate all running instances in the * subnet before you can delete the subnet.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSubnetOutcomeCallable DeleteSubnetCallable(const Model::DeleteSubnetRequest& request) const; /** *

Deletes the specified subnet. You must terminate all running instances in the * subnet before you can delete the subnet.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSubnetAsync(const Model::DeleteSubnetRequest& request, const DeleteSubnetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified set of tags from the specified set of resources.

*

To list the current tags, use DescribeTags. For more information about * tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

*/ virtual Model::DeleteTagsOutcome DeleteTags(const Model::DeleteTagsRequest& request) const; /** *

Deletes the specified set of tags from the specified set of resources.

*

To list the current tags, use DescribeTags. For more information about * tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTagsOutcomeCallable DeleteTagsCallable(const Model::DeleteTagsRequest& request) const; /** *

Deletes the specified set of tags from the specified set of resources.

*

To list the current tags, use DescribeTags. For more information about * tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTagsAsync(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Traffic Mirror filter.

You cannot delete a * Traffic Mirror filter that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteTrafficMirrorFilterOutcome DeleteTrafficMirrorFilter(const Model::DeleteTrafficMirrorFilterRequest& request) const; /** *

Deletes the specified Traffic Mirror filter.

You cannot delete a * Traffic Mirror filter that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTrafficMirrorFilterOutcomeCallable DeleteTrafficMirrorFilterCallable(const Model::DeleteTrafficMirrorFilterRequest& request) const; /** *

Deletes the specified Traffic Mirror filter.

You cannot delete a * Traffic Mirror filter that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTrafficMirrorFilterAsync(const Model::DeleteTrafficMirrorFilterRequest& request, const DeleteTrafficMirrorFilterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Traffic Mirror rule.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTrafficMirrorFilterRuleOutcome DeleteTrafficMirrorFilterRule(const Model::DeleteTrafficMirrorFilterRuleRequest& request) const; /** *

Deletes the specified Traffic Mirror rule.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTrafficMirrorFilterRuleOutcomeCallable DeleteTrafficMirrorFilterRuleCallable(const Model::DeleteTrafficMirrorFilterRuleRequest& request) const; /** *

Deletes the specified Traffic Mirror rule.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTrafficMirrorFilterRuleAsync(const Model::DeleteTrafficMirrorFilterRuleRequest& request, const DeleteTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Traffic Mirror session.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTrafficMirrorSessionOutcome DeleteTrafficMirrorSession(const Model::DeleteTrafficMirrorSessionRequest& request) const; /** *

Deletes the specified Traffic Mirror session.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTrafficMirrorSessionOutcomeCallable DeleteTrafficMirrorSessionCallable(const Model::DeleteTrafficMirrorSessionRequest& request) const; /** *

Deletes the specified Traffic Mirror session.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTrafficMirrorSessionAsync(const Model::DeleteTrafficMirrorSessionRequest& request, const DeleteTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Traffic Mirror target.

You cannot delete a * Traffic Mirror target that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteTrafficMirrorTargetOutcome DeleteTrafficMirrorTarget(const Model::DeleteTrafficMirrorTargetRequest& request) const; /** *

Deletes the specified Traffic Mirror target.

You cannot delete a * Traffic Mirror target that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTrafficMirrorTargetOutcomeCallable DeleteTrafficMirrorTargetCallable(const Model::DeleteTrafficMirrorTargetRequest& request) const; /** *

Deletes the specified Traffic Mirror target.

You cannot delete a * Traffic Mirror target that is in use by a Traffic Mirror session.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTrafficMirrorTargetAsync(const Model::DeleteTrafficMirrorTargetRequest& request, const DeleteTrafficMirrorTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified transit gateway.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayOutcome DeleteTransitGateway(const Model::DeleteTransitGatewayRequest& request) const; /** *

Deletes the specified transit gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayOutcomeCallable DeleteTransitGatewayCallable(const Model::DeleteTransitGatewayRequest& request) const; /** *

Deletes the specified transit gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayAsync(const Model::DeleteTransitGatewayRequest& request, const DeleteTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified transit gateway multicast domain.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayMulticastDomainOutcome DeleteTransitGatewayMulticastDomain(const Model::DeleteTransitGatewayMulticastDomainRequest& request) const; /** *

Deletes the specified transit gateway multicast domain.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayMulticastDomainOutcomeCallable DeleteTransitGatewayMulticastDomainCallable(const Model::DeleteTransitGatewayMulticastDomainRequest& request) const; /** *

Deletes the specified transit gateway multicast domain.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayMulticastDomainAsync(const Model::DeleteTransitGatewayMulticastDomainRequest& request, const DeleteTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a transit gateway peering attachment.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayPeeringAttachmentOutcome DeleteTransitGatewayPeeringAttachment(const Model::DeleteTransitGatewayPeeringAttachmentRequest& request) const; /** *

Deletes a transit gateway peering attachment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayPeeringAttachmentOutcomeCallable DeleteTransitGatewayPeeringAttachmentCallable(const Model::DeleteTransitGatewayPeeringAttachmentRequest& request) const; /** *

Deletes a transit gateway peering attachment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayPeeringAttachmentAsync(const Model::DeleteTransitGatewayPeeringAttachmentRequest& request, const DeleteTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayPrefixListReferenceOutcome DeleteTransitGatewayPrefixListReference(const Model::DeleteTransitGatewayPrefixListReferenceRequest& request) const; /** *

Deletes a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayPrefixListReferenceOutcomeCallable DeleteTransitGatewayPrefixListReferenceCallable(const Model::DeleteTransitGatewayPrefixListReferenceRequest& request) const; /** *

Deletes a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayPrefixListReferenceAsync(const Model::DeleteTransitGatewayPrefixListReferenceRequest& request, const DeleteTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified route from the specified transit gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayRouteOutcome DeleteTransitGatewayRoute(const Model::DeleteTransitGatewayRouteRequest& request) const; /** *

Deletes the specified route from the specified transit gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayRouteOutcomeCallable DeleteTransitGatewayRouteCallable(const Model::DeleteTransitGatewayRouteRequest& request) const; /** *

Deletes the specified route from the specified transit gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayRouteAsync(const Model::DeleteTransitGatewayRouteRequest& request, const DeleteTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified transit gateway route table. You must disassociate the * route table from any transit gateway route tables before you can delete * it.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayRouteTableOutcome DeleteTransitGatewayRouteTable(const Model::DeleteTransitGatewayRouteTableRequest& request) const; /** *

Deletes the specified transit gateway route table. You must disassociate the * route table from any transit gateway route tables before you can delete * it.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayRouteTableOutcomeCallable DeleteTransitGatewayRouteTableCallable(const Model::DeleteTransitGatewayRouteTableRequest& request) const; /** *

Deletes the specified transit gateway route table. You must disassociate the * route table from any transit gateway route tables before you can delete * it.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayRouteTableAsync(const Model::DeleteTransitGatewayRouteTableRequest& request, const DeleteTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified VPC attachment.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTransitGatewayVpcAttachmentOutcome DeleteTransitGatewayVpcAttachment(const Model::DeleteTransitGatewayVpcAttachmentRequest& request) const; /** *

Deletes the specified VPC attachment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTransitGatewayVpcAttachmentOutcomeCallable DeleteTransitGatewayVpcAttachmentCallable(const Model::DeleteTransitGatewayVpcAttachmentRequest& request) const; /** *

Deletes the specified VPC attachment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTransitGatewayVpcAttachmentAsync(const Model::DeleteTransitGatewayVpcAttachmentRequest& request, const DeleteTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified EBS volume. The volume must be in the * available state (not attached to an instance).

The volume * can remain in the deleting state for several minutes.

For * more information, see Deleting * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVolumeOutcome DeleteVolume(const Model::DeleteVolumeRequest& request) const; /** *

Deletes the specified EBS volume. The volume must be in the * available state (not attached to an instance).

The volume * can remain in the deleting state for several minutes.

For * more information, see Deleting * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVolumeOutcomeCallable DeleteVolumeCallable(const Model::DeleteVolumeRequest& request) const; /** *

Deletes the specified EBS volume. The volume must be in the * available state (not attached to an instance).

The volume * can remain in the deleting state for several minutes.

For * more information, see Deleting * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVolumeAsync(const Model::DeleteVolumeRequest& request, const DeleteVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified VPC. You must detach or delete all gateways and * resources that are associated with the VPC before you can delete it. For * example, you must terminate all instances running in the VPC, delete all * security groups associated with the VPC (except the default one), delete all * route tables associated with the VPC (except the default one), and so * on.

See Also:

AWS API * Reference

*/ virtual Model::DeleteVpcOutcome DeleteVpc(const Model::DeleteVpcRequest& request) const; /** *

Deletes the specified VPC. You must detach or delete all gateways and * resources that are associated with the VPC before you can delete it. For * example, you must terminate all instances running in the VPC, delete all * security groups associated with the VPC (except the default one), delete all * route tables associated with the VPC (except the default one), and so * on.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpcOutcomeCallable DeleteVpcCallable(const Model::DeleteVpcRequest& request) const; /** *

Deletes the specified VPC. You must detach or delete all gateways and * resources that are associated with the VPC before you can delete it. For * example, you must terminate all instances running in the VPC, delete all * security groups associated with the VPC (except the default one), delete all * route tables associated with the VPC (except the default one), and so * on.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpcAsync(const Model::DeleteVpcRequest& request, const DeleteVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes one or more VPC endpoint connection notifications.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteVpcEndpointConnectionNotificationsOutcome DeleteVpcEndpointConnectionNotifications(const Model::DeleteVpcEndpointConnectionNotificationsRequest& request) const; /** *

Deletes one or more VPC endpoint connection notifications.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpcEndpointConnectionNotificationsOutcomeCallable DeleteVpcEndpointConnectionNotificationsCallable(const Model::DeleteVpcEndpointConnectionNotificationsRequest& request) const; /** *

Deletes one or more VPC endpoint connection notifications.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpcEndpointConnectionNotificationsAsync(const Model::DeleteVpcEndpointConnectionNotificationsRequest& request, const DeleteVpcEndpointConnectionNotificationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes one or more VPC endpoint service configurations in your account. * Before you delete the endpoint service configuration, you must reject any * Available or PendingAcceptance interface endpoint * connections that are attached to the service.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpcEndpointServiceConfigurationsOutcome DeleteVpcEndpointServiceConfigurations(const Model::DeleteVpcEndpointServiceConfigurationsRequest& request) const; /** *

Deletes one or more VPC endpoint service configurations in your account. * Before you delete the endpoint service configuration, you must reject any * Available or PendingAcceptance interface endpoint * connections that are attached to the service.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpcEndpointServiceConfigurationsOutcomeCallable DeleteVpcEndpointServiceConfigurationsCallable(const Model::DeleteVpcEndpointServiceConfigurationsRequest& request) const; /** *

Deletes one or more VPC endpoint service configurations in your account. * Before you delete the endpoint service configuration, you must reject any * Available or PendingAcceptance interface endpoint * connections that are attached to the service.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpcEndpointServiceConfigurationsAsync(const Model::DeleteVpcEndpointServiceConfigurationsRequest& request, const DeleteVpcEndpointServiceConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also * deletes the endpoint routes in the route tables that were associated with the * endpoint. Deleting an interface endpoint deletes the endpoint network * interfaces.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpcEndpointsOutcome DeleteVpcEndpoints(const Model::DeleteVpcEndpointsRequest& request) const; /** *

Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also * deletes the endpoint routes in the route tables that were associated with the * endpoint. Deleting an interface endpoint deletes the endpoint network * interfaces.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpcEndpointsOutcomeCallable DeleteVpcEndpointsCallable(const Model::DeleteVpcEndpointsRequest& request) const; /** *

Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also * deletes the endpoint routes in the route tables that were associated with the * endpoint. Deleting an interface endpoint deletes the endpoint network * interfaces.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpcEndpointsAsync(const Model::DeleteVpcEndpointsRequest& request, const DeleteVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a VPC peering connection. Either the owner of the requester VPC or * the owner of the accepter VPC can delete the VPC peering connection if it's in * the active state. The owner of the requester VPC can delete a VPC * peering connection in the pending-acceptance state. You cannot * delete a VPC peering connection that's in the failed * state.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpcPeeringConnectionOutcome DeleteVpcPeeringConnection(const Model::DeleteVpcPeeringConnectionRequest& request) const; /** *

Deletes a VPC peering connection. Either the owner of the requester VPC or * the owner of the accepter VPC can delete the VPC peering connection if it's in * the active state. The owner of the requester VPC can delete a VPC * peering connection in the pending-acceptance state. You cannot * delete a VPC peering connection that's in the failed * state.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpcPeeringConnectionOutcomeCallable DeleteVpcPeeringConnectionCallable(const Model::DeleteVpcPeeringConnectionRequest& request) const; /** *

Deletes a VPC peering connection. Either the owner of the requester VPC or * the owner of the accepter VPC can delete the VPC peering connection if it's in * the active state. The owner of the requester VPC can delete a VPC * peering connection in the pending-acceptance state. You cannot * delete a VPC peering connection that's in the failed * state.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpcPeeringConnectionAsync(const Model::DeleteVpcPeeringConnectionRequest& request, const DeleteVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified VPN connection.

If you're deleting the VPC and * its associated components, we recommend that you detach the virtual private * gateway from the VPC and delete the VPC before deleting the VPN connection. If * you believe that the tunnel credentials for your VPN connection have been * compromised, you can delete the VPN connection and create a new one that has new * keys, without needing to delete the VPC or virtual private gateway. If you * create a new VPN connection, you must reconfigure the customer gateway device * using the new configuration information returned with the new VPN connection * ID.

For certificate-based authentication, delete all AWS Certificate * Manager (ACM) private certificates used for the AWS-side tunnel endpoints for * the VPN connection before deleting the VPN connection.

See Also:

* AWS * API Reference

*/ virtual Model::DeleteVpnConnectionOutcome DeleteVpnConnection(const Model::DeleteVpnConnectionRequest& request) const; /** *

Deletes the specified VPN connection.

If you're deleting the VPC and * its associated components, we recommend that you detach the virtual private * gateway from the VPC and delete the VPC before deleting the VPN connection. If * you believe that the tunnel credentials for your VPN connection have been * compromised, you can delete the VPN connection and create a new one that has new * keys, without needing to delete the VPC or virtual private gateway. If you * create a new VPN connection, you must reconfigure the customer gateway device * using the new configuration information returned with the new VPN connection * ID.

For certificate-based authentication, delete all AWS Certificate * Manager (ACM) private certificates used for the AWS-side tunnel endpoints for * the VPN connection before deleting the VPN connection.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpnConnectionOutcomeCallable DeleteVpnConnectionCallable(const Model::DeleteVpnConnectionRequest& request) const; /** *

Deletes the specified VPN connection.

If you're deleting the VPC and * its associated components, we recommend that you detach the virtual private * gateway from the VPC and delete the VPC before deleting the VPN connection. If * you believe that the tunnel credentials for your VPN connection have been * compromised, you can delete the VPN connection and create a new one that has new * keys, without needing to delete the VPC or virtual private gateway. If you * create a new VPN connection, you must reconfigure the customer gateway device * using the new configuration information returned with the new VPN connection * ID.

For certificate-based authentication, delete all AWS Certificate * Manager (ACM) private certificates used for the AWS-side tunnel endpoints for * the VPN connection before deleting the VPN connection.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpnConnectionAsync(const Model::DeleteVpnConnectionRequest& request, const DeleteVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified static route associated with a VPN connection between * an existing virtual private gateway and a VPN customer gateway. The static route * allows traffic to be routed from the virtual private gateway to the VPN customer * gateway.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpnConnectionRouteOutcome DeleteVpnConnectionRoute(const Model::DeleteVpnConnectionRouteRequest& request) const; /** *

Deletes the specified static route associated with a VPN connection between * an existing virtual private gateway and a VPN customer gateway. The static route * allows traffic to be routed from the virtual private gateway to the VPN customer * gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpnConnectionRouteOutcomeCallable DeleteVpnConnectionRouteCallable(const Model::DeleteVpnConnectionRouteRequest& request) const; /** *

Deletes the specified static route associated with a VPN connection between * an existing virtual private gateway and a VPN customer gateway. The static route * allows traffic to be routed from the virtual private gateway to the VPN customer * gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpnConnectionRouteAsync(const Model::DeleteVpnConnectionRouteRequest& request, const DeleteVpnConnectionRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified virtual private gateway. You must first detach the * virtual private gateway from the VPC. Note that you don't need to delete the * virtual private gateway if you plan to delete and recreate the VPN connection * between your VPC and your network.

See Also:

AWS * API Reference

*/ virtual Model::DeleteVpnGatewayOutcome DeleteVpnGateway(const Model::DeleteVpnGatewayRequest& request) const; /** *

Deletes the specified virtual private gateway. You must first detach the * virtual private gateway from the VPC. Note that you don't need to delete the * virtual private gateway if you plan to delete and recreate the VPN connection * between your VPC and your network.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteVpnGatewayOutcomeCallable DeleteVpnGatewayCallable(const Model::DeleteVpnGatewayRequest& request) const; /** *

Deletes the specified virtual private gateway. You must first detach the * virtual private gateway from the VPC. Note that you don't need to delete the * virtual private gateway if you plan to delete and recreate the VPN connection * between your VPC and your network.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteVpnGatewayAsync(const Model::DeleteVpnGatewayRequest& request, const DeleteVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Releases the specified address range that you provisioned for use with your * AWS resources through bring your own IP addresses (BYOIP) and deletes the * corresponding address pool.

Before you can release an address range, you * must stop advertising it using WithdrawByoipCidr and you must not have * any IP addresses allocated from its address range.

See Also:

AWS * API Reference

*/ virtual Model::DeprovisionByoipCidrOutcome DeprovisionByoipCidr(const Model::DeprovisionByoipCidrRequest& request) const; /** *

Releases the specified address range that you provisioned for use with your * AWS resources through bring your own IP addresses (BYOIP) and deletes the * corresponding address pool.

Before you can release an address range, you * must stop advertising it using WithdrawByoipCidr and you must not have * any IP addresses allocated from its address range.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeprovisionByoipCidrOutcomeCallable DeprovisionByoipCidrCallable(const Model::DeprovisionByoipCidrRequest& request) const; /** *

Releases the specified address range that you provisioned for use with your * AWS resources through bring your own IP addresses (BYOIP) and deletes the * corresponding address pool.

Before you can release an address range, you * must stop advertising it using WithdrawByoipCidr and you must not have * any IP addresses allocated from its address range.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeprovisionByoipCidrAsync(const Model::DeprovisionByoipCidrRequest& request, const DeprovisionByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deregisters the specified AMI. After you deregister an AMI, it can't be used * to launch new instances; however, it doesn't affect any instances that you've * already launched from the AMI. You'll continue to incur usage costs for those * instances until you terminate them.

When you deregister an Amazon * EBS-backed AMI, it doesn't affect the snapshot that was created for the root * volume of the instance during the AMI creation process. When you deregister an * instance store-backed AMI, it doesn't affect the files that you uploaded to * Amazon S3 when you created the AMI.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterImageOutcome DeregisterImage(const Model::DeregisterImageRequest& request) const; /** *

Deregisters the specified AMI. After you deregister an AMI, it can't be used * to launch new instances; however, it doesn't affect any instances that you've * already launched from the AMI. You'll continue to incur usage costs for those * instances until you terminate them.

When you deregister an Amazon * EBS-backed AMI, it doesn't affect the snapshot that was created for the root * volume of the instance during the AMI creation process. When you deregister an * instance store-backed AMI, it doesn't affect the files that you uploaded to * Amazon S3 when you created the AMI.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeregisterImageOutcomeCallable DeregisterImageCallable(const Model::DeregisterImageRequest& request) const; /** *

Deregisters the specified AMI. After you deregister an AMI, it can't be used * to launch new instances; however, it doesn't affect any instances that you've * already launched from the AMI. You'll continue to incur usage costs for those * instances until you terminate them.

When you deregister an Amazon * EBS-backed AMI, it doesn't affect the snapshot that was created for the root * volume of the instance during the AMI creation process. When you deregister an * instance store-backed AMI, it doesn't affect the files that you uploaded to * Amazon S3 when you created the AMI.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeregisterImageAsync(const Model::DeregisterImageRequest& request, const DeregisterImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deregisters tag keys to prevent tags that have the specified tag keys from * being included in scheduled event notifications for resources in the * Region.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterInstanceEventNotificationAttributesOutcome DeregisterInstanceEventNotificationAttributes(const Model::DeregisterInstanceEventNotificationAttributesRequest& request) const; /** *

Deregisters tag keys to prevent tags that have the specified tag keys from * being included in scheduled event notifications for resources in the * Region.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeregisterInstanceEventNotificationAttributesOutcomeCallable DeregisterInstanceEventNotificationAttributesCallable(const Model::DeregisterInstanceEventNotificationAttributesRequest& request) const; /** *

Deregisters tag keys to prevent tags that have the specified tag keys from * being included in scheduled event notifications for resources in the * Region.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeregisterInstanceEventNotificationAttributesAsync(const Model::DeregisterInstanceEventNotificationAttributesRequest& request, const DeregisterInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deregisters the specified members (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterTransitGatewayMulticastGroupMembersOutcome DeregisterTransitGatewayMulticastGroupMembers(const Model::DeregisterTransitGatewayMulticastGroupMembersRequest& request) const; /** *

Deregisters the specified members (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeregisterTransitGatewayMulticastGroupMembersOutcomeCallable DeregisterTransitGatewayMulticastGroupMembersCallable(const Model::DeregisterTransitGatewayMulticastGroupMembersRequest& request) const; /** *

Deregisters the specified members (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeregisterTransitGatewayMulticastGroupMembersAsync(const Model::DeregisterTransitGatewayMulticastGroupMembersRequest& request, const DeregisterTransitGatewayMulticastGroupMembersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deregisters the specified sources (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterTransitGatewayMulticastGroupSourcesOutcome DeregisterTransitGatewayMulticastGroupSources(const Model::DeregisterTransitGatewayMulticastGroupSourcesRequest& request) const; /** *

Deregisters the specified sources (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeregisterTransitGatewayMulticastGroupSourcesOutcomeCallable DeregisterTransitGatewayMulticastGroupSourcesCallable(const Model::DeregisterTransitGatewayMulticastGroupSourcesRequest& request) const; /** *

Deregisters the specified sources (network interfaces) from the transit * gateway multicast group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeregisterTransitGatewayMulticastGroupSourcesAsync(const Model::DeregisterTransitGatewayMulticastGroupSourcesRequest& request, const DeregisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes attributes of your AWS account. The following are the supported * account attributes:

  • supported-platforms: * Indicates whether your account can launch instances into EC2-Classic and * EC2-VPC, or only into EC2-VPC.

  • default-vpc: The * ID of the default VPC for your account, or none.

  • * max-instances: This attribute is no longer supported. The returned * value does not reflect your actual vCPU limit for running On-Demand Instances. * For more information, see On-Demand * Instance Limits in the Amazon Elastic Compute Cloud User Guide.

    *
  • vpc-max-security-groups-per-interface: The maximum * number of security groups that you can assign to a network interface.

  • *
  • max-elastic-ips: The maximum number of Elastic IP * addresses that you can allocate for use with EC2-Classic.

  • * vpc-max-elastic-ips: The maximum number of Elastic IP addresses * that you can allocate for use with EC2-VPC.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeAccountAttributesOutcome DescribeAccountAttributes(const Model::DescribeAccountAttributesRequest& request) const; /** *

Describes attributes of your AWS account. The following are the supported * account attributes:

  • supported-platforms: * Indicates whether your account can launch instances into EC2-Classic and * EC2-VPC, or only into EC2-VPC.

  • default-vpc: The * ID of the default VPC for your account, or none.

  • * max-instances: This attribute is no longer supported. The returned * value does not reflect your actual vCPU limit for running On-Demand Instances. * For more information, see On-Demand * Instance Limits in the Amazon Elastic Compute Cloud User Guide.

    *
  • vpc-max-security-groups-per-interface: The maximum * number of security groups that you can assign to a network interface.

  • *
  • max-elastic-ips: The maximum number of Elastic IP * addresses that you can allocate for use with EC2-Classic.

  • * vpc-max-elastic-ips: The maximum number of Elastic IP addresses * that you can allocate for use with EC2-VPC.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAccountAttributesOutcomeCallable DescribeAccountAttributesCallable(const Model::DescribeAccountAttributesRequest& request) const; /** *

Describes attributes of your AWS account. The following are the supported * account attributes:

  • supported-platforms: * Indicates whether your account can launch instances into EC2-Classic and * EC2-VPC, or only into EC2-VPC.

  • default-vpc: The * ID of the default VPC for your account, or none.

  • * max-instances: This attribute is no longer supported. The returned * value does not reflect your actual vCPU limit for running On-Demand Instances. * For more information, see On-Demand * Instance Limits in the Amazon Elastic Compute Cloud User Guide.

    *
  • vpc-max-security-groups-per-interface: The maximum * number of security groups that you can assign to a network interface.

  • *
  • max-elastic-ips: The maximum number of Elastic IP * addresses that you can allocate for use with EC2-Classic.

  • * vpc-max-elastic-ips: The maximum number of Elastic IP addresses * that you can allocate for use with EC2-VPC.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAccountAttributesAsync(const Model::DescribeAccountAttributesRequest& request, const DescribeAccountAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified Elastic IP addresses or all of your Elastic IP * addresses.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAddressesOutcome DescribeAddresses(const Model::DescribeAddressesRequest& request) const; /** *

Describes the specified Elastic IP addresses or all of your Elastic IP * addresses.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAddressesOutcomeCallable DescribeAddressesCallable(const Model::DescribeAddressesRequest& request) const; /** *

Describes the specified Elastic IP addresses or all of your Elastic IP * addresses.

An Elastic IP address is for use in either the EC2-Classic * platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAddressesAsync(const Model::DescribeAddressesRequest& request, const DescribeAddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the longer ID format settings for all resource types in a specific * Region. This request is useful for performing a quick audit to determine whether * a specific Region is fully opted in for longer IDs (17-character IDs).

*

This request only returns information about resource types that support * longer IDs.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeAggregateIdFormatOutcome DescribeAggregateIdFormat(const Model::DescribeAggregateIdFormatRequest& request) const; /** *

Describes the longer ID format settings for all resource types in a specific * Region. This request is useful for performing a quick audit to determine whether * a specific Region is fully opted in for longer IDs (17-character IDs).

*

This request only returns information about resource types that support * longer IDs.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAggregateIdFormatOutcomeCallable DescribeAggregateIdFormatCallable(const Model::DescribeAggregateIdFormatRequest& request) const; /** *

Describes the longer ID format settings for all resource types in a specific * Region. This request is useful for performing a quick audit to determine whether * a specific Region is fully opted in for longer IDs (17-character IDs).

*

This request only returns information about resource types that support * longer IDs.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAggregateIdFormatAsync(const Model::DescribeAggregateIdFormatRequest& request, const DescribeAggregateIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Availability Zones, Local Zones, and Wavelength Zones that are * available to you. If there is an event impacting a zone, you can use this * request to view the state and any provided messages for that zone.

For * more information about Availability Zones, Local Zones, and Wavelength Zones, * see Regions, * Zones and Outposts in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAvailabilityZonesOutcome DescribeAvailabilityZones(const Model::DescribeAvailabilityZonesRequest& request) const; /** *

Describes the Availability Zones, Local Zones, and Wavelength Zones that are * available to you. If there is an event impacting a zone, you can use this * request to view the state and any provided messages for that zone.

For * more information about Availability Zones, Local Zones, and Wavelength Zones, * see Regions, * Zones and Outposts in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAvailabilityZonesOutcomeCallable DescribeAvailabilityZonesCallable(const Model::DescribeAvailabilityZonesRequest& request) const; /** *

Describes the Availability Zones, Local Zones, and Wavelength Zones that are * available to you. If there is an event impacting a zone, you can use this * request to view the state and any provided messages for that zone.

For * more information about Availability Zones, Local Zones, and Wavelength Zones, * see Regions, * Zones and Outposts in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAvailabilityZonesAsync(const Model::DescribeAvailabilityZonesRequest& request, const DescribeAvailabilityZonesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified bundle tasks or all of your bundle tasks.

*

Completed bundle tasks are listed for only a limited time. If your bundle * task is no longer in the list, you can still register an AMI from it. Just use * RegisterImage with the Amazon S3 bucket name and image manifest * name you provided to the bundle task.

See Also:

AWS * API Reference

*/ virtual Model::DescribeBundleTasksOutcome DescribeBundleTasks(const Model::DescribeBundleTasksRequest& request) const; /** *

Describes the specified bundle tasks or all of your bundle tasks.

*

Completed bundle tasks are listed for only a limited time. If your bundle * task is no longer in the list, you can still register an AMI from it. Just use * RegisterImage with the Amazon S3 bucket name and image manifest * name you provided to the bundle task.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeBundleTasksOutcomeCallable DescribeBundleTasksCallable(const Model::DescribeBundleTasksRequest& request) const; /** *

Describes the specified bundle tasks or all of your bundle tasks.

*

Completed bundle tasks are listed for only a limited time. If your bundle * task is no longer in the list, you can still register an AMI from it. Just use * RegisterImage with the Amazon S3 bucket name and image manifest * name you provided to the bundle task.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeBundleTasksAsync(const Model::DescribeBundleTasksRequest& request, const DescribeBundleTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the IP address ranges that were specified in calls to * ProvisionByoipCidr.

To describe the address pools that were * created when you provisioned the address ranges, use * DescribePublicIpv4Pools or DescribeIpv6Pools.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeByoipCidrsOutcome DescribeByoipCidrs(const Model::DescribeByoipCidrsRequest& request) const; /** *

Describes the IP address ranges that were specified in calls to * ProvisionByoipCidr.

To describe the address pools that were * created when you provisioned the address ranges, use * DescribePublicIpv4Pools or DescribeIpv6Pools.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeByoipCidrsOutcomeCallable DescribeByoipCidrsCallable(const Model::DescribeByoipCidrsRequest& request) const; /** *

Describes the IP address ranges that were specified in calls to * ProvisionByoipCidr.

To describe the address pools that were * created when you provisioned the address ranges, use * DescribePublicIpv4Pools or DescribeIpv6Pools.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeByoipCidrsAsync(const Model::DescribeByoipCidrsRequest& request, const DescribeByoipCidrsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your Capacity Reservations. The results describe * only the Capacity Reservations in the AWS Region that you're currently * using.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCapacityReservationsOutcome DescribeCapacityReservations(const Model::DescribeCapacityReservationsRequest& request) const; /** *

Describes one or more of your Capacity Reservations. The results describe * only the Capacity Reservations in the AWS Region that you're currently * using.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeCapacityReservationsOutcomeCallable DescribeCapacityReservationsCallable(const Model::DescribeCapacityReservationsRequest& request) const; /** *

Describes one or more of your Capacity Reservations. The results describe * only the Capacity Reservations in the AWS Region that you're currently * using.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeCapacityReservationsAsync(const Model::DescribeCapacityReservationsRequest& request, const DescribeCapacityReservationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your carrier gateways.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCarrierGatewaysOutcome DescribeCarrierGateways(const Model::DescribeCarrierGatewaysRequest& request) const; /** *

Describes one or more of your carrier gateways.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeCarrierGatewaysOutcomeCallable DescribeCarrierGatewaysCallable(const Model::DescribeCarrierGatewaysRequest& request) const; /** *

Describes one or more of your carrier gateways.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeCarrierGatewaysAsync(const Model::DescribeCarrierGatewaysRequest& request, const DescribeCarrierGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your linked EC2-Classic instances. This request only * returns information about EC2-Classic instances linked to a VPC through * ClassicLink. You cannot use this request to return information about other * instances.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClassicLinkInstancesOutcome DescribeClassicLinkInstances(const Model::DescribeClassicLinkInstancesRequest& request) const; /** *

Describes one or more of your linked EC2-Classic instances. This request only * returns information about EC2-Classic instances linked to a VPC through * ClassicLink. You cannot use this request to return information about other * instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClassicLinkInstancesOutcomeCallable DescribeClassicLinkInstancesCallable(const Model::DescribeClassicLinkInstancesRequest& request) const; /** *

Describes one or more of your linked EC2-Classic instances. This request only * returns information about EC2-Classic instances linked to a VPC through * ClassicLink. You cannot use this request to return information about other * instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClassicLinkInstancesAsync(const Model::DescribeClassicLinkInstancesRequest& request, const DescribeClassicLinkInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the authorization rules for a specified Client VPN * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClientVpnAuthorizationRulesOutcome DescribeClientVpnAuthorizationRules(const Model::DescribeClientVpnAuthorizationRulesRequest& request) const; /** *

Describes the authorization rules for a specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClientVpnAuthorizationRulesOutcomeCallable DescribeClientVpnAuthorizationRulesCallable(const Model::DescribeClientVpnAuthorizationRulesRequest& request) const; /** *

Describes the authorization rules for a specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClientVpnAuthorizationRulesAsync(const Model::DescribeClientVpnAuthorizationRulesRequest& request, const DescribeClientVpnAuthorizationRulesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes active client connections and connections that have been terminated * within the last 60 minutes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClientVpnConnectionsOutcome DescribeClientVpnConnections(const Model::DescribeClientVpnConnectionsRequest& request) const; /** *

Describes active client connections and connections that have been terminated * within the last 60 minutes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClientVpnConnectionsOutcomeCallable DescribeClientVpnConnectionsCallable(const Model::DescribeClientVpnConnectionsRequest& request) const; /** *

Describes active client connections and connections that have been terminated * within the last 60 minutes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClientVpnConnectionsAsync(const Model::DescribeClientVpnConnectionsRequest& request, const DescribeClientVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more Client VPN endpoints in the account.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClientVpnEndpointsOutcome DescribeClientVpnEndpoints(const Model::DescribeClientVpnEndpointsRequest& request) const; /** *

Describes one or more Client VPN endpoints in the account.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClientVpnEndpointsOutcomeCallable DescribeClientVpnEndpointsCallable(const Model::DescribeClientVpnEndpointsRequest& request) const; /** *

Describes one or more Client VPN endpoints in the account.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClientVpnEndpointsAsync(const Model::DescribeClientVpnEndpointsRequest& request, const DescribeClientVpnEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the routes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClientVpnRoutesOutcome DescribeClientVpnRoutes(const Model::DescribeClientVpnRoutesRequest& request) const; /** *

Describes the routes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClientVpnRoutesOutcomeCallable DescribeClientVpnRoutesCallable(const Model::DescribeClientVpnRoutesRequest& request) const; /** *

Describes the routes for the specified Client VPN endpoint.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClientVpnRoutesAsync(const Model::DescribeClientVpnRoutesRequest& request, const DescribeClientVpnRoutesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the target networks associated with the specified Client VPN * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClientVpnTargetNetworksOutcome DescribeClientVpnTargetNetworks(const Model::DescribeClientVpnTargetNetworksRequest& request) const; /** *

Describes the target networks associated with the specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClientVpnTargetNetworksOutcomeCallable DescribeClientVpnTargetNetworksCallable(const Model::DescribeClientVpnTargetNetworksRequest& request) const; /** *

Describes the target networks associated with the specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClientVpnTargetNetworksAsync(const Model::DescribeClientVpnTargetNetworksRequest& request, const DescribeClientVpnTargetNetworksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified customer-owned address pools or all of your * customer-owned address pools.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCoipPoolsOutcome DescribeCoipPools(const Model::DescribeCoipPoolsRequest& request) const; /** *

Describes the specified customer-owned address pools or all of your * customer-owned address pools.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeCoipPoolsOutcomeCallable DescribeCoipPoolsCallable(const Model::DescribeCoipPoolsRequest& request) const; /** *

Describes the specified customer-owned address pools or all of your * customer-owned address pools.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeCoipPoolsAsync(const Model::DescribeCoipPoolsRequest& request, const DescribeCoipPoolsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified conversion tasks or all your conversion tasks. For * more information, see the VM Import/Export * User Guide.

For information about the import manifest referenced by * this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

*/ virtual Model::DescribeConversionTasksOutcome DescribeConversionTasks(const Model::DescribeConversionTasksRequest& request) const; /** *

Describes the specified conversion tasks or all your conversion tasks. For * more information, see the VM Import/Export * User Guide.

For information about the import manifest referenced by * this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeConversionTasksOutcomeCallable DescribeConversionTasksCallable(const Model::DescribeConversionTasksRequest& request) const; /** *

Describes the specified conversion tasks or all your conversion tasks. For * more information, see the VM Import/Export * User Guide.

For information about the import manifest referenced by * this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeConversionTasksAsync(const Model::DescribeConversionTasksRequest& request, const DescribeConversionTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your VPN customer gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCustomerGatewaysOutcome DescribeCustomerGateways(const Model::DescribeCustomerGatewaysRequest& request) const; /** *

Describes one or more of your VPN customer gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeCustomerGatewaysOutcomeCallable DescribeCustomerGatewaysCallable(const Model::DescribeCustomerGatewaysRequest& request) const; /** *

Describes one or more of your VPN customer gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeCustomerGatewaysAsync(const Model::DescribeCustomerGatewaysRequest& request, const DescribeCustomerGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your DHCP options sets.

For more information, * see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDhcpOptionsOutcome DescribeDhcpOptions(const Model::DescribeDhcpOptionsRequest& request) const; /** *

Describes one or more of your DHCP options sets.

For more information, * see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeDhcpOptionsOutcomeCallable DescribeDhcpOptionsCallable(const Model::DescribeDhcpOptionsRequest& request) const; /** *

Describes one or more of your DHCP options sets.

For more information, * see DHCP * Options Sets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeDhcpOptionsAsync(const Model::DescribeDhcpOptionsRequest& request, const DescribeDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your egress-only internet gateways.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeEgressOnlyInternetGatewaysOutcome DescribeEgressOnlyInternetGateways(const Model::DescribeEgressOnlyInternetGatewaysRequest& request) const; /** *

Describes one or more of your egress-only internet gateways.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEgressOnlyInternetGatewaysOutcomeCallable DescribeEgressOnlyInternetGatewaysCallable(const Model::DescribeEgressOnlyInternetGatewaysRequest& request) const; /** *

Describes one or more of your egress-only internet gateways.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEgressOnlyInternetGatewaysAsync(const Model::DescribeEgressOnlyInternetGatewaysRequest& request, const DescribeEgressOnlyInternetGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Elastic Graphics accelerator associated with your instances. * For more information about Elastic Graphics, see Amazon * Elastic Graphics.

See Also:

AWS * API Reference

*/ virtual Model::DescribeElasticGpusOutcome DescribeElasticGpus(const Model::DescribeElasticGpusRequest& request) const; /** *

Describes the Elastic Graphics accelerator associated with your instances. * For more information about Elastic Graphics, see Amazon * Elastic Graphics.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeElasticGpusOutcomeCallable DescribeElasticGpusCallable(const Model::DescribeElasticGpusRequest& request) const; /** *

Describes the Elastic Graphics accelerator associated with your instances. * For more information about Elastic Graphics, see Amazon * Elastic Graphics.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeElasticGpusAsync(const Model::DescribeElasticGpusRequest& request, const DescribeElasticGpusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified export image tasks or all of your export image * tasks.

See Also:

AWS * API Reference

*/ virtual Model::DescribeExportImageTasksOutcome DescribeExportImageTasks(const Model::DescribeExportImageTasksRequest& request) const; /** *

Describes the specified export image tasks or all of your export image * tasks.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeExportImageTasksOutcomeCallable DescribeExportImageTasksCallable(const Model::DescribeExportImageTasksRequest& request) const; /** *

Describes the specified export image tasks or all of your export image * tasks.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeExportImageTasksAsync(const Model::DescribeExportImageTasksRequest& request, const DescribeExportImageTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified export instance tasks or all of your export instance * tasks.

See Also:

AWS * API Reference

*/ virtual Model::DescribeExportTasksOutcome DescribeExportTasks(const Model::DescribeExportTasksRequest& request) const; /** *

Describes the specified export instance tasks or all of your export instance * tasks.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeExportTasksOutcomeCallable DescribeExportTasksCallable(const Model::DescribeExportTasksRequest& request) const; /** *

Describes the specified export instance tasks or all of your export instance * tasks.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeExportTasksAsync(const Model::DescribeExportTasksRequest& request, const DescribeExportTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the state of fast snapshot restores for your * snapshots.

See Also:

AWS * API Reference

*/ virtual Model::DescribeFastSnapshotRestoresOutcome DescribeFastSnapshotRestores(const Model::DescribeFastSnapshotRestoresRequest& request) const; /** *

Describes the state of fast snapshot restores for your * snapshots.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFastSnapshotRestoresOutcomeCallable DescribeFastSnapshotRestoresCallable(const Model::DescribeFastSnapshotRestoresRequest& request) const; /** *

Describes the state of fast snapshot restores for your * snapshots.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFastSnapshotRestoresAsync(const Model::DescribeFastSnapshotRestoresRequest& request, const DescribeFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the events for the specified EC2 Fleet during the specified * time.

EC2 Fleet events are delayed by up to 30 seconds before they can be * described. This ensures that you can query by the last evaluated time and not * miss a recorded event. EC2 Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

*/ virtual Model::DescribeFleetHistoryOutcome DescribeFleetHistory(const Model::DescribeFleetHistoryRequest& request) const; /** *

Describes the events for the specified EC2 Fleet during the specified * time.

EC2 Fleet events are delayed by up to 30 seconds before they can be * described. This ensures that you can query by the last evaluated time and not * miss a recorded event. EC2 Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFleetHistoryOutcomeCallable DescribeFleetHistoryCallable(const Model::DescribeFleetHistoryRequest& request) const; /** *

Describes the events for the specified EC2 Fleet during the specified * time.

EC2 Fleet events are delayed by up to 30 seconds before they can be * described. This ensures that you can query by the last evaluated time and not * miss a recorded event. EC2 Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFleetHistoryAsync(const Model::DescribeFleetHistoryRequest& request, const DescribeFleetHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the running instances for the specified EC2 Fleet.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeFleetInstancesOutcome DescribeFleetInstances(const Model::DescribeFleetInstancesRequest& request) const; /** *

Describes the running instances for the specified EC2 Fleet.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFleetInstancesOutcomeCallable DescribeFleetInstancesCallable(const Model::DescribeFleetInstancesRequest& request) const; /** *

Describes the running instances for the specified EC2 Fleet.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFleetInstancesAsync(const Model::DescribeFleetInstancesRequest& request, const DescribeFleetInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified EC2 Fleets or all of your EC2 Fleets.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeFleetsOutcome DescribeFleets(const Model::DescribeFleetsRequest& request) const; /** *

Describes the specified EC2 Fleets or all of your EC2 Fleets.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFleetsOutcomeCallable DescribeFleetsCallable(const Model::DescribeFleetsRequest& request) const; /** *

Describes the specified EC2 Fleets or all of your EC2 Fleets.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFleetsAsync(const Model::DescribeFleetsRequest& request, const DescribeFleetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more flow logs. To view the information in your flow logs * (the log streams for the network interfaces), you must use the CloudWatch Logs * console or the CloudWatch Logs API.

See Also:

AWS * API Reference

*/ virtual Model::DescribeFlowLogsOutcome DescribeFlowLogs(const Model::DescribeFlowLogsRequest& request) const; /** *

Describes one or more flow logs. To view the information in your flow logs * (the log streams for the network interfaces), you must use the CloudWatch Logs * console or the CloudWatch Logs API.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFlowLogsOutcomeCallable DescribeFlowLogsCallable(const Model::DescribeFlowLogsRequest& request) const; /** *

Describes one or more flow logs. To view the information in your flow logs * (the log streams for the network interfaces), you must use the CloudWatch Logs * console or the CloudWatch Logs API.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFlowLogsAsync(const Model::DescribeFlowLogsRequest& request, const DescribeFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

*/ virtual Model::DescribeFpgaImageAttributeOutcome DescribeFpgaImageAttribute(const Model::DescribeFpgaImageAttributeRequest& request) const; /** *

Describes the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFpgaImageAttributeOutcomeCallable DescribeFpgaImageAttributeCallable(const Model::DescribeFpgaImageAttributeRequest& request) const; /** *

Describes the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFpgaImageAttributeAsync(const Model::DescribeFpgaImageAttributeRequest& request, const DescribeFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Amazon FPGA Images (AFIs) available to you. These include * public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for * which you have load permissions.

See Also:

AWS * API Reference

*/ virtual Model::DescribeFpgaImagesOutcome DescribeFpgaImages(const Model::DescribeFpgaImagesRequest& request) const; /** *

Describes the Amazon FPGA Images (AFIs) available to you. These include * public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for * which you have load permissions.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeFpgaImagesOutcomeCallable DescribeFpgaImagesCallable(const Model::DescribeFpgaImagesRequest& request) const; /** *

Describes the Amazon FPGA Images (AFIs) available to you. These include * public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for * which you have load permissions.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeFpgaImagesAsync(const Model::DescribeFpgaImagesRequest& request, const DescribeFpgaImagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Dedicated Host reservations that are available to purchase.

*

The results describe all of the Dedicated Host reservation offerings, * including offerings that might not match the instance family and Region of your * Dedicated Hosts. When purchasing an offering, ensure that the instance family * and Region of the offering matches that of the Dedicated Hosts with which it is * to be associated. For more information about supported instance types, see Dedicated * Hosts Overview in the Amazon Elastic Compute Cloud User Guide. *

See Also:

AWS * API Reference

*/ virtual Model::DescribeHostReservationOfferingsOutcome DescribeHostReservationOfferings(const Model::DescribeHostReservationOfferingsRequest& request) const; /** *

Describes the Dedicated Host reservations that are available to purchase.

*

The results describe all of the Dedicated Host reservation offerings, * including offerings that might not match the instance family and Region of your * Dedicated Hosts. When purchasing an offering, ensure that the instance family * and Region of the offering matches that of the Dedicated Hosts with which it is * to be associated. For more information about supported instance types, see Dedicated * Hosts Overview in the Amazon Elastic Compute Cloud User Guide. *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeHostReservationOfferingsOutcomeCallable DescribeHostReservationOfferingsCallable(const Model::DescribeHostReservationOfferingsRequest& request) const; /** *

Describes the Dedicated Host reservations that are available to purchase.

*

The results describe all of the Dedicated Host reservation offerings, * including offerings that might not match the instance family and Region of your * Dedicated Hosts. When purchasing an offering, ensure that the instance family * and Region of the offering matches that of the Dedicated Hosts with which it is * to be associated. For more information about supported instance types, see Dedicated * Hosts Overview in the Amazon Elastic Compute Cloud User Guide. *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeHostReservationOfferingsAsync(const Model::DescribeHostReservationOfferingsRequest& request, const DescribeHostReservationOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes reservations that are associated with Dedicated Hosts in your * account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeHostReservationsOutcome DescribeHostReservations(const Model::DescribeHostReservationsRequest& request) const; /** *

Describes reservations that are associated with Dedicated Hosts in your * account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeHostReservationsOutcomeCallable DescribeHostReservationsCallable(const Model::DescribeHostReservationsRequest& request) const; /** *

Describes reservations that are associated with Dedicated Hosts in your * account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeHostReservationsAsync(const Model::DescribeHostReservationsRequest& request, const DescribeHostReservationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified Dedicated Hosts or all your Dedicated Hosts.

*

The results describe only the Dedicated Hosts in the Region you're currently * using. All listed instances consume capacity on your Dedicated Host. Dedicated * Hosts that have recently been released are listed with the state * released.

See Also:

AWS * API Reference

*/ virtual Model::DescribeHostsOutcome DescribeHosts(const Model::DescribeHostsRequest& request) const; /** *

Describes the specified Dedicated Hosts or all your Dedicated Hosts.

*

The results describe only the Dedicated Hosts in the Region you're currently * using. All listed instances consume capacity on your Dedicated Host. Dedicated * Hosts that have recently been released are listed with the state * released.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeHostsOutcomeCallable DescribeHostsCallable(const Model::DescribeHostsRequest& request) const; /** *

Describes the specified Dedicated Hosts or all your Dedicated Hosts.

*

The results describe only the Dedicated Hosts in the Region you're currently * using. All listed instances consume capacity on your Dedicated Host. Dedicated * Hosts that have recently been released are listed with the state * released.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeHostsAsync(const Model::DescribeHostsRequest& request, const DescribeHostsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your IAM instance profile associations.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeIamInstanceProfileAssociationsOutcome DescribeIamInstanceProfileAssociations(const Model::DescribeIamInstanceProfileAssociationsRequest& request) const; /** *

Describes your IAM instance profile associations.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeIamInstanceProfileAssociationsOutcomeCallable DescribeIamInstanceProfileAssociationsCallable(const Model::DescribeIamInstanceProfileAssociationsRequest& request) const; /** *

Describes your IAM instance profile associations.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeIamInstanceProfileAssociationsAsync(const Model::DescribeIamInstanceProfileAssociationsRequest& request, const DescribeIamInstanceProfileAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the ID format settings for your resources on a per-Region basis, * for example, to view which resource types are enabled for longer IDs. This * request only returns information about resource types whose ID formats can be * modified; it does not return information about other resource types.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the IAM user who makes the request; they do not apply to the entire AWS * account. By default, an IAM user defaults to the same settings as the root user, * unless they explicitly override the settings by running the * ModifyIdFormat command. Resources created with longer IDs are visible to * all IAM users, regardless of these settings and provided that they have * permission to use the relevant Describe command for the resource * type.

See Also:

AWS * API Reference

*/ virtual Model::DescribeIdFormatOutcome DescribeIdFormat(const Model::DescribeIdFormatRequest& request) const; /** *

Describes the ID format settings for your resources on a per-Region basis, * for example, to view which resource types are enabled for longer IDs. This * request only returns information about resource types whose ID formats can be * modified; it does not return information about other resource types.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the IAM user who makes the request; they do not apply to the entire AWS * account. By default, an IAM user defaults to the same settings as the root user, * unless they explicitly override the settings by running the * ModifyIdFormat command. Resources created with longer IDs are visible to * all IAM users, regardless of these settings and provided that they have * permission to use the relevant Describe command for the resource * type.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeIdFormatOutcomeCallable DescribeIdFormatCallable(const Model::DescribeIdFormatRequest& request) const; /** *

Describes the ID format settings for your resources on a per-Region basis, * for example, to view which resource types are enabled for longer IDs. This * request only returns information about resource types whose ID formats can be * modified; it does not return information about other resource types.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the IAM user who makes the request; they do not apply to the entire AWS * account. By default, an IAM user defaults to the same settings as the root user, * unless they explicitly override the settings by running the * ModifyIdFormat command. Resources created with longer IDs are visible to * all IAM users, regardless of these settings and provided that they have * permission to use the relevant Describe command for the resource * type.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeIdFormatAsync(const Model::DescribeIdFormatRequest& request, const DescribeIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the ID format settings for resources for the specified IAM user, * IAM role, or root user. For example, you can view the resource types that are * enabled for longer IDs. This request only returns information about resource * types whose ID formats can be modified; it does not return information about * other resource types. For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the principal specified in the request. They do not apply to the * principal that makes the request.

See Also:

AWS * API Reference

*/ virtual Model::DescribeIdentityIdFormatOutcome DescribeIdentityIdFormat(const Model::DescribeIdentityIdFormatRequest& request) const; /** *

Describes the ID format settings for resources for the specified IAM user, * IAM role, or root user. For example, you can view the resource types that are * enabled for longer IDs. This request only returns information about resource * types whose ID formats can be modified; it does not return information about * other resource types. For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the principal specified in the request. They do not apply to the * principal that makes the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeIdentityIdFormatOutcomeCallable DescribeIdentityIdFormatCallable(const Model::DescribeIdentityIdFormatRequest& request) const; /** *

Describes the ID format settings for resources for the specified IAM user, * IAM role, or root user. For example, you can view the resource types that are * enabled for longer IDs. This request only returns information about resource * types whose ID formats can be modified; it does not return information about * other resource types. For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

The * following resource types support longer IDs: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * instance | internet-gateway | network-acl * | network-acl-association | network-interface | * network-interface-attachment | prefix-list | * reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

These settings * apply to the principal specified in the request. They do not apply to the * principal that makes the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeIdentityIdFormatAsync(const Model::DescribeIdentityIdFormatRequest& request, const DescribeIdentityIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified AMI. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

*/ virtual Model::DescribeImageAttributeOutcome DescribeImageAttribute(const Model::DescribeImageAttributeRequest& request) const; /** *

Describes the specified attribute of the specified AMI. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeImageAttributeOutcomeCallable DescribeImageAttributeCallable(const Model::DescribeImageAttributeRequest& request) const; /** *

Describes the specified attribute of the specified AMI. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeImageAttributeAsync(const Model::DescribeImageAttributeRequest& request, const DescribeImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified images (AMIs, AKIs, and ARIs) available to you or all * of the images available to you.

The images available to you include * public images, private images that you own, and private images owned by other * AWS accounts for which you have explicit launch permissions.

Recently * deregistered images appear in the returned results for a short interval and then * return empty results. After all instances that reference a deregistered AMI are * terminated, specifying the ID of the image results in an error indicating that * the AMI ID cannot be found.

See Also:

AWS * API Reference

*/ virtual Model::DescribeImagesOutcome DescribeImages(const Model::DescribeImagesRequest& request) const; /** *

Describes the specified images (AMIs, AKIs, and ARIs) available to you or all * of the images available to you.

The images available to you include * public images, private images that you own, and private images owned by other * AWS accounts for which you have explicit launch permissions.

Recently * deregistered images appear in the returned results for a short interval and then * return empty results. After all instances that reference a deregistered AMI are * terminated, specifying the ID of the image results in an error indicating that * the AMI ID cannot be found.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeImagesOutcomeCallable DescribeImagesCallable(const Model::DescribeImagesRequest& request) const; /** *

Describes the specified images (AMIs, AKIs, and ARIs) available to you or all * of the images available to you.

The images available to you include * public images, private images that you own, and private images owned by other * AWS accounts for which you have explicit launch permissions.

Recently * deregistered images appear in the returned results for a short interval and then * return empty results. After all instances that reference a deregistered AMI are * terminated, specifying the ID of the image results in an error indicating that * the AMI ID cannot be found.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeImagesAsync(const Model::DescribeImagesRequest& request, const DescribeImagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Displays details about an import virtual machine or import snapshot tasks * that are already created.

See Also:

AWS * API Reference

*/ virtual Model::DescribeImportImageTasksOutcome DescribeImportImageTasks(const Model::DescribeImportImageTasksRequest& request) const; /** *

Displays details about an import virtual machine or import snapshot tasks * that are already created.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeImportImageTasksOutcomeCallable DescribeImportImageTasksCallable(const Model::DescribeImportImageTasksRequest& request) const; /** *

Displays details about an import virtual machine or import snapshot tasks * that are already created.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeImportImageTasksAsync(const Model::DescribeImportImageTasksRequest& request, const DescribeImportImageTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your import snapshot tasks.

See Also:

AWS * API Reference

*/ virtual Model::DescribeImportSnapshotTasksOutcome DescribeImportSnapshotTasks(const Model::DescribeImportSnapshotTasksRequest& request) const; /** *

Describes your import snapshot tasks.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeImportSnapshotTasksOutcomeCallable DescribeImportSnapshotTasksCallable(const Model::DescribeImportSnapshotTasksRequest& request) const; /** *

Describes your import snapshot tasks.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeImportSnapshotTasksAsync(const Model::DescribeImportSnapshotTasksRequest& request, const DescribeImportSnapshotTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified instance. You can specify * only one attribute at a time. Valid attribute values are: * instanceType | kernel | ramdisk | * userData | disableApiTermination | * instanceInitiatedShutdownBehavior | rootDeviceName | * blockDeviceMapping | productCodes | * sourceDestCheck | groupSet | ebsOptimized * | sriovNetSupport

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceAttributeOutcome DescribeInstanceAttribute(const Model::DescribeInstanceAttributeRequest& request) const; /** *

Describes the specified attribute of the specified instance. You can specify * only one attribute at a time. Valid attribute values are: * instanceType | kernel | ramdisk | * userData | disableApiTermination | * instanceInitiatedShutdownBehavior | rootDeviceName | * blockDeviceMapping | productCodes | * sourceDestCheck | groupSet | ebsOptimized * | sriovNetSupport

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceAttributeOutcomeCallable DescribeInstanceAttributeCallable(const Model::DescribeInstanceAttributeRequest& request) const; /** *

Describes the specified attribute of the specified instance. You can specify * only one attribute at a time. Valid attribute values are: * instanceType | kernel | ramdisk | * userData | disableApiTermination | * instanceInitiatedShutdownBehavior | rootDeviceName | * blockDeviceMapping | productCodes | * sourceDestCheck | groupSet | ebsOptimized * | sriovNetSupport

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceAttributeAsync(const Model::DescribeInstanceAttributeRequest& request, const DescribeInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the credit option for CPU usage of the specified burstable * performance instances. The credit options are standard and * unlimited.

If you do not specify an instance ID, Amazon EC2 * returns burstable performance instances with the unlimited credit * option, as well as instances that were previously configured as T2, T3, and T3a * with the unlimited credit option. For example, if you resize a T2 * instance, while it is configured as unlimited, to an M4 instance, * Amazon EC2 returns the M4 instance.

If you specify one or more instance * IDs, Amazon EC2 returns the credit option (standard or * unlimited) of those instances. If you specify an instance ID that * is not valid, such as an instance that is not a burstable performance instance, * an error is returned.

Recently terminated instances might appear in the * returned results. This interval is usually less than one hour.

If an * Availability Zone is experiencing a service disruption and you specify instance * IDs in the affected zone, or do not specify any instance IDs at all, the call * fails. If you specify only instance IDs in an unaffected zone, the call works * normally.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceCreditSpecificationsOutcome DescribeInstanceCreditSpecifications(const Model::DescribeInstanceCreditSpecificationsRequest& request) const; /** *

Describes the credit option for CPU usage of the specified burstable * performance instances. The credit options are standard and * unlimited.

If you do not specify an instance ID, Amazon EC2 * returns burstable performance instances with the unlimited credit * option, as well as instances that were previously configured as T2, T3, and T3a * with the unlimited credit option. For example, if you resize a T2 * instance, while it is configured as unlimited, to an M4 instance, * Amazon EC2 returns the M4 instance.

If you specify one or more instance * IDs, Amazon EC2 returns the credit option (standard or * unlimited) of those instances. If you specify an instance ID that * is not valid, such as an instance that is not a burstable performance instance, * an error is returned.

Recently terminated instances might appear in the * returned results. This interval is usually less than one hour.

If an * Availability Zone is experiencing a service disruption and you specify instance * IDs in the affected zone, or do not specify any instance IDs at all, the call * fails. If you specify only instance IDs in an unaffected zone, the call works * normally.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceCreditSpecificationsOutcomeCallable DescribeInstanceCreditSpecificationsCallable(const Model::DescribeInstanceCreditSpecificationsRequest& request) const; /** *

Describes the credit option for CPU usage of the specified burstable * performance instances. The credit options are standard and * unlimited.

If you do not specify an instance ID, Amazon EC2 * returns burstable performance instances with the unlimited credit * option, as well as instances that were previously configured as T2, T3, and T3a * with the unlimited credit option. For example, if you resize a T2 * instance, while it is configured as unlimited, to an M4 instance, * Amazon EC2 returns the M4 instance.

If you specify one or more instance * IDs, Amazon EC2 returns the credit option (standard or * unlimited) of those instances. If you specify an instance ID that * is not valid, such as an instance that is not a burstable performance instance, * an error is returned.

Recently terminated instances might appear in the * returned results. This interval is usually less than one hour.

If an * Availability Zone is experiencing a service disruption and you specify instance * IDs in the affected zone, or do not specify any instance IDs at all, the call * fails. If you specify only instance IDs in an unaffected zone, the call works * normally.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceCreditSpecificationsAsync(const Model::DescribeInstanceCreditSpecificationsRequest& request, const DescribeInstanceCreditSpecificationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the tag keys that are registered to appear in scheduled event * notifications for resources in the current Region.

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceEventNotificationAttributesOutcome DescribeInstanceEventNotificationAttributes(const Model::DescribeInstanceEventNotificationAttributesRequest& request) const; /** *

Describes the tag keys that are registered to appear in scheduled event * notifications for resources in the current Region.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceEventNotificationAttributesOutcomeCallable DescribeInstanceEventNotificationAttributesCallable(const Model::DescribeInstanceEventNotificationAttributesRequest& request) const; /** *

Describes the tag keys that are registered to appear in scheduled event * notifications for resources in the current Region.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceEventNotificationAttributesAsync(const Model::DescribeInstanceEventNotificationAttributesRequest& request, const DescribeInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the status of the specified instances or all of your instances. By * default, only running instances are described, unless you specifically indicate * to return the status of all instances.

Instance status includes the * following components:

  • Status checks - Amazon EC2 * performs status checks on running EC2 instances to identify hardware and * software issues. For more information, see Status * checks for your instances and Troubleshooting * instances with failed status checks in the Amazon Elastic Compute Cloud * User Guide.

  • Scheduled events - Amazon EC2 can * schedule events (such as reboot, stop, or terminate) for your instances related * to hardware issues, software updates, or system maintenance. For more * information, see Scheduled * events for your instances in the Amazon Elastic Compute Cloud User * Guide.

  • Instance state - You can manage your * instances from the moment you launch them through their termination. For more * information, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

  • *

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceStatusOutcome DescribeInstanceStatus(const Model::DescribeInstanceStatusRequest& request) const; /** *

Describes the status of the specified instances or all of your instances. By * default, only running instances are described, unless you specifically indicate * to return the status of all instances.

Instance status includes the * following components:

  • Status checks - Amazon EC2 * performs status checks on running EC2 instances to identify hardware and * software issues. For more information, see Status * checks for your instances and Troubleshooting * instances with failed status checks in the Amazon Elastic Compute Cloud * User Guide.

  • Scheduled events - Amazon EC2 can * schedule events (such as reboot, stop, or terminate) for your instances related * to hardware issues, software updates, or system maintenance. For more * information, see Scheduled * events for your instances in the Amazon Elastic Compute Cloud User * Guide.

  • Instance state - You can manage your * instances from the moment you launch them through their termination. For more * information, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

  • *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceStatusOutcomeCallable DescribeInstanceStatusCallable(const Model::DescribeInstanceStatusRequest& request) const; /** *

Describes the status of the specified instances or all of your instances. By * default, only running instances are described, unless you specifically indicate * to return the status of all instances.

Instance status includes the * following components:

  • Status checks - Amazon EC2 * performs status checks on running EC2 instances to identify hardware and * software issues. For more information, see Status * checks for your instances and Troubleshooting * instances with failed status checks in the Amazon Elastic Compute Cloud * User Guide.

  • Scheduled events - Amazon EC2 can * schedule events (such as reboot, stop, or terminate) for your instances related * to hardware issues, software updates, or system maintenance. For more * information, see Scheduled * events for your instances in the Amazon Elastic Compute Cloud User * Guide.

  • Instance state - You can manage your * instances from the moment you launch them through their termination. For more * information, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

  • *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceStatusAsync(const Model::DescribeInstanceStatusRequest& request, const DescribeInstanceStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of all instance types offered. The results can be filtered by * location (Region or Availability Zone). If no location is specified, the * instance types offered in the current Region are returned.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceTypeOfferingsOutcome DescribeInstanceTypeOfferings(const Model::DescribeInstanceTypeOfferingsRequest& request) const; /** *

Returns a list of all instance types offered. The results can be filtered by * location (Region or Availability Zone). If no location is specified, the * instance types offered in the current Region are returned.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceTypeOfferingsOutcomeCallable DescribeInstanceTypeOfferingsCallable(const Model::DescribeInstanceTypeOfferingsRequest& request) const; /** *

Returns a list of all instance types offered. The results can be filtered by * location (Region or Availability Zone). If no location is specified, the * instance types offered in the current Region are returned.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceTypeOfferingsAsync(const Model::DescribeInstanceTypeOfferingsRequest& request, const DescribeInstanceTypeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the details of the instance types that are offered in a location. * The results can be filtered by the attributes of the instance * types.

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstanceTypesOutcome DescribeInstanceTypes(const Model::DescribeInstanceTypesRequest& request) const; /** *

Describes the details of the instance types that are offered in a location. * The results can be filtered by the attributes of the instance * types.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstanceTypesOutcomeCallable DescribeInstanceTypesCallable(const Model::DescribeInstanceTypesRequest& request) const; /** *

Describes the details of the instance types that are offered in a location. * The results can be filtered by the attributes of the instance * types.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstanceTypesAsync(const Model::DescribeInstanceTypesRequest& request, const DescribeInstanceTypesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified instances or all instances.

If you specify * instance IDs, the output includes information for only the specified instances. * If you specify filters, the output includes information for only those instances * that meet the filter criteria. If you do not specify instance IDs or filters, * the output includes information for all instances, which can affect performance. * We recommend that you use pagination to ensure that the operation returns * quickly and successfully.

If you specify an instance ID that is not * valid, an error is returned. If you specify an instance that you do not own, it * is not included in the output.

Recently terminated instances might appear * in the returned results. This interval is usually less than one hour.

If * you describe instances in the rare case where an Availability Zone is * experiencing a service disruption and you specify instance IDs that are in the * affected zone, or do not specify any instance IDs at all, the call fails. If you * describe instances and specify only instance IDs that are in an unaffected zone, * the call works normally.

See Also:

AWS * API Reference

*/ virtual Model::DescribeInstancesOutcome DescribeInstances(const Model::DescribeInstancesRequest& request) const; /** *

Describes the specified instances or all instances.

If you specify * instance IDs, the output includes information for only the specified instances. * If you specify filters, the output includes information for only those instances * that meet the filter criteria. If you do not specify instance IDs or filters, * the output includes information for all instances, which can affect performance. * We recommend that you use pagination to ensure that the operation returns * quickly and successfully.

If you specify an instance ID that is not * valid, an error is returned. If you specify an instance that you do not own, it * is not included in the output.

Recently terminated instances might appear * in the returned results. This interval is usually less than one hour.

If * you describe instances in the rare case where an Availability Zone is * experiencing a service disruption and you specify instance IDs that are in the * affected zone, or do not specify any instance IDs at all, the call fails. If you * describe instances and specify only instance IDs that are in an unaffected zone, * the call works normally.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInstancesOutcomeCallable DescribeInstancesCallable(const Model::DescribeInstancesRequest& request) const; /** *

Describes the specified instances or all instances.

If you specify * instance IDs, the output includes information for only the specified instances. * If you specify filters, the output includes information for only those instances * that meet the filter criteria. If you do not specify instance IDs or filters, * the output includes information for all instances, which can affect performance. * We recommend that you use pagination to ensure that the operation returns * quickly and successfully.

If you specify an instance ID that is not * valid, an error is returned. If you specify an instance that you do not own, it * is not included in the output.

Recently terminated instances might appear * in the returned results. This interval is usually less than one hour.

If * you describe instances in the rare case where an Availability Zone is * experiencing a service disruption and you specify instance IDs that are in the * affected zone, or do not specify any instance IDs at all, the call fails. If you * describe instances and specify only instance IDs that are in an unaffected zone, * the call works normally.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInstancesAsync(const Model::DescribeInstancesRequest& request, const DescribeInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your internet gateways.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeInternetGatewaysOutcome DescribeInternetGateways(const Model::DescribeInternetGatewaysRequest& request) const; /** *

Describes one or more of your internet gateways.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeInternetGatewaysOutcomeCallable DescribeInternetGatewaysCallable(const Model::DescribeInternetGatewaysRequest& request) const; /** *

Describes one or more of your internet gateways.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeInternetGatewaysAsync(const Model::DescribeInternetGatewaysRequest& request, const DescribeInternetGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your IPv6 address pools.

See Also:

AWS * API Reference

*/ virtual Model::DescribeIpv6PoolsOutcome DescribeIpv6Pools(const Model::DescribeIpv6PoolsRequest& request) const; /** *

Describes your IPv6 address pools.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeIpv6PoolsOutcomeCallable DescribeIpv6PoolsCallable(const Model::DescribeIpv6PoolsRequest& request) const; /** *

Describes your IPv6 address pools.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeIpv6PoolsAsync(const Model::DescribeIpv6PoolsRequest& request, const DescribeIpv6PoolsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified key pairs or all of your key pairs.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeKeyPairsOutcome DescribeKeyPairs(const Model::DescribeKeyPairsRequest& request) const; /** *

Describes the specified key pairs or all of your key pairs.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeKeyPairsOutcomeCallable DescribeKeyPairsCallable(const Model::DescribeKeyPairsRequest& request) const; /** *

Describes the specified key pairs or all of your key pairs.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeKeyPairsAsync(const Model::DescribeKeyPairsRequest& request, const DescribeKeyPairsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more versions of a specified launch template. You can * describe all versions, individual versions, or a range of versions. You can also * describe all the latest versions or all the default versions of all the launch * templates in your account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeLaunchTemplateVersionsOutcome DescribeLaunchTemplateVersions(const Model::DescribeLaunchTemplateVersionsRequest& request) const; /** *

Describes one or more versions of a specified launch template. You can * describe all versions, individual versions, or a range of versions. You can also * describe all the latest versions or all the default versions of all the launch * templates in your account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLaunchTemplateVersionsOutcomeCallable DescribeLaunchTemplateVersionsCallable(const Model::DescribeLaunchTemplateVersionsRequest& request) const; /** *

Describes one or more versions of a specified launch template. You can * describe all versions, individual versions, or a range of versions. You can also * describe all the latest versions or all the default versions of all the launch * templates in your account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLaunchTemplateVersionsAsync(const Model::DescribeLaunchTemplateVersionsRequest& request, const DescribeLaunchTemplateVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more launch templates.

See Also:

AWS * API Reference

*/ virtual Model::DescribeLaunchTemplatesOutcome DescribeLaunchTemplates(const Model::DescribeLaunchTemplatesRequest& request) const; /** *

Describes one or more launch templates.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLaunchTemplatesOutcomeCallable DescribeLaunchTemplatesCallable(const Model::DescribeLaunchTemplatesRequest& request) const; /** *

Describes one or more launch templates.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLaunchTemplatesAsync(const Model::DescribeLaunchTemplatesRequest& request, const DescribeLaunchTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the associations between virtual interface groups and local gateway * route tables.

See Also:

AWS * API Reference

*/ virtual Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutcome DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations(const Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest& request) const; /** *

Describes the associations between virtual interface groups and local gateway * route tables.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutcomeCallable DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsCallable(const Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest& request) const; /** *

Describes the associations between virtual interface groups and local gateway * route tables.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsAsync(const Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest& request, const DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified associations between VPCs and local gateway route * tables.

See Also:

AWS * API Reference

*/ virtual Model::DescribeLocalGatewayRouteTableVpcAssociationsOutcome DescribeLocalGatewayRouteTableVpcAssociations(const Model::DescribeLocalGatewayRouteTableVpcAssociationsRequest& request) const; /** *

Describes the specified associations between VPCs and local gateway route * tables.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewayRouteTableVpcAssociationsOutcomeCallable DescribeLocalGatewayRouteTableVpcAssociationsCallable(const Model::DescribeLocalGatewayRouteTableVpcAssociationsRequest& request) const; /** *

Describes the specified associations between VPCs and local gateway route * tables.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewayRouteTableVpcAssociationsAsync(const Model::DescribeLocalGatewayRouteTableVpcAssociationsRequest& request, const DescribeLocalGatewayRouteTableVpcAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more local gateway route tables. By default, all local * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

*/ virtual Model::DescribeLocalGatewayRouteTablesOutcome DescribeLocalGatewayRouteTables(const Model::DescribeLocalGatewayRouteTablesRequest& request) const; /** *

Describes one or more local gateway route tables. By default, all local * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewayRouteTablesOutcomeCallable DescribeLocalGatewayRouteTablesCallable(const Model::DescribeLocalGatewayRouteTablesRequest& request) const; /** *

Describes one or more local gateway route tables. By default, all local * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewayRouteTablesAsync(const Model::DescribeLocalGatewayRouteTablesRequest& request, const DescribeLocalGatewayRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified local gateway virtual interface groups.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeLocalGatewayVirtualInterfaceGroupsOutcome DescribeLocalGatewayVirtualInterfaceGroups(const Model::DescribeLocalGatewayVirtualInterfaceGroupsRequest& request) const; /** *

Describes the specified local gateway virtual interface groups.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewayVirtualInterfaceGroupsOutcomeCallable DescribeLocalGatewayVirtualInterfaceGroupsCallable(const Model::DescribeLocalGatewayVirtualInterfaceGroupsRequest& request) const; /** *

Describes the specified local gateway virtual interface groups.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewayVirtualInterfaceGroupsAsync(const Model::DescribeLocalGatewayVirtualInterfaceGroupsRequest& request, const DescribeLocalGatewayVirtualInterfaceGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified local gateway virtual interfaces.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeLocalGatewayVirtualInterfacesOutcome DescribeLocalGatewayVirtualInterfaces(const Model::DescribeLocalGatewayVirtualInterfacesRequest& request) const; /** *

Describes the specified local gateway virtual interfaces.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewayVirtualInterfacesOutcomeCallable DescribeLocalGatewayVirtualInterfacesCallable(const Model::DescribeLocalGatewayVirtualInterfacesRequest& request) const; /** *

Describes the specified local gateway virtual interfaces.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewayVirtualInterfacesAsync(const Model::DescribeLocalGatewayVirtualInterfacesRequest& request, const DescribeLocalGatewayVirtualInterfacesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more local gateways. By default, all local gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeLocalGatewaysOutcome DescribeLocalGateways(const Model::DescribeLocalGatewaysRequest& request) const; /** *

Describes one or more local gateways. By default, all local gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLocalGatewaysOutcomeCallable DescribeLocalGatewaysCallable(const Model::DescribeLocalGatewaysRequest& request) const; /** *

Describes one or more local gateways. By default, all local gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLocalGatewaysAsync(const Model::DescribeLocalGatewaysRequest& request, const DescribeLocalGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your managed prefix lists and any AWS-managed prefix lists.

*

To view the entries for your prefix list, use * GetManagedPrefixListEntries.

See Also:

AWS * API Reference

*/ virtual Model::DescribeManagedPrefixListsOutcome DescribeManagedPrefixLists(const Model::DescribeManagedPrefixListsRequest& request) const; /** *

Describes your managed prefix lists and any AWS-managed prefix lists.

*

To view the entries for your prefix list, use * GetManagedPrefixListEntries.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeManagedPrefixListsOutcomeCallable DescribeManagedPrefixListsCallable(const Model::DescribeManagedPrefixListsRequest& request) const; /** *

Describes your managed prefix lists and any AWS-managed prefix lists.

*

To view the entries for your prefix list, use * GetManagedPrefixListEntries.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeManagedPrefixListsAsync(const Model::DescribeManagedPrefixListsRequest& request, const DescribeManagedPrefixListsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your Elastic IP addresses that are being moved to the EC2-VPC * platform, or that are being restored to the EC2-Classic platform. This request * does not return information about any other Elastic IP addresses in your * account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeMovingAddressesOutcome DescribeMovingAddresses(const Model::DescribeMovingAddressesRequest& request) const; /** *

Describes your Elastic IP addresses that are being moved to the EC2-VPC * platform, or that are being restored to the EC2-Classic platform. This request * does not return information about any other Elastic IP addresses in your * account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeMovingAddressesOutcomeCallable DescribeMovingAddressesCallable(const Model::DescribeMovingAddressesRequest& request) const; /** *

Describes your Elastic IP addresses that are being moved to the EC2-VPC * platform, or that are being restored to the EC2-Classic platform. This request * does not return information about any other Elastic IP addresses in your * account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeMovingAddressesAsync(const Model::DescribeMovingAddressesRequest& request, const DescribeMovingAddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your NAT gateways.

See Also:

AWS * API Reference

*/ virtual Model::DescribeNatGatewaysOutcome DescribeNatGateways(const Model::DescribeNatGatewaysRequest& request) const; /** *

Describes one or more of your NAT gateways.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNatGatewaysOutcomeCallable DescribeNatGatewaysCallable(const Model::DescribeNatGatewaysRequest& request) const; /** *

Describes one or more of your NAT gateways.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNatGatewaysAsync(const Model::DescribeNatGatewaysRequest& request, const DescribeNatGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your network ACLs.

For more information, see * Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeNetworkAclsOutcome DescribeNetworkAcls(const Model::DescribeNetworkAclsRequest& request) const; /** *

Describes one or more of your network ACLs.

For more information, see * Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNetworkAclsOutcomeCallable DescribeNetworkAclsCallable(const Model::DescribeNetworkAclsRequest& request) const; /** *

Describes one or more of your network ACLs.

For more information, see * Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNetworkAclsAsync(const Model::DescribeNetworkAclsRequest& request, const DescribeNetworkAclsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes a network interface attribute. You can specify only one attribute * at a time.

See Also:

AWS * API Reference

*/ virtual Model::DescribeNetworkInterfaceAttributeOutcome DescribeNetworkInterfaceAttribute(const Model::DescribeNetworkInterfaceAttributeRequest& request) const; /** *

Describes a network interface attribute. You can specify only one attribute * at a time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNetworkInterfaceAttributeOutcomeCallable DescribeNetworkInterfaceAttributeCallable(const Model::DescribeNetworkInterfaceAttributeRequest& request) const; /** *

Describes a network interface attribute. You can specify only one attribute * at a time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNetworkInterfaceAttributeAsync(const Model::DescribeNetworkInterfaceAttributeRequest& request, const DescribeNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the permissions for your network interfaces.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeNetworkInterfacePermissionsOutcome DescribeNetworkInterfacePermissions(const Model::DescribeNetworkInterfacePermissionsRequest& request) const; /** *

Describes the permissions for your network interfaces.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNetworkInterfacePermissionsOutcomeCallable DescribeNetworkInterfacePermissionsCallable(const Model::DescribeNetworkInterfacePermissionsRequest& request) const; /** *

Describes the permissions for your network interfaces.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNetworkInterfacePermissionsAsync(const Model::DescribeNetworkInterfacePermissionsRequest& request, const DescribeNetworkInterfacePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your network interfaces.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeNetworkInterfacesOutcome DescribeNetworkInterfaces(const Model::DescribeNetworkInterfacesRequest& request) const; /** *

Describes one or more of your network interfaces.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNetworkInterfacesOutcomeCallable DescribeNetworkInterfacesCallable(const Model::DescribeNetworkInterfacesRequest& request) const; /** *

Describes one or more of your network interfaces.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNetworkInterfacesAsync(const Model::DescribeNetworkInterfacesRequest& request, const DescribeNetworkInterfacesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified placement groups or all of your placement groups. For * more information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DescribePlacementGroupsOutcome DescribePlacementGroups(const Model::DescribePlacementGroupsRequest& request) const; /** *

Describes the specified placement groups or all of your placement groups. For * more information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribePlacementGroupsOutcomeCallable DescribePlacementGroupsCallable(const Model::DescribePlacementGroupsRequest& request) const; /** *

Describes the specified placement groups or all of your placement groups. For * more information, see Placement * groups in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribePlacementGroupsAsync(const Model::DescribePlacementGroupsRequest& request, const DescribePlacementGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes available AWS services in a prefix list format, which includes the * prefix list name and prefix list ID of the service and the IP address range for * the service.

We recommend that you use DescribeManagedPrefixLists * instead.

See Also:

AWS * API Reference

*/ virtual Model::DescribePrefixListsOutcome DescribePrefixLists(const Model::DescribePrefixListsRequest& request) const; /** *

Describes available AWS services in a prefix list format, which includes the * prefix list name and prefix list ID of the service and the IP address range for * the service.

We recommend that you use DescribeManagedPrefixLists * instead.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribePrefixListsOutcomeCallable DescribePrefixListsCallable(const Model::DescribePrefixListsRequest& request) const; /** *

Describes available AWS services in a prefix list format, which includes the * prefix list name and prefix list ID of the service and the IP address range for * the service.

We recommend that you use DescribeManagedPrefixLists * instead.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribePrefixListsAsync(const Model::DescribePrefixListsRequest& request, const DescribePrefixListsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the ID format settings for the root user and all IAM roles and IAM * users that have explicitly specified a longer ID (17-character ID) preference. *

By default, all IAM roles and IAM users default to the same ID settings * as the root user, unless they explicitly override the settings. This request is * useful for identifying those IAM users and IAM roles that have overridden the * default ID settings.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See * Also:

AWS * API Reference

*/ virtual Model::DescribePrincipalIdFormatOutcome DescribePrincipalIdFormat(const Model::DescribePrincipalIdFormatRequest& request) const; /** *

Describes the ID format settings for the root user and all IAM roles and IAM * users that have explicitly specified a longer ID (17-character ID) preference. *

By default, all IAM roles and IAM users default to the same ID settings * as the root user, unless they explicitly override the settings. This request is * useful for identifying those IAM users and IAM roles that have overridden the * default ID settings.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribePrincipalIdFormatOutcomeCallable DescribePrincipalIdFormatCallable(const Model::DescribePrincipalIdFormatRequest& request) const; /** *

Describes the ID format settings for the root user and all IAM roles and IAM * users that have explicitly specified a longer ID (17-character ID) preference. *

By default, all IAM roles and IAM users default to the same ID settings * as the root user, unless they explicitly override the settings. This request is * useful for identifying those IAM users and IAM roles that have overridden the * default ID settings.

The following resource types support longer IDs: * bundle | conversion-task | * customer-gateway | dhcp-options | * elastic-ip-allocation | elastic-ip-association | * export-task | flow-log | image | * import-task | instance | internet-gateway * | network-acl | network-acl-association | * network-interface | network-interface-attachment | * prefix-list | reservation | route-table | * route-table-association | security-group | * snapshot | subnet | * subnet-cidr-block-association | volume | * vpc | vpc-cidr-block-association | * vpc-endpoint | vpc-peering-connection | * vpn-connection | vpn-gateway.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribePrincipalIdFormatAsync(const Model::DescribePrincipalIdFormatRequest& request, const DescribePrincipalIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified IPv4 address pools.

See Also:

AWS * API Reference

*/ virtual Model::DescribePublicIpv4PoolsOutcome DescribePublicIpv4Pools(const Model::DescribePublicIpv4PoolsRequest& request) const; /** *

Describes the specified IPv4 address pools.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribePublicIpv4PoolsOutcomeCallable DescribePublicIpv4PoolsCallable(const Model::DescribePublicIpv4PoolsRequest& request) const; /** *

Describes the specified IPv4 address pools.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribePublicIpv4PoolsAsync(const Model::DescribePublicIpv4PoolsRequest& request, const DescribePublicIpv4PoolsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Regions that are enabled for your account, or all Regions.

*

For a list of the Regions supported by Amazon EC2, see * Regions and Endpoints.

For information about enabling and disabling * Regions for your account, see Managing * AWS Regions in the AWS General Reference.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeRegionsOutcome DescribeRegions(const Model::DescribeRegionsRequest& request) const; /** *

Describes the Regions that are enabled for your account, or all Regions.

*

For a list of the Regions supported by Amazon EC2, see * Regions and Endpoints.

For information about enabling and disabling * Regions for your account, see Managing * AWS Regions in the AWS General Reference.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeRegionsOutcomeCallable DescribeRegionsCallable(const Model::DescribeRegionsRequest& request) const; /** *

Describes the Regions that are enabled for your account, or all Regions.

*

For a list of the Regions supported by Amazon EC2, see * Regions and Endpoints.

For information about enabling and disabling * Regions for your account, see Managing * AWS Regions in the AWS General Reference.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeRegionsAsync(const Model::DescribeRegionsRequest& request, const DescribeRegionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of the Reserved Instances that you purchased.

*

For more information about Reserved Instances, see Reserved * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedInstancesOutcome DescribeReservedInstances(const Model::DescribeReservedInstancesRequest& request) const; /** *

Describes one or more of the Reserved Instances that you purchased.

*

For more information about Reserved Instances, see Reserved * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedInstancesOutcomeCallable DescribeReservedInstancesCallable(const Model::DescribeReservedInstancesRequest& request) const; /** *

Describes one or more of the Reserved Instances that you purchased.

*

For more information about Reserved Instances, see Reserved * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedInstancesAsync(const Model::DescribeReservedInstancesRequest& request, const DescribeReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your account's Reserved Instance listings in the Reserved Instance * Marketplace.

The Reserved Instance Marketplace matches sellers who want * to resell Reserved Instance capacity that they no longer need with buyers who * want to purchase additional capacity. Reserved Instances bought and sold through * the Reserved Instance Marketplace work like any other Reserved Instances.

*

As a seller, you choose to list some or all of your Reserved Instances, and * you specify the upfront price to receive for them. Your Reserved Instances are * then listed in the Reserved Instance Marketplace and are available for * purchase.

As a buyer, you specify the configuration of the Reserved * Instance to purchase, and the Marketplace matches what you're searching for with * what's available. The Marketplace first sells the lowest priced Reserved * Instances to you, and continues to sell available Reserved Instance listings to * you until your demand is met. You are charged based on the total price of all of * the listings that you purchase.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedInstancesListingsOutcome DescribeReservedInstancesListings(const Model::DescribeReservedInstancesListingsRequest& request) const; /** *

Describes your account's Reserved Instance listings in the Reserved Instance * Marketplace.

The Reserved Instance Marketplace matches sellers who want * to resell Reserved Instance capacity that they no longer need with buyers who * want to purchase additional capacity. Reserved Instances bought and sold through * the Reserved Instance Marketplace work like any other Reserved Instances.

*

As a seller, you choose to list some or all of your Reserved Instances, and * you specify the upfront price to receive for them. Your Reserved Instances are * then listed in the Reserved Instance Marketplace and are available for * purchase.

As a buyer, you specify the configuration of the Reserved * Instance to purchase, and the Marketplace matches what you're searching for with * what's available. The Marketplace first sells the lowest priced Reserved * Instances to you, and continues to sell available Reserved Instance listings to * you until your demand is met. You are charged based on the total price of all of * the listings that you purchase.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedInstancesListingsOutcomeCallable DescribeReservedInstancesListingsCallable(const Model::DescribeReservedInstancesListingsRequest& request) const; /** *

Describes your account's Reserved Instance listings in the Reserved Instance * Marketplace.

The Reserved Instance Marketplace matches sellers who want * to resell Reserved Instance capacity that they no longer need with buyers who * want to purchase additional capacity. Reserved Instances bought and sold through * the Reserved Instance Marketplace work like any other Reserved Instances.

*

As a seller, you choose to list some or all of your Reserved Instances, and * you specify the upfront price to receive for them. Your Reserved Instances are * then listed in the Reserved Instance Marketplace and are available for * purchase.

As a buyer, you specify the configuration of the Reserved * Instance to purchase, and the Marketplace matches what you're searching for with * what's available. The Marketplace first sells the lowest priced Reserved * Instances to you, and continues to sell available Reserved Instance listings to * you until your demand is met. You are charged based on the total price of all of * the listings that you purchase.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedInstancesListingsAsync(const Model::DescribeReservedInstancesListingsRequest& request, const DescribeReservedInstancesListingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the modifications made to your Reserved Instances. If no parameter * is specified, information about all your Reserved Instances modification * requests is returned. If a modification ID is specified, only information about * the specific modification is returned.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedInstancesModificationsOutcome DescribeReservedInstancesModifications(const Model::DescribeReservedInstancesModificationsRequest& request) const; /** *

Describes the modifications made to your Reserved Instances. If no parameter * is specified, information about all your Reserved Instances modification * requests is returned. If a modification ID is specified, only information about * the specific modification is returned.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedInstancesModificationsOutcomeCallable DescribeReservedInstancesModificationsCallable(const Model::DescribeReservedInstancesModificationsRequest& request) const; /** *

Describes the modifications made to your Reserved Instances. If no parameter * is specified, information about all your Reserved Instances modification * requests is returned. If a modification ID is specified, only information about * the specific modification is returned.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedInstancesModificationsAsync(const Model::DescribeReservedInstancesModificationsRequest& request, const DescribeReservedInstancesModificationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes Reserved Instance offerings that are available for purchase. With * Reserved Instances, you purchase the right to launch instances for a period of * time. During that time period, you do not receive insufficient capacity errors, * and you pay a lower usage rate than the rate charged for On-Demand instances for * the actual time used.

If you have listed your own Reserved Instances for * sale in the Reserved Instance Marketplace, they will be excluded from these * results. This is to ensure that you do not purchase your own Reserved * Instances.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedInstancesOfferingsOutcome DescribeReservedInstancesOfferings(const Model::DescribeReservedInstancesOfferingsRequest& request) const; /** *

Describes Reserved Instance offerings that are available for purchase. With * Reserved Instances, you purchase the right to launch instances for a period of * time. During that time period, you do not receive insufficient capacity errors, * and you pay a lower usage rate than the rate charged for On-Demand instances for * the actual time used.

If you have listed your own Reserved Instances for * sale in the Reserved Instance Marketplace, they will be excluded from these * results. This is to ensure that you do not purchase your own Reserved * Instances.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedInstancesOfferingsOutcomeCallable DescribeReservedInstancesOfferingsCallable(const Model::DescribeReservedInstancesOfferingsRequest& request) const; /** *

Describes Reserved Instance offerings that are available for purchase. With * Reserved Instances, you purchase the right to launch instances for a period of * time. During that time period, you do not receive insufficient capacity errors, * and you pay a lower usage rate than the rate charged for On-Demand instances for * the actual time used.

If you have listed your own Reserved Instances for * sale in the Reserved Instance Marketplace, they will be excluded from these * results. This is to ensure that you do not purchase your own Reserved * Instances.

For more information, see Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedInstancesOfferingsAsync(const Model::DescribeReservedInstancesOfferingsRequest& request, const DescribeReservedInstancesOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your route tables.

Each subnet in your VPC * must be associated with a route table. If a subnet is not explicitly associated * with any route table, it is implicitly associated with the main route table. * This command does not return the subnet ID for implicit associations.

For * more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeRouteTablesOutcome DescribeRouteTables(const Model::DescribeRouteTablesRequest& request) const; /** *

Describes one or more of your route tables.

Each subnet in your VPC * must be associated with a route table. If a subnet is not explicitly associated * with any route table, it is implicitly associated with the main route table. * This command does not return the subnet ID for implicit associations.

For * more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeRouteTablesOutcomeCallable DescribeRouteTablesCallable(const Model::DescribeRouteTablesRequest& request) const; /** *

Describes one or more of your route tables.

Each subnet in your VPC * must be associated with a route table. If a subnet is not explicitly associated * with any route table, it is implicitly associated with the main route table. * This command does not return the subnet ID for implicit associations.

For * more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeRouteTablesAsync(const Model::DescribeRouteTablesRequest& request, const DescribeRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Finds available schedules that meet the specified criteria.

You can * search for an available schedule no more than 3 months in advance. You must meet * the minimum required duration of 1,200 hours per year. For example, the minimum * daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the * minimum monthly schedule is 100 hours.

After you find a schedule that * meets your needs, call PurchaseScheduledInstances to purchase Scheduled * Instances with that schedule.

See Also:

AWS * API Reference

*/ virtual Model::DescribeScheduledInstanceAvailabilityOutcome DescribeScheduledInstanceAvailability(const Model::DescribeScheduledInstanceAvailabilityRequest& request) const; /** *

Finds available schedules that meet the specified criteria.

You can * search for an available schedule no more than 3 months in advance. You must meet * the minimum required duration of 1,200 hours per year. For example, the minimum * daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the * minimum monthly schedule is 100 hours.

After you find a schedule that * meets your needs, call PurchaseScheduledInstances to purchase Scheduled * Instances with that schedule.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeScheduledInstanceAvailabilityOutcomeCallable DescribeScheduledInstanceAvailabilityCallable(const Model::DescribeScheduledInstanceAvailabilityRequest& request) const; /** *

Finds available schedules that meet the specified criteria.

You can * search for an available schedule no more than 3 months in advance. You must meet * the minimum required duration of 1,200 hours per year. For example, the minimum * daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the * minimum monthly schedule is 100 hours.

After you find a schedule that * meets your needs, call PurchaseScheduledInstances to purchase Scheduled * Instances with that schedule.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeScheduledInstanceAvailabilityAsync(const Model::DescribeScheduledInstanceAvailabilityRequest& request, const DescribeScheduledInstanceAvailabilityResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified Scheduled Instances or all your Scheduled * Instances.

See Also:

AWS * API Reference

*/ virtual Model::DescribeScheduledInstancesOutcome DescribeScheduledInstances(const Model::DescribeScheduledInstancesRequest& request) const; /** *

Describes the specified Scheduled Instances or all your Scheduled * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeScheduledInstancesOutcomeCallable DescribeScheduledInstancesCallable(const Model::DescribeScheduledInstancesRequest& request) const; /** *

Describes the specified Scheduled Instances or all your Scheduled * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeScheduledInstancesAsync(const Model::DescribeScheduledInstancesRequest& request, const DescribeScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[VPC only] Describes the VPCs on the other side of a VPC peering connection * that are referencing the security groups you've specified in this * request.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSecurityGroupReferencesOutcome DescribeSecurityGroupReferences(const Model::DescribeSecurityGroupReferencesRequest& request) const; /** *

[VPC only] Describes the VPCs on the other side of a VPC peering connection * that are referencing the security groups you've specified in this * request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSecurityGroupReferencesOutcomeCallable DescribeSecurityGroupReferencesCallable(const Model::DescribeSecurityGroupReferencesRequest& request) const; /** *

[VPC only] Describes the VPCs on the other side of a VPC peering connection * that are referencing the security groups you've specified in this * request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSecurityGroupReferencesAsync(const Model::DescribeSecurityGroupReferencesRequest& request, const DescribeSecurityGroupReferencesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified security groups or all of your security groups.

*

A security group is for use with instances either in the EC2-Classic platform * or in a specific VPC. For more information, see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSecurityGroupsOutcome DescribeSecurityGroups(const Model::DescribeSecurityGroupsRequest& request) const; /** *

Describes the specified security groups or all of your security groups.

*

A security group is for use with instances either in the EC2-Classic platform * or in a specific VPC. For more information, see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSecurityGroupsOutcomeCallable DescribeSecurityGroupsCallable(const Model::DescribeSecurityGroupsRequest& request) const; /** *

Describes the specified security groups or all of your security groups.

*

A security group is for use with instances either in the EC2-Classic platform * or in a specific VPC. For more information, see Amazon * EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide * and Security * Groups for Your VPC in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSecurityGroupsAsync(const Model::DescribeSecurityGroupsRequest& request, const DescribeSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified snapshot. You can specify * only one attribute at a time.

For more information about EBS snapshots, * see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSnapshotAttributeOutcome DescribeSnapshotAttribute(const Model::DescribeSnapshotAttributeRequest& request) const; /** *

Describes the specified attribute of the specified snapshot. You can specify * only one attribute at a time.

For more information about EBS snapshots, * see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSnapshotAttributeOutcomeCallable DescribeSnapshotAttributeCallable(const Model::DescribeSnapshotAttributeRequest& request) const; /** *

Describes the specified attribute of the specified snapshot. You can specify * only one attribute at a time.

For more information about EBS snapshots, * see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSnapshotAttributeAsync(const Model::DescribeSnapshotAttributeRequest& request, const DescribeSnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified EBS snapshots available to you or all of the EBS * snapshots available to you.

The snapshots available to you include public * snapshots, private snapshots that you own, and private snapshots owned by other * AWS accounts for which you have explicit create volume permissions.

The * create volume permissions fall into the following categories:

  • * public: The owner of the snapshot granted create volume permissions for * the snapshot to the all group. All AWS accounts have create volume * permissions for these snapshots.

  • explicit: The owner * of the snapshot granted create volume permissions to a specific AWS account.

    *
  • implicit: An AWS account has implicit create volume * permissions for all snapshots it owns.

The list of snapshots * returned can be filtered by specifying snapshot IDs, snapshot owners, or AWS * accounts with create volume permissions. If no options are specified, Amazon EC2 * returns all snapshots for which you have create volume permissions.

If * you specify one or more snapshot IDs, only snapshots that have the specified IDs * are returned. If you specify an invalid snapshot ID, an error is returned. If * you specify a snapshot ID for which you do not have access, it is not included * in the returned results.

If you specify one or more snapshot owners using * the OwnerIds option, only snapshots from the specified owners and * for which you have access are returned. The results can include the AWS account * IDs of the specified owners, amazon for snapshots owned by Amazon, * or self for snapshots that you own.

If you specify a list of * restorable users, only snapshots with create snapshot permissions for those * users are returned. You can specify AWS account IDs (if you own the snapshots), * self for snapshots for which you own or have explicit permissions, * or all for public snapshots.

If you are describing a long * list of snapshots, we recommend that you paginate the output to make the list * more manageable. The MaxResults parameter sets the maximum number * of results returned in a single page. If the list of results exceeds your * MaxResults value, then that number of results is returned along * with a NextToken value that can be passed to a subsequent * DescribeSnapshots request to retrieve the remaining results.

*

To get the state of fast snapshot restores for a snapshot, use * DescribeFastSnapshotRestores.

For more information about EBS * snapshots, see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSnapshotsOutcome DescribeSnapshots(const Model::DescribeSnapshotsRequest& request) const; /** *

Describes the specified EBS snapshots available to you or all of the EBS * snapshots available to you.

The snapshots available to you include public * snapshots, private snapshots that you own, and private snapshots owned by other * AWS accounts for which you have explicit create volume permissions.

The * create volume permissions fall into the following categories:

  • * public: The owner of the snapshot granted create volume permissions for * the snapshot to the all group. All AWS accounts have create volume * permissions for these snapshots.

  • explicit: The owner * of the snapshot granted create volume permissions to a specific AWS account.

    *
  • implicit: An AWS account has implicit create volume * permissions for all snapshots it owns.

The list of snapshots * returned can be filtered by specifying snapshot IDs, snapshot owners, or AWS * accounts with create volume permissions. If no options are specified, Amazon EC2 * returns all snapshots for which you have create volume permissions.

If * you specify one or more snapshot IDs, only snapshots that have the specified IDs * are returned. If you specify an invalid snapshot ID, an error is returned. If * you specify a snapshot ID for which you do not have access, it is not included * in the returned results.

If you specify one or more snapshot owners using * the OwnerIds option, only snapshots from the specified owners and * for which you have access are returned. The results can include the AWS account * IDs of the specified owners, amazon for snapshots owned by Amazon, * or self for snapshots that you own.

If you specify a list of * restorable users, only snapshots with create snapshot permissions for those * users are returned. You can specify AWS account IDs (if you own the snapshots), * self for snapshots for which you own or have explicit permissions, * or all for public snapshots.

If you are describing a long * list of snapshots, we recommend that you paginate the output to make the list * more manageable. The MaxResults parameter sets the maximum number * of results returned in a single page. If the list of results exceeds your * MaxResults value, then that number of results is returned along * with a NextToken value that can be passed to a subsequent * DescribeSnapshots request to retrieve the remaining results.

*

To get the state of fast snapshot restores for a snapshot, use * DescribeFastSnapshotRestores.

For more information about EBS * snapshots, see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSnapshotsOutcomeCallable DescribeSnapshotsCallable(const Model::DescribeSnapshotsRequest& request) const; /** *

Describes the specified EBS snapshots available to you or all of the EBS * snapshots available to you.

The snapshots available to you include public * snapshots, private snapshots that you own, and private snapshots owned by other * AWS accounts for which you have explicit create volume permissions.

The * create volume permissions fall into the following categories:

  • * public: The owner of the snapshot granted create volume permissions for * the snapshot to the all group. All AWS accounts have create volume * permissions for these snapshots.

  • explicit: The owner * of the snapshot granted create volume permissions to a specific AWS account.

    *
  • implicit: An AWS account has implicit create volume * permissions for all snapshots it owns.

The list of snapshots * returned can be filtered by specifying snapshot IDs, snapshot owners, or AWS * accounts with create volume permissions. If no options are specified, Amazon EC2 * returns all snapshots for which you have create volume permissions.

If * you specify one or more snapshot IDs, only snapshots that have the specified IDs * are returned. If you specify an invalid snapshot ID, an error is returned. If * you specify a snapshot ID for which you do not have access, it is not included * in the returned results.

If you specify one or more snapshot owners using * the OwnerIds option, only snapshots from the specified owners and * for which you have access are returned. The results can include the AWS account * IDs of the specified owners, amazon for snapshots owned by Amazon, * or self for snapshots that you own.

If you specify a list of * restorable users, only snapshots with create snapshot permissions for those * users are returned. You can specify AWS account IDs (if you own the snapshots), * self for snapshots for which you own or have explicit permissions, * or all for public snapshots.

If you are describing a long * list of snapshots, we recommend that you paginate the output to make the list * more manageable. The MaxResults parameter sets the maximum number * of results returned in a single page. If the list of results exceeds your * MaxResults value, then that number of results is returned along * with a NextToken value that can be passed to a subsequent * DescribeSnapshots request to retrieve the remaining results.

*

To get the state of fast snapshot restores for a snapshot, use * DescribeFastSnapshotRestores.

For more information about EBS * snapshots, see Amazon * EBS Snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSnapshotsAsync(const Model::DescribeSnapshotsRequest& request, const DescribeSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the data feed for Spot Instances. For more information, see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSpotDatafeedSubscriptionOutcome DescribeSpotDatafeedSubscription(const Model::DescribeSpotDatafeedSubscriptionRequest& request) const; /** *

Describes the data feed for Spot Instances. For more information, see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotDatafeedSubscriptionOutcomeCallable DescribeSpotDatafeedSubscriptionCallable(const Model::DescribeSpotDatafeedSubscriptionRequest& request) const; /** *

Describes the data feed for Spot Instances. For more information, see Spot * Instance data feed in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotDatafeedSubscriptionAsync(const Model::DescribeSpotDatafeedSubscriptionRequest& request, const DescribeSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the running instances for the specified Spot Fleet.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeSpotFleetInstancesOutcome DescribeSpotFleetInstances(const Model::DescribeSpotFleetInstancesRequest& request) const; /** *

Describes the running instances for the specified Spot Fleet.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotFleetInstancesOutcomeCallable DescribeSpotFleetInstancesCallable(const Model::DescribeSpotFleetInstancesRequest& request) const; /** *

Describes the running instances for the specified Spot Fleet.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotFleetInstancesAsync(const Model::DescribeSpotFleetInstancesRequest& request, const DescribeSpotFleetInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the events for the specified Spot Fleet request during the * specified time.

Spot Fleet events are delayed by up to 30 seconds before * they can be described. This ensures that you can query by the last evaluated * time and not miss a recorded event. Spot Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSpotFleetRequestHistoryOutcome DescribeSpotFleetRequestHistory(const Model::DescribeSpotFleetRequestHistoryRequest& request) const; /** *

Describes the events for the specified Spot Fleet request during the * specified time.

Spot Fleet events are delayed by up to 30 seconds before * they can be described. This ensures that you can query by the last evaluated * time and not miss a recorded event. Spot Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotFleetRequestHistoryOutcomeCallable DescribeSpotFleetRequestHistoryCallable(const Model::DescribeSpotFleetRequestHistoryRequest& request) const; /** *

Describes the events for the specified Spot Fleet request during the * specified time.

Spot Fleet events are delayed by up to 30 seconds before * they can be described. This ensures that you can query by the last evaluated * time and not miss a recorded event. Spot Fleet events are available for 48 * hours.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotFleetRequestHistoryAsync(const Model::DescribeSpotFleetRequestHistoryRequest& request, const DescribeSpotFleetRequestHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your Spot Fleet requests.

Spot Fleet requests are deleted 48 * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeSpotFleetRequestsOutcome DescribeSpotFleetRequests(const Model::DescribeSpotFleetRequestsRequest& request) const; /** *

Describes your Spot Fleet requests.

Spot Fleet requests are deleted 48 * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotFleetRequestsOutcomeCallable DescribeSpotFleetRequestsCallable(const Model::DescribeSpotFleetRequestsRequest& request) const; /** *

Describes your Spot Fleet requests.

Spot Fleet requests are deleted 48 * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotFleetRequestsAsync(const Model::DescribeSpotFleetRequestsRequest& request, const DescribeSpotFleetRequestsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified Spot Instance requests.

You can use * DescribeSpotInstanceRequests to find a running Spot Instance by * examining the response. If the status of the Spot Instance is * fulfilled, the instance ID appears in the response and contains the * identifier of the instance. Alternatively, you can use DescribeInstances * with a filter to look for instances where the instance lifecycle is * spot.

We recommend that you set MaxResults to a * value between 5 and 1000 to limit the number of results returned. This paginates * the output, which makes the list more manageable and returns the results faster. * If the list of results exceeds your MaxResults value, then that * number of results is returned along with a NextToken value that can * be passed to a subsequent DescribeSpotInstanceRequests request to * retrieve the remaining results.

Spot Instance requests are deleted four * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeSpotInstanceRequestsOutcome DescribeSpotInstanceRequests(const Model::DescribeSpotInstanceRequestsRequest& request) const; /** *

Describes the specified Spot Instance requests.

You can use * DescribeSpotInstanceRequests to find a running Spot Instance by * examining the response. If the status of the Spot Instance is * fulfilled, the instance ID appears in the response and contains the * identifier of the instance. Alternatively, you can use DescribeInstances * with a filter to look for instances where the instance lifecycle is * spot.

We recommend that you set MaxResults to a * value between 5 and 1000 to limit the number of results returned. This paginates * the output, which makes the list more manageable and returns the results faster. * If the list of results exceeds your MaxResults value, then that * number of results is returned along with a NextToken value that can * be passed to a subsequent DescribeSpotInstanceRequests request to * retrieve the remaining results.

Spot Instance requests are deleted four * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotInstanceRequestsOutcomeCallable DescribeSpotInstanceRequestsCallable(const Model::DescribeSpotInstanceRequestsRequest& request) const; /** *

Describes the specified Spot Instance requests.

You can use * DescribeSpotInstanceRequests to find a running Spot Instance by * examining the response. If the status of the Spot Instance is * fulfilled, the instance ID appears in the response and contains the * identifier of the instance. Alternatively, you can use DescribeInstances * with a filter to look for instances where the instance lifecycle is * spot.

We recommend that you set MaxResults to a * value between 5 and 1000 to limit the number of results returned. This paginates * the output, which makes the list more manageable and returns the results faster. * If the list of results exceeds your MaxResults value, then that * number of results is returned along with a NextToken value that can * be passed to a subsequent DescribeSpotInstanceRequests request to * retrieve the remaining results.

Spot Instance requests are deleted four * hours after they are canceled and their instances are terminated.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotInstanceRequestsAsync(const Model::DescribeSpotInstanceRequestsRequest& request, const DescribeSpotInstanceRequestsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the Spot price history. For more information, see Spot * Instance pricing history in the Amazon EC2 User Guide for Linux * Instances.

When you specify a start and end time, this operation * returns the prices of the instance types within the time range that you * specified and the time when the price changed. The price is valid within the * time period that you specified; the response merely indicates the last time that * the price changed.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSpotPriceHistoryOutcome DescribeSpotPriceHistory(const Model::DescribeSpotPriceHistoryRequest& request) const; /** *

Describes the Spot price history. For more information, see Spot * Instance pricing history in the Amazon EC2 User Guide for Linux * Instances.

When you specify a start and end time, this operation * returns the prices of the instance types within the time range that you * specified and the time when the price changed. The price is valid within the * time period that you specified; the response merely indicates the last time that * the price changed.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSpotPriceHistoryOutcomeCallable DescribeSpotPriceHistoryCallable(const Model::DescribeSpotPriceHistoryRequest& request) const; /** *

Describes the Spot price history. For more information, see Spot * Instance pricing history in the Amazon EC2 User Guide for Linux * Instances.

When you specify a start and end time, this operation * returns the prices of the instance types within the time range that you * specified and the time when the price changed. The price is valid within the * time period that you specified; the response merely indicates the last time that * the price changed.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSpotPriceHistoryAsync(const Model::DescribeSpotPriceHistoryRequest& request, const DescribeSpotPriceHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[VPC only] Describes the stale security group rules for security groups in a * specified VPC. Rules are stale when they reference a deleted security group in a * peer VPC, or a security group in a peer VPC for which the VPC peering connection * has been deleted.

See Also:

AWS * API Reference

*/ virtual Model::DescribeStaleSecurityGroupsOutcome DescribeStaleSecurityGroups(const Model::DescribeStaleSecurityGroupsRequest& request) const; /** *

[VPC only] Describes the stale security group rules for security groups in a * specified VPC. Rules are stale when they reference a deleted security group in a * peer VPC, or a security group in a peer VPC for which the VPC peering connection * has been deleted.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeStaleSecurityGroupsOutcomeCallable DescribeStaleSecurityGroupsCallable(const Model::DescribeStaleSecurityGroupsRequest& request) const; /** *

[VPC only] Describes the stale security group rules for security groups in a * specified VPC. Rules are stale when they reference a deleted security group in a * peer VPC, or a security group in a peer VPC for which the VPC peering connection * has been deleted.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeStaleSecurityGroupsAsync(const Model::DescribeStaleSecurityGroupsRequest& request, const DescribeStaleSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your subnets.

For more information, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSubnetsOutcome DescribeSubnets(const Model::DescribeSubnetsRequest& request) const; /** *

Describes one or more of your subnets.

For more information, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSubnetsOutcomeCallable DescribeSubnetsCallable(const Model::DescribeSubnetsRequest& request) const; /** *

Describes one or more of your subnets.

For more information, see Your * VPC and Subnets in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSubnetsAsync(const Model::DescribeSubnetsRequest& request, const DescribeSubnetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified tags for your EC2 resources.

For more * information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeTagsOutcome DescribeTags(const Model::DescribeTagsRequest& request) const; /** *

Describes the specified tags for your EC2 resources.

For more * information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTagsOutcomeCallable DescribeTagsCallable(const Model::DescribeTagsRequest& request) const; /** *

Describes the specified tags for your EC2 resources.

For more * information about tags, see Tagging * Your Resources in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTagsAsync(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more Traffic Mirror filters.

See Also:

AWS * API Reference

*/ virtual Model::DescribeTrafficMirrorFiltersOutcome DescribeTrafficMirrorFilters(const Model::DescribeTrafficMirrorFiltersRequest& request) const; /** *

Describes one or more Traffic Mirror filters.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTrafficMirrorFiltersOutcomeCallable DescribeTrafficMirrorFiltersCallable(const Model::DescribeTrafficMirrorFiltersRequest& request) const; /** *

Describes one or more Traffic Mirror filters.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTrafficMirrorFiltersAsync(const Model::DescribeTrafficMirrorFiltersRequest& request, const DescribeTrafficMirrorFiltersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror * sessions are described. Alternatively, you can filter the results.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeTrafficMirrorSessionsOutcome DescribeTrafficMirrorSessions(const Model::DescribeTrafficMirrorSessionsRequest& request) const; /** *

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror * sessions are described. Alternatively, you can filter the results.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTrafficMirrorSessionsOutcomeCallable DescribeTrafficMirrorSessionsCallable(const Model::DescribeTrafficMirrorSessionsRequest& request) const; /** *

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror * sessions are described. Alternatively, you can filter the results.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTrafficMirrorSessionsAsync(const Model::DescribeTrafficMirrorSessionsRequest& request, const DescribeTrafficMirrorSessionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Information about one or more Traffic Mirror targets.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeTrafficMirrorTargetsOutcome DescribeTrafficMirrorTargets(const Model::DescribeTrafficMirrorTargetsRequest& request) const; /** *

Information about one or more Traffic Mirror targets.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTrafficMirrorTargetsOutcomeCallable DescribeTrafficMirrorTargetsCallable(const Model::DescribeTrafficMirrorTargetsRequest& request) const; /** *

Information about one or more Traffic Mirror targets.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTrafficMirrorTargetsAsync(const Model::DescribeTrafficMirrorTargetsRequest& request, const DescribeTrafficMirrorTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more attachments between resources and transit gateways. By * default, all attachments are described. Alternatively, you can filter the * results by attachment ID, attachment state, resource ID, or resource * owner.

See Also:

AWS * API Reference

*/ virtual Model::DescribeTransitGatewayAttachmentsOutcome DescribeTransitGatewayAttachments(const Model::DescribeTransitGatewayAttachmentsRequest& request) const; /** *

Describes one or more attachments between resources and transit gateways. By * default, all attachments are described. Alternatively, you can filter the * results by attachment ID, attachment state, resource ID, or resource * owner.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewayAttachmentsOutcomeCallable DescribeTransitGatewayAttachmentsCallable(const Model::DescribeTransitGatewayAttachmentsRequest& request) const; /** *

Describes one or more attachments between resources and transit gateways. By * default, all attachments are described. Alternatively, you can filter the * results by attachment ID, attachment state, resource ID, or resource * owner.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewayAttachmentsAsync(const Model::DescribeTransitGatewayAttachmentsRequest& request, const DescribeTransitGatewayAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more transit gateway multicast domains.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeTransitGatewayMulticastDomainsOutcome DescribeTransitGatewayMulticastDomains(const Model::DescribeTransitGatewayMulticastDomainsRequest& request) const; /** *

Describes one or more transit gateway multicast domains.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewayMulticastDomainsOutcomeCallable DescribeTransitGatewayMulticastDomainsCallable(const Model::DescribeTransitGatewayMulticastDomainsRequest& request) const; /** *

Describes one or more transit gateway multicast domains.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewayMulticastDomainsAsync(const Model::DescribeTransitGatewayMulticastDomainsRequest& request, const DescribeTransitGatewayMulticastDomainsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes your transit gateway peering attachments.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeTransitGatewayPeeringAttachmentsOutcome DescribeTransitGatewayPeeringAttachments(const Model::DescribeTransitGatewayPeeringAttachmentsRequest& request) const; /** *

Describes your transit gateway peering attachments.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewayPeeringAttachmentsOutcomeCallable DescribeTransitGatewayPeeringAttachmentsCallable(const Model::DescribeTransitGatewayPeeringAttachmentsRequest& request) const; /** *

Describes your transit gateway peering attachments.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewayPeeringAttachmentsAsync(const Model::DescribeTransitGatewayPeeringAttachmentsRequest& request, const DescribeTransitGatewayPeeringAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more transit gateway route tables. By default, all transit * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

*/ virtual Model::DescribeTransitGatewayRouteTablesOutcome DescribeTransitGatewayRouteTables(const Model::DescribeTransitGatewayRouteTablesRequest& request) const; /** *

Describes one or more transit gateway route tables. By default, all transit * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewayRouteTablesOutcomeCallable DescribeTransitGatewayRouteTablesCallable(const Model::DescribeTransitGatewayRouteTablesRequest& request) const; /** *

Describes one or more transit gateway route tables. By default, all transit * gateway route tables are described. Alternatively, you can filter the * results.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewayRouteTablesAsync(const Model::DescribeTransitGatewayRouteTablesRequest& request, const DescribeTransitGatewayRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more VPC attachments. By default, all VPC attachments are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeTransitGatewayVpcAttachmentsOutcome DescribeTransitGatewayVpcAttachments(const Model::DescribeTransitGatewayVpcAttachmentsRequest& request) const; /** *

Describes one or more VPC attachments. By default, all VPC attachments are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewayVpcAttachmentsOutcomeCallable DescribeTransitGatewayVpcAttachmentsCallable(const Model::DescribeTransitGatewayVpcAttachmentsRequest& request) const; /** *

Describes one or more VPC attachments. By default, all VPC attachments are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewayVpcAttachmentsAsync(const Model::DescribeTransitGatewayVpcAttachmentsRequest& request, const DescribeTransitGatewayVpcAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more transit gateways. By default, all transit gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeTransitGatewaysOutcome DescribeTransitGateways(const Model::DescribeTransitGatewaysRequest& request) const; /** *

Describes one or more transit gateways. By default, all transit gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTransitGatewaysOutcomeCallable DescribeTransitGatewaysCallable(const Model::DescribeTransitGatewaysRequest& request) const; /** *

Describes one or more transit gateways. By default, all transit gateways are * described. Alternatively, you can filter the results.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTransitGatewaysAsync(const Model::DescribeTransitGatewaysRequest& request, const DescribeTransitGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified volume. You can specify * only one attribute at a time.

For more information about EBS volumes, see * Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVolumeAttributeOutcome DescribeVolumeAttribute(const Model::DescribeVolumeAttributeRequest& request) const; /** *

Describes the specified attribute of the specified volume. You can specify * only one attribute at a time.

For more information about EBS volumes, see * Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVolumeAttributeOutcomeCallable DescribeVolumeAttributeCallable(const Model::DescribeVolumeAttributeRequest& request) const; /** *

Describes the specified attribute of the specified volume. You can specify * only one attribute at a time.

For more information about EBS volumes, see * Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVolumeAttributeAsync(const Model::DescribeVolumeAttributeRequest& request, const DescribeVolumeAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the status of the specified volumes. Volume status provides the * result of the checks performed on your volumes to determine events that can * impair the performance of your volumes. The performance of a volume can be * affected if an issue occurs on the volume's underlying host. If the volume's * underlying host experiences a power outage or system issue, after the system is * restored, there could be data inconsistencies on the volume. Volume events * notify you if this occurs. Volume actions notify you if any action needs to be * taken in response to the event.

The DescribeVolumeStatus * operation provides the following information about the specified volumes:

*

Status: Reflects the current status of the volume. The possible * values are ok, impaired , warning, or * insufficient-data. If all checks pass, the overall status of the * volume is ok. If the check fails, the overall status is * impaired. If the status is insufficient-data, then the * checks may still be taking place on your volume at the time. We recommend that * you retry the request. For more information about volume status, see Monitoring * the status of your volumes in the Amazon Elastic Compute Cloud User * Guide.

Events: Reflect the cause of a volume status and may * require you to take action. For example, if your volume returns an * impaired status, then the volume event might be * potential-data-inconsistency. This means that your volume has been * affected by an issue with the underlying host, has all I/O operations disabled, * and may have inconsistent data.

Actions: Reflect the actions you * may have to take in response to an event. For example, if the status of the * volume is impaired and the volume event shows * potential-data-inconsistency, then the action shows * enable-volume-io. This means that you may want to enable the I/O * operations for the volume by calling the EnableVolumeIO action and then * check the volume for data consistency.

Volume status is based on the * volume status checks, and does not reflect the volume state. Therefore, volume * status does not indicate volumes in the error state (for example, * when a volume is incapable of accepting I/O.)

See Also:

AWS * API Reference

*/ virtual Model::DescribeVolumeStatusOutcome DescribeVolumeStatus(const Model::DescribeVolumeStatusRequest& request) const; /** *

Describes the status of the specified volumes. Volume status provides the * result of the checks performed on your volumes to determine events that can * impair the performance of your volumes. The performance of a volume can be * affected if an issue occurs on the volume's underlying host. If the volume's * underlying host experiences a power outage or system issue, after the system is * restored, there could be data inconsistencies on the volume. Volume events * notify you if this occurs. Volume actions notify you if any action needs to be * taken in response to the event.

The DescribeVolumeStatus * operation provides the following information about the specified volumes:

*

Status: Reflects the current status of the volume. The possible * values are ok, impaired , warning, or * insufficient-data. If all checks pass, the overall status of the * volume is ok. If the check fails, the overall status is * impaired. If the status is insufficient-data, then the * checks may still be taking place on your volume at the time. We recommend that * you retry the request. For more information about volume status, see Monitoring * the status of your volumes in the Amazon Elastic Compute Cloud User * Guide.

Events: Reflect the cause of a volume status and may * require you to take action. For example, if your volume returns an * impaired status, then the volume event might be * potential-data-inconsistency. This means that your volume has been * affected by an issue with the underlying host, has all I/O operations disabled, * and may have inconsistent data.

Actions: Reflect the actions you * may have to take in response to an event. For example, if the status of the * volume is impaired and the volume event shows * potential-data-inconsistency, then the action shows * enable-volume-io. This means that you may want to enable the I/O * operations for the volume by calling the EnableVolumeIO action and then * check the volume for data consistency.

Volume status is based on the * volume status checks, and does not reflect the volume state. Therefore, volume * status does not indicate volumes in the error state (for example, * when a volume is incapable of accepting I/O.)

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVolumeStatusOutcomeCallable DescribeVolumeStatusCallable(const Model::DescribeVolumeStatusRequest& request) const; /** *

Describes the status of the specified volumes. Volume status provides the * result of the checks performed on your volumes to determine events that can * impair the performance of your volumes. The performance of a volume can be * affected if an issue occurs on the volume's underlying host. If the volume's * underlying host experiences a power outage or system issue, after the system is * restored, there could be data inconsistencies on the volume. Volume events * notify you if this occurs. Volume actions notify you if any action needs to be * taken in response to the event.

The DescribeVolumeStatus * operation provides the following information about the specified volumes:

*

Status: Reflects the current status of the volume. The possible * values are ok, impaired , warning, or * insufficient-data. If all checks pass, the overall status of the * volume is ok. If the check fails, the overall status is * impaired. If the status is insufficient-data, then the * checks may still be taking place on your volume at the time. We recommend that * you retry the request. For more information about volume status, see Monitoring * the status of your volumes in the Amazon Elastic Compute Cloud User * Guide.

Events: Reflect the cause of a volume status and may * require you to take action. For example, if your volume returns an * impaired status, then the volume event might be * potential-data-inconsistency. This means that your volume has been * affected by an issue with the underlying host, has all I/O operations disabled, * and may have inconsistent data.

Actions: Reflect the actions you * may have to take in response to an event. For example, if the status of the * volume is impaired and the volume event shows * potential-data-inconsistency, then the action shows * enable-volume-io. This means that you may want to enable the I/O * operations for the volume by calling the EnableVolumeIO action and then * check the volume for data consistency.

Volume status is based on the * volume status checks, and does not reflect the volume state. Therefore, volume * status does not indicate volumes in the error state (for example, * when a volume is incapable of accepting I/O.)

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVolumeStatusAsync(const Model::DescribeVolumeStatusRequest& request, const DescribeVolumeStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified EBS volumes or all of your EBS volumes.

If you * are describing a long list of volumes, we recommend that you paginate the output * to make the list more manageable. The MaxResults parameter sets the * maximum number of results returned in a single page. If the list of results * exceeds your MaxResults value, then that number of results is * returned along with a NextToken value that can be passed to a * subsequent DescribeVolumes request to retrieve the remaining * results.

For more information about EBS volumes, see Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVolumesOutcome DescribeVolumes(const Model::DescribeVolumesRequest& request) const; /** *

Describes the specified EBS volumes or all of your EBS volumes.

If you * are describing a long list of volumes, we recommend that you paginate the output * to make the list more manageable. The MaxResults parameter sets the * maximum number of results returned in a single page. If the list of results * exceeds your MaxResults value, then that number of results is * returned along with a NextToken value that can be passed to a * subsequent DescribeVolumes request to retrieve the remaining * results.

For more information about EBS volumes, see Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVolumesOutcomeCallable DescribeVolumesCallable(const Model::DescribeVolumesRequest& request) const; /** *

Describes the specified EBS volumes or all of your EBS volumes.

If you * are describing a long list of volumes, we recommend that you paginate the output * to make the list more manageable. The MaxResults parameter sets the * maximum number of results returned in a single page. If the list of results * exceeds your MaxResults value, then that number of results is * returned along with a NextToken value that can be passed to a * subsequent DescribeVolumes request to retrieve the remaining * results.

For more information about EBS volumes, see Amazon * EBS Volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVolumesAsync(const Model::DescribeVolumesRequest& request, const DescribeVolumesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the most recent volume modification request for the specified EBS * volumes.

If a volume has never been modified, some information in the * output will be null. If a volume has been modified more than once, the output * includes only the most recent modification request.

You can also use * CloudWatch Events to check the status of a modification to an EBS volume. For * information about CloudWatch Events, see the Amazon * CloudWatch Events User Guide. For more information, see Monitoring * volume modifications in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVolumesModificationsOutcome DescribeVolumesModifications(const Model::DescribeVolumesModificationsRequest& request) const; /** *

Describes the most recent volume modification request for the specified EBS * volumes.

If a volume has never been modified, some information in the * output will be null. If a volume has been modified more than once, the output * includes only the most recent modification request.

You can also use * CloudWatch Events to check the status of a modification to an EBS volume. For * information about CloudWatch Events, see the Amazon * CloudWatch Events User Guide. For more information, see Monitoring * volume modifications in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVolumesModificationsOutcomeCallable DescribeVolumesModificationsCallable(const Model::DescribeVolumesModificationsRequest& request) const; /** *

Describes the most recent volume modification request for the specified EBS * volumes.

If a volume has never been modified, some information in the * output will be null. If a volume has been modified more than once, the output * includes only the most recent modification request.

You can also use * CloudWatch Events to check the status of a modification to an EBS volume. For * information about CloudWatch Events, see the Amazon * CloudWatch Events User Guide. For more information, see Monitoring * volume modifications in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVolumesModificationsAsync(const Model::DescribeVolumesModificationsRequest& request, const DescribeVolumesModificationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the specified attribute of the specified VPC. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcAttributeOutcome DescribeVpcAttribute(const Model::DescribeVpcAttributeRequest& request) const; /** *

Describes the specified attribute of the specified VPC. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcAttributeOutcomeCallable DescribeVpcAttributeCallable(const Model::DescribeVpcAttributeRequest& request) const; /** *

Describes the specified attribute of the specified VPC. You can specify only * one attribute at a time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcAttributeAsync(const Model::DescribeVpcAttributeRequest& request, const DescribeVpcAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the ClassicLink status of one or more VPCs.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeVpcClassicLinkOutcome DescribeVpcClassicLink(const Model::DescribeVpcClassicLinkRequest& request) const; /** *

Describes the ClassicLink status of one or more VPCs.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcClassicLinkOutcomeCallable DescribeVpcClassicLinkCallable(const Model::DescribeVpcClassicLinkRequest& request) const; /** *

Describes the ClassicLink status of one or more VPCs.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcClassicLinkAsync(const Model::DescribeVpcClassicLinkRequest& request, const DescribeVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeVpcClassicLinkDnsSupportOutcome DescribeVpcClassicLinkDnsSupport(const Model::DescribeVpcClassicLinkDnsSupportRequest& request) const; /** *

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcClassicLinkDnsSupportOutcomeCallable DescribeVpcClassicLinkDnsSupportCallable(const Model::DescribeVpcClassicLinkDnsSupportRequest& request) const; /** *

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcClassicLinkDnsSupportAsync(const Model::DescribeVpcClassicLinkDnsSupportRequest& request, const DescribeVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the connection notifications for VPC endpoints and VPC endpoint * services.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointConnectionNotificationsOutcome DescribeVpcEndpointConnectionNotifications(const Model::DescribeVpcEndpointConnectionNotificationsRequest& request) const; /** *

Describes the connection notifications for VPC endpoints and VPC endpoint * services.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointConnectionNotificationsOutcomeCallable DescribeVpcEndpointConnectionNotificationsCallable(const Model::DescribeVpcEndpointConnectionNotificationsRequest& request) const; /** *

Describes the connection notifications for VPC endpoints and VPC endpoint * services.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointConnectionNotificationsAsync(const Model::DescribeVpcEndpointConnectionNotificationsRequest& request, const DescribeVpcEndpointConnectionNotificationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the VPC endpoint connections to your VPC endpoint services, * including any endpoints that are pending your acceptance.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointConnectionsOutcome DescribeVpcEndpointConnections(const Model::DescribeVpcEndpointConnectionsRequest& request) const; /** *

Describes the VPC endpoint connections to your VPC endpoint services, * including any endpoints that are pending your acceptance.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointConnectionsOutcomeCallable DescribeVpcEndpointConnectionsCallable(const Model::DescribeVpcEndpointConnectionsRequest& request) const; /** *

Describes the VPC endpoint connections to your VPC endpoint services, * including any endpoints that are pending your acceptance.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointConnectionsAsync(const Model::DescribeVpcEndpointConnectionsRequest& request, const DescribeVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the VPC endpoint service configurations in your account (your * services).

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointServiceConfigurationsOutcome DescribeVpcEndpointServiceConfigurations(const Model::DescribeVpcEndpointServiceConfigurationsRequest& request) const; /** *

Describes the VPC endpoint service configurations in your account (your * services).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointServiceConfigurationsOutcomeCallable DescribeVpcEndpointServiceConfigurationsCallable(const Model::DescribeVpcEndpointServiceConfigurationsRequest& request) const; /** *

Describes the VPC endpoint service configurations in your account (your * services).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointServiceConfigurationsAsync(const Model::DescribeVpcEndpointServiceConfigurationsRequest& request, const DescribeVpcEndpointServiceConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the principals (service consumers) that are permitted to discover * your VPC endpoint service.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointServicePermissionsOutcome DescribeVpcEndpointServicePermissions(const Model::DescribeVpcEndpointServicePermissionsRequest& request) const; /** *

Describes the principals (service consumers) that are permitted to discover * your VPC endpoint service.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointServicePermissionsOutcomeCallable DescribeVpcEndpointServicePermissionsCallable(const Model::DescribeVpcEndpointServicePermissionsRequest& request) const; /** *

Describes the principals (service consumers) that are permitted to discover * your VPC endpoint service.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointServicePermissionsAsync(const Model::DescribeVpcEndpointServicePermissionsRequest& request, const DescribeVpcEndpointServicePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes available services to which you can create a VPC * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointServicesOutcome DescribeVpcEndpointServices(const Model::DescribeVpcEndpointServicesRequest& request) const; /** *

Describes available services to which you can create a VPC * endpoint.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointServicesOutcomeCallable DescribeVpcEndpointServicesCallable(const Model::DescribeVpcEndpointServicesRequest& request) const; /** *

Describes available services to which you can create a VPC * endpoint.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointServicesAsync(const Model::DescribeVpcEndpointServicesRequest& request, const DescribeVpcEndpointServicesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your VPC endpoints.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcEndpointsOutcome DescribeVpcEndpoints(const Model::DescribeVpcEndpointsRequest& request) const; /** *

Describes one or more of your VPC endpoints.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcEndpointsOutcomeCallable DescribeVpcEndpointsCallable(const Model::DescribeVpcEndpointsRequest& request) const; /** *

Describes one or more of your VPC endpoints.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcEndpointsAsync(const Model::DescribeVpcEndpointsRequest& request, const DescribeVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your VPC peering connections.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeVpcPeeringConnectionsOutcome DescribeVpcPeeringConnections(const Model::DescribeVpcPeeringConnectionsRequest& request) const; /** *

Describes one or more of your VPC peering connections.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcPeeringConnectionsOutcomeCallable DescribeVpcPeeringConnectionsCallable(const Model::DescribeVpcPeeringConnectionsRequest& request) const; /** *

Describes one or more of your VPC peering connections.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcPeeringConnectionsAsync(const Model::DescribeVpcPeeringConnectionsRequest& request, const DescribeVpcPeeringConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your VPCs.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpcsOutcome DescribeVpcs(const Model::DescribeVpcsRequest& request) const; /** *

Describes one or more of your VPCs.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpcsOutcomeCallable DescribeVpcsCallable(const Model::DescribeVpcsRequest& request) const; /** *

Describes one or more of your VPCs.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpcsAsync(const Model::DescribeVpcsRequest& request, const DescribeVpcsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your VPN connections.

For more information, * see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpnConnectionsOutcome DescribeVpnConnections(const Model::DescribeVpnConnectionsRequest& request) const; /** *

Describes one or more of your VPN connections.

For more information, * see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpnConnectionsOutcomeCallable DescribeVpnConnectionsCallable(const Model::DescribeVpnConnectionsRequest& request) const; /** *

Describes one or more of your VPN connections.

For more information, * see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpnConnectionsAsync(const Model::DescribeVpnConnectionsRequest& request, const DescribeVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes one or more of your virtual private gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeVpnGatewaysOutcome DescribeVpnGateways(const Model::DescribeVpnGatewaysRequest& request) const; /** *

Describes one or more of your virtual private gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeVpnGatewaysOutcomeCallable DescribeVpnGatewaysCallable(const Model::DescribeVpnGatewaysRequest& request) const; /** *

Describes one or more of your virtual private gateways.

For more * information, see AWS * Site-to-Site VPN in the AWS Site-to-Site VPN User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeVpnGatewaysAsync(const Model::DescribeVpnGatewaysRequest& request, const DescribeVpnGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the * instance has been unlinked, the VPC security groups are no longer associated * with it. An instance is automatically unlinked from a VPC when it's * stopped.

See Also:

AWS * API Reference

*/ virtual Model::DetachClassicLinkVpcOutcome DetachClassicLinkVpc(const Model::DetachClassicLinkVpcRequest& request) const; /** *

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the * instance has been unlinked, the VPC security groups are no longer associated * with it. An instance is automatically unlinked from a VPC when it's * stopped.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetachClassicLinkVpcOutcomeCallable DetachClassicLinkVpcCallable(const Model::DetachClassicLinkVpcRequest& request) const; /** *

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the * instance has been unlinked, the VPC security groups are no longer associated * with it. An instance is automatically unlinked from a VPC when it's * stopped.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetachClassicLinkVpcAsync(const Model::DetachClassicLinkVpcRequest& request, const DetachClassicLinkVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Detaches an internet gateway from a VPC, disabling connectivity between the * internet and the VPC. The VPC must not contain any running instances with * Elastic IP addresses or public IPv4 addresses.

See Also:

AWS * API Reference

*/ virtual Model::DetachInternetGatewayOutcome DetachInternetGateway(const Model::DetachInternetGatewayRequest& request) const; /** *

Detaches an internet gateway from a VPC, disabling connectivity between the * internet and the VPC. The VPC must not contain any running instances with * Elastic IP addresses or public IPv4 addresses.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetachInternetGatewayOutcomeCallable DetachInternetGatewayCallable(const Model::DetachInternetGatewayRequest& request) const; /** *

Detaches an internet gateway from a VPC, disabling connectivity between the * internet and the VPC. The VPC must not contain any running instances with * Elastic IP addresses or public IPv4 addresses.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetachInternetGatewayAsync(const Model::DetachInternetGatewayRequest& request, const DetachInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Detaches a network interface from an instance.

See Also:

AWS * API Reference

*/ virtual Model::DetachNetworkInterfaceOutcome DetachNetworkInterface(const Model::DetachNetworkInterfaceRequest& request) const; /** *

Detaches a network interface from an instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetachNetworkInterfaceOutcomeCallable DetachNetworkInterfaceCallable(const Model::DetachNetworkInterfaceRequest& request) const; /** *

Detaches a network interface from an instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetachNetworkInterfaceAsync(const Model::DetachNetworkInterfaceRequest& request, const DetachNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Detaches an EBS volume from an instance. Make sure to unmount any file * systems on the device within your operating system before detaching the volume. * Failure to do so can result in the volume becoming stuck in the * busy state while detaching. If this happens, detachment can be * delayed indefinitely until you unmount the volume, force detachment, reboot the * instance, or all three. If an EBS volume is the root device of an instance, it * can't be detached while the instance is running. To detach the root volume, stop * the instance first.

When a volume with an AWS Marketplace product code is * detached from an instance, the product code is no longer associated with the * instance.

For more information, see Detaching * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DetachVolumeOutcome DetachVolume(const Model::DetachVolumeRequest& request) const; /** *

Detaches an EBS volume from an instance. Make sure to unmount any file * systems on the device within your operating system before detaching the volume. * Failure to do so can result in the volume becoming stuck in the * busy state while detaching. If this happens, detachment can be * delayed indefinitely until you unmount the volume, force detachment, reboot the * instance, or all three. If an EBS volume is the root device of an instance, it * can't be detached while the instance is running. To detach the root volume, stop * the instance first.

When a volume with an AWS Marketplace product code is * detached from an instance, the product code is no longer associated with the * instance.

For more information, see Detaching * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetachVolumeOutcomeCallable DetachVolumeCallable(const Model::DetachVolumeRequest& request) const; /** *

Detaches an EBS volume from an instance. Make sure to unmount any file * systems on the device within your operating system before detaching the volume. * Failure to do so can result in the volume becoming stuck in the * busy state while detaching. If this happens, detachment can be * delayed indefinitely until you unmount the volume, force detachment, reboot the * instance, or all three. If an EBS volume is the root device of an instance, it * can't be detached while the instance is running. To detach the root volume, stop * the instance first.

When a volume with an AWS Marketplace product code is * detached from an instance, the product code is no longer associated with the * instance.

For more information, see Detaching * an Amazon EBS volume in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetachVolumeAsync(const Model::DetachVolumeRequest& request, const DetachVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Detaches a virtual private gateway from a VPC. You do this if you're planning * to turn off the VPC and not use it anymore. You can confirm a virtual private * gateway has been completely detached from a VPC by describing the virtual * private gateway (any attachments to the virtual private gateway are also * described).

You must wait for the attachment's state to switch to * detached before you can delete the VPC or attach a different VPC to * the virtual private gateway.

See Also:

AWS * API Reference

*/ virtual Model::DetachVpnGatewayOutcome DetachVpnGateway(const Model::DetachVpnGatewayRequest& request) const; /** *

Detaches a virtual private gateway from a VPC. You do this if you're planning * to turn off the VPC and not use it anymore. You can confirm a virtual private * gateway has been completely detached from a VPC by describing the virtual * private gateway (any attachments to the virtual private gateway are also * described).

You must wait for the attachment's state to switch to * detached before you can delete the VPC or attach a different VPC to * the virtual private gateway.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetachVpnGatewayOutcomeCallable DetachVpnGatewayCallable(const Model::DetachVpnGatewayRequest& request) const; /** *

Detaches a virtual private gateway from a VPC. You do this if you're planning * to turn off the VPC and not use it anymore. You can confirm a virtual private * gateway has been completely detached from a VPC by describing the virtual * private gateway (any attachments to the virtual private gateway are also * described).

You must wait for the attachment's state to switch to * detached before you can delete the VPC or attach a different VPC to * the virtual private gateway.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetachVpnGatewayAsync(const Model::DetachVpnGatewayRequest& request, const DetachVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables EBS encryption by default for your account in the current * Region.

After you disable encryption by default, you can still create * encrypted volumes by enabling encryption when you create each volume.

*

Disabling encryption by default does not change the encryption status of your * existing volumes.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DisableEbsEncryptionByDefaultOutcome DisableEbsEncryptionByDefault(const Model::DisableEbsEncryptionByDefaultRequest& request) const; /** *

Disables EBS encryption by default for your account in the current * Region.

After you disable encryption by default, you can still create * encrypted volumes by enabling encryption when you create each volume.

*

Disabling encryption by default does not change the encryption status of your * existing volumes.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableEbsEncryptionByDefaultOutcomeCallable DisableEbsEncryptionByDefaultCallable(const Model::DisableEbsEncryptionByDefaultRequest& request) const; /** *

Disables EBS encryption by default for your account in the current * Region.

After you disable encryption by default, you can still create * encrypted volumes by enabling encryption when you create each volume.

*

Disabling encryption by default does not change the encryption status of your * existing volumes.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableEbsEncryptionByDefaultAsync(const Model::DisableEbsEncryptionByDefaultRequest& request, const DisableEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

See Also:

AWS * API Reference

*/ virtual Model::DisableFastSnapshotRestoresOutcome DisableFastSnapshotRestores(const Model::DisableFastSnapshotRestoresRequest& request) const; /** *

Disables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableFastSnapshotRestoresOutcomeCallable DisableFastSnapshotRestoresCallable(const Model::DisableFastSnapshotRestoresRequest& request) const; /** *

Disables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableFastSnapshotRestoresAsync(const Model::DisableFastSnapshotRestoresRequest& request, const DisableFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables the specified resource attachment from propagating routes to the * specified propagation route table.

See Also:

AWS * API Reference

*/ virtual Model::DisableTransitGatewayRouteTablePropagationOutcome DisableTransitGatewayRouteTablePropagation(const Model::DisableTransitGatewayRouteTablePropagationRequest& request) const; /** *

Disables the specified resource attachment from propagating routes to the * specified propagation route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableTransitGatewayRouteTablePropagationOutcomeCallable DisableTransitGatewayRouteTablePropagationCallable(const Model::DisableTransitGatewayRouteTablePropagationRequest& request) const; /** *

Disables the specified resource attachment from propagating routes to the * specified propagation route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableTransitGatewayRouteTablePropagationAsync(const Model::DisableTransitGatewayRouteTablePropagationRequest& request, const DisableTransitGatewayRouteTablePropagationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables a virtual private gateway (VGW) from propagating routes to a * specified route table of a VPC.

See Also:

AWS * API Reference

*/ virtual Model::DisableVgwRoutePropagationOutcome DisableVgwRoutePropagation(const Model::DisableVgwRoutePropagationRequest& request) const; /** *

Disables a virtual private gateway (VGW) from propagating routes to a * specified route table of a VPC.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableVgwRoutePropagationOutcomeCallable DisableVgwRoutePropagationCallable(const Model::DisableVgwRoutePropagationRequest& request) const; /** *

Disables a virtual private gateway (VGW) from propagating routes to a * specified route table of a VPC.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableVgwRoutePropagationAsync(const Model::DisableVgwRoutePropagationRequest& request, const DisableVgwRoutePropagationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that * has EC2-Classic instances linked to it.

See Also:

AWS * API Reference

*/ virtual Model::DisableVpcClassicLinkOutcome DisableVpcClassicLink(const Model::DisableVpcClassicLinkRequest& request) const; /** *

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that * has EC2-Classic instances linked to it.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableVpcClassicLinkOutcomeCallable DisableVpcClassicLinkCallable(const Model::DisableVpcClassicLinkRequest& request) const; /** *

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that * has EC2-Classic instances linked to it.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableVpcClassicLinkAsync(const Model::DisableVpcClassicLinkRequest& request, const DisableVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames * resolve to public IP addresses when addressed between a linked EC2-Classic * instance and instances in the VPC to which it's linked. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

*/ virtual Model::DisableVpcClassicLinkDnsSupportOutcome DisableVpcClassicLinkDnsSupport(const Model::DisableVpcClassicLinkDnsSupportRequest& request) const; /** *

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames * resolve to public IP addresses when addressed between a linked EC2-Classic * instance and instances in the VPC to which it's linked. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableVpcClassicLinkDnsSupportOutcomeCallable DisableVpcClassicLinkDnsSupportCallable(const Model::DisableVpcClassicLinkDnsSupportRequest& request) const; /** *

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames * resolve to public IP addresses when addressed between a linked EC2-Classic * instance and instances in the VPC to which it's linked. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableVpcClassicLinkDnsSupportAsync(const Model::DisableVpcClassicLinkDnsSupportRequest& request, const DisableVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates an Elastic IP address from the instance or network interface * it's associated with.

An Elastic IP address is for use in either the * EC2-Classic platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

This is an idempotent operation. If you perform the operation more than once, * Amazon EC2 doesn't return an error.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateAddressOutcome DisassociateAddress(const Model::DisassociateAddressRequest& request) const; /** *

Disassociates an Elastic IP address from the instance or network interface * it's associated with.

An Elastic IP address is for use in either the * EC2-Classic platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

This is an idempotent operation. If you perform the operation more than once, * Amazon EC2 doesn't return an error.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateAddressOutcomeCallable DisassociateAddressCallable(const Model::DisassociateAddressRequest& request) const; /** *

Disassociates an Elastic IP address from the instance or network interface * it's associated with.

An Elastic IP address is for use in either the * EC2-Classic platform or in a VPC. For more information, see Elastic * IP Addresses in the Amazon Elastic Compute Cloud User Guide.

*

This is an idempotent operation. If you perform the operation more than once, * Amazon EC2 doesn't return an error.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateAddressAsync(const Model::DisassociateAddressRequest& request, const DisassociateAddressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a target network from the specified Client VPN endpoint. When * you disassociate the last target network from a Client VPN, the following * happens:

  • The route that was automatically added for the VPC is * deleted

  • All active client connections are terminated

  • *
  • New client connections are disallowed

  • The Client VPN * endpoint's status changes to pending-associate

  • *

See Also:

AWS * API Reference

*/ virtual Model::DisassociateClientVpnTargetNetworkOutcome DisassociateClientVpnTargetNetwork(const Model::DisassociateClientVpnTargetNetworkRequest& request) const; /** *

Disassociates a target network from the specified Client VPN endpoint. When * you disassociate the last target network from a Client VPN, the following * happens:

  • The route that was automatically added for the VPC is * deleted

  • All active client connections are terminated

  • *
  • New client connections are disallowed

  • The Client VPN * endpoint's status changes to pending-associate

  • *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateClientVpnTargetNetworkOutcomeCallable DisassociateClientVpnTargetNetworkCallable(const Model::DisassociateClientVpnTargetNetworkRequest& request) const; /** *

Disassociates a target network from the specified Client VPN endpoint. When * you disassociate the last target network from a Client VPN, the following * happens:

  • The route that was automatically added for the VPC is * deleted

  • All active client connections are terminated

  • *
  • New client connections are disallowed

  • The Client VPN * endpoint's status changes to pending-associate

  • *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateClientVpnTargetNetworkAsync(const Model::DisassociateClientVpnTargetNetworkRequest& request, const DisassociateClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates an IAM instance profile from a running or stopped instance.

*

Use DescribeIamInstanceProfileAssociations to get the association * ID.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateIamInstanceProfileOutcome DisassociateIamInstanceProfile(const Model::DisassociateIamInstanceProfileRequest& request) const; /** *

Disassociates an IAM instance profile from a running or stopped instance.

*

Use DescribeIamInstanceProfileAssociations to get the association * ID.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateIamInstanceProfileOutcomeCallable DisassociateIamInstanceProfileCallable(const Model::DisassociateIamInstanceProfileRequest& request) const; /** *

Disassociates an IAM instance profile from a running or stopped instance.

*

Use DescribeIamInstanceProfileAssociations to get the association * ID.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateIamInstanceProfileAsync(const Model::DisassociateIamInstanceProfileRequest& request, const DisassociateIamInstanceProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a subnet or gateway from a route table.

After you * perform this action, the subnet no longer uses the routes in the route table. * Instead, it uses the routes in the VPC's main route table. For more information * about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::DisassociateRouteTableOutcome DisassociateRouteTable(const Model::DisassociateRouteTableRequest& request) const; /** *

Disassociates a subnet or gateway from a route table.

After you * perform this action, the subnet no longer uses the routes in the route table. * Instead, it uses the routes in the VPC's main route table. For more information * about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateRouteTableOutcomeCallable DisassociateRouteTableCallable(const Model::DisassociateRouteTableRequest& request) const; /** *

Disassociates a subnet or gateway from a route table.

After you * perform this action, the subnet no longer uses the routes in the route table. * Instead, it uses the routes in the VPC's main route table. For more information * about route tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateRouteTableAsync(const Model::DisassociateRouteTableRequest& request, const DisassociateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a CIDR block from a subnet. Currently, you can disassociate an * IPv6 CIDR block only. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it. *

See Also:

AWS * API Reference

*/ virtual Model::DisassociateSubnetCidrBlockOutcome DisassociateSubnetCidrBlock(const Model::DisassociateSubnetCidrBlockRequest& request) const; /** *

Disassociates a CIDR block from a subnet. Currently, you can disassociate an * IPv6 CIDR block only. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it. *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateSubnetCidrBlockOutcomeCallable DisassociateSubnetCidrBlockCallable(const Model::DisassociateSubnetCidrBlockRequest& request) const; /** *

Disassociates a CIDR block from a subnet. Currently, you can disassociate an * IPv6 CIDR block only. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it. *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateSubnetCidrBlockAsync(const Model::DisassociateSubnetCidrBlockRequest& request, const DisassociateSubnetCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates the specified subnets from the transit gateway multicast * domain.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateTransitGatewayMulticastDomainOutcome DisassociateTransitGatewayMulticastDomain(const Model::DisassociateTransitGatewayMulticastDomainRequest& request) const; /** *

Disassociates the specified subnets from the transit gateway multicast * domain.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateTransitGatewayMulticastDomainOutcomeCallable DisassociateTransitGatewayMulticastDomainCallable(const Model::DisassociateTransitGatewayMulticastDomainRequest& request) const; /** *

Disassociates the specified subnets from the transit gateway multicast * domain.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateTransitGatewayMulticastDomainAsync(const Model::DisassociateTransitGatewayMulticastDomainRequest& request, const DisassociateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a resource attachment from a transit gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateTransitGatewayRouteTableOutcome DisassociateTransitGatewayRouteTable(const Model::DisassociateTransitGatewayRouteTableRequest& request) const; /** *

Disassociates a resource attachment from a transit gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateTransitGatewayRouteTableOutcomeCallable DisassociateTransitGatewayRouteTableCallable(const Model::DisassociateTransitGatewayRouteTableRequest& request) const; /** *

Disassociates a resource attachment from a transit gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateTransitGatewayRouteTableAsync(const Model::DisassociateTransitGatewayRouteTableRequest& request, const DisassociateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you * must specify its association ID. You can get the association ID by using * DescribeVpcs. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it.

You * cannot disassociate the CIDR block with which you originally created the VPC * (the primary CIDR block).

See Also:

AWS * API Reference

*/ virtual Model::DisassociateVpcCidrBlockOutcome DisassociateVpcCidrBlock(const Model::DisassociateVpcCidrBlockRequest& request) const; /** *

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you * must specify its association ID. You can get the association ID by using * DescribeVpcs. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it.

You * cannot disassociate the CIDR block with which you originally created the VPC * (the primary CIDR block).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateVpcCidrBlockOutcomeCallable DisassociateVpcCidrBlockCallable(const Model::DisassociateVpcCidrBlockRequest& request) const; /** *

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you * must specify its association ID. You can get the association ID by using * DescribeVpcs. You must detach or delete all gateways and resources that * are associated with the CIDR block before you can disassociate it.

You * cannot disassociate the CIDR block with which you originally created the VPC * (the primary CIDR block).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateVpcCidrBlockAsync(const Model::DisassociateVpcCidrBlockRequest& request, const DisassociateVpcCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables EBS encryption by default for your account in the current Region.

*

After you enable encryption by default, the EBS volumes that you create are * are always encrypted, either using the default CMK or the CMK that you specified * when you created each volume. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can specify the default CMK for encryption by default using * ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.

*

Enabling encryption by default has no effect on the encryption status of your * existing volumes.

After you enable encryption by default, you can no * longer launch instances using instance types that do not support encryption. For * more information, see Supported * instance types.

See Also:

AWS * API Reference

*/ virtual Model::EnableEbsEncryptionByDefaultOutcome EnableEbsEncryptionByDefault(const Model::EnableEbsEncryptionByDefaultRequest& request) const; /** *

Enables EBS encryption by default for your account in the current Region.

*

After you enable encryption by default, the EBS volumes that you create are * are always encrypted, either using the default CMK or the CMK that you specified * when you created each volume. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can specify the default CMK for encryption by default using * ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.

*

Enabling encryption by default has no effect on the encryption status of your * existing volumes.

After you enable encryption by default, you can no * longer launch instances using instance types that do not support encryption. For * more information, see Supported * instance types.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableEbsEncryptionByDefaultOutcomeCallable EnableEbsEncryptionByDefaultCallable(const Model::EnableEbsEncryptionByDefaultRequest& request) const; /** *

Enables EBS encryption by default for your account in the current Region.

*

After you enable encryption by default, the EBS volumes that you create are * are always encrypted, either using the default CMK or the CMK that you specified * when you created each volume. For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*

You can specify the default CMK for encryption by default using * ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.

*

Enabling encryption by default has no effect on the encryption status of your * existing volumes.

After you enable encryption by default, you can no * longer launch instances using instance types that do not support encryption. For * more information, see Supported * instance types.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableEbsEncryptionByDefaultAsync(const Model::EnableEbsEncryptionByDefaultRequest& request, const EnableEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

You get the full benefit of fast snapshot restores * after they enter the enabled state. To get the current state of * fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast * snapshot restores, use DisableFastSnapshotRestores.

For more * information, see Amazon * EBS fast snapshot restore in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::EnableFastSnapshotRestoresOutcome EnableFastSnapshotRestores(const Model::EnableFastSnapshotRestoresRequest& request) const; /** *

Enables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

You get the full benefit of fast snapshot restores * after they enter the enabled state. To get the current state of * fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast * snapshot restores, use DisableFastSnapshotRestores.

For more * information, see Amazon * EBS fast snapshot restore in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableFastSnapshotRestoresOutcomeCallable EnableFastSnapshotRestoresCallable(const Model::EnableFastSnapshotRestoresRequest& request) const; /** *

Enables fast snapshot restores for the specified snapshots in the specified * Availability Zones.

You get the full benefit of fast snapshot restores * after they enter the enabled state. To get the current state of * fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast * snapshot restores, use DisableFastSnapshotRestores.

For more * information, see Amazon * EBS fast snapshot restore in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableFastSnapshotRestoresAsync(const Model::EnableFastSnapshotRestoresRequest& request, const EnableFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables the specified attachment to propagate routes to the specified * propagation route table.

See Also:

AWS * API Reference

*/ virtual Model::EnableTransitGatewayRouteTablePropagationOutcome EnableTransitGatewayRouteTablePropagation(const Model::EnableTransitGatewayRouteTablePropagationRequest& request) const; /** *

Enables the specified attachment to propagate routes to the specified * propagation route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableTransitGatewayRouteTablePropagationOutcomeCallable EnableTransitGatewayRouteTablePropagationCallable(const Model::EnableTransitGatewayRouteTablePropagationRequest& request) const; /** *

Enables the specified attachment to propagate routes to the specified * propagation route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableTransitGatewayRouteTablePropagationAsync(const Model::EnableTransitGatewayRouteTablePropagationRequest& request, const EnableTransitGatewayRouteTablePropagationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables a virtual private gateway (VGW) to propagate routes to the specified * route table of a VPC.

See Also:

AWS * API Reference

*/ virtual Model::EnableVgwRoutePropagationOutcome EnableVgwRoutePropagation(const Model::EnableVgwRoutePropagationRequest& request) const; /** *

Enables a virtual private gateway (VGW) to propagate routes to the specified * route table of a VPC.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableVgwRoutePropagationOutcomeCallable EnableVgwRoutePropagationCallable(const Model::EnableVgwRoutePropagationRequest& request) const; /** *

Enables a virtual private gateway (VGW) to propagate routes to the specified * route table of a VPC.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableVgwRoutePropagationAsync(const Model::EnableVgwRoutePropagationRequest& request, const EnableVgwRoutePropagationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables I/O operations for a volume that had I/O operations disabled because * the data on the volume was potentially inconsistent.

See Also:

* AWS * API Reference

*/ virtual Model::EnableVolumeIOOutcome EnableVolumeIO(const Model::EnableVolumeIORequest& request) const; /** *

Enables I/O operations for a volume that had I/O operations disabled because * the data on the volume was potentially inconsistent.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableVolumeIOOutcomeCallable EnableVolumeIOCallable(const Model::EnableVolumeIORequest& request) const; /** *

Enables I/O operations for a volume that had I/O operations disabled because * the data on the volume was potentially inconsistent.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableVolumeIOAsync(const Model::EnableVolumeIORequest& request, const EnableVolumeIOResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to * your ClassicLink-enabled VPC to allow communication over private IP addresses. * You cannot enable your VPC for ClassicLink if any of your VPC route tables have * existing routes for address ranges within the 10.0.0.0/8 IP address * range, excluding local routes for VPCs in the 10.0.0.0/16 and * 10.1.0.0/16 IP address ranges. For more information, see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

*/ virtual Model::EnableVpcClassicLinkOutcome EnableVpcClassicLink(const Model::EnableVpcClassicLinkRequest& request) const; /** *

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to * your ClassicLink-enabled VPC to allow communication over private IP addresses. * You cannot enable your VPC for ClassicLink if any of your VPC route tables have * existing routes for address ranges within the 10.0.0.0/8 IP address * range, excluding local routes for VPCs in the 10.0.0.0/16 and * 10.1.0.0/16 IP address ranges. For more information, see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableVpcClassicLinkOutcomeCallable EnableVpcClassicLinkCallable(const Model::EnableVpcClassicLinkRequest& request) const; /** *

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to * your ClassicLink-enabled VPC to allow communication over private IP addresses. * You cannot enable your VPC for ClassicLink if any of your VPC route tables have * existing routes for address ranges within the 10.0.0.0/8 IP address * range, excluding local routes for VPCs in the 10.0.0.0/16 and * 10.1.0.0/16 IP address ranges. For more information, see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableVpcClassicLinkAsync(const Model::EnableVpcClassicLinkRequest& request, const EnableVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

*/ virtual Model::EnableVpcClassicLinkDnsSupportOutcome EnableVpcClassicLinkDnsSupport(const Model::EnableVpcClassicLinkDnsSupportRequest& request) const; /** *

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableVpcClassicLinkDnsSupportOutcomeCallable EnableVpcClassicLinkDnsSupportCallable(const Model::EnableVpcClassicLinkDnsSupportRequest& request) const; /** *

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, * the DNS hostname of a linked EC2-Classic instance resolves to its private IP * address when addressed from an instance in the VPC to which it's linked. * Similarly, the DNS hostname of an instance in a VPC resolves to its private IP * address when addressed from a linked EC2-Classic instance. For more information, * see ClassicLink * in the Amazon Elastic Compute Cloud User Guide.

You must specify a * VPC ID in the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableVpcClassicLinkDnsSupportAsync(const Model::EnableVpcClassicLinkDnsSupportRequest& request, const EnableVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Downloads the client certificate revocation list for the specified Client VPN * endpoint.

See Also:

AWS * API Reference

*/ virtual Model::ExportClientVpnClientCertificateRevocationListOutcome ExportClientVpnClientCertificateRevocationList(const Model::ExportClientVpnClientCertificateRevocationListRequest& request) const; /** *

Downloads the client certificate revocation list for the specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ExportClientVpnClientCertificateRevocationListOutcomeCallable ExportClientVpnClientCertificateRevocationListCallable(const Model::ExportClientVpnClientCertificateRevocationListRequest& request) const; /** *

Downloads the client certificate revocation list for the specified Client VPN * endpoint.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ExportClientVpnClientCertificateRevocationListAsync(const Model::ExportClientVpnClientCertificateRevocationListRequest& request, const ExportClientVpnClientCertificateRevocationListResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Downloads the contents of the Client VPN endpoint configuration file for the * specified Client VPN endpoint. The Client VPN endpoint configuration file * includes the Client VPN endpoint and certificate information clients need to * establish a connection with the Client VPN endpoint.

See Also:

* AWS * API Reference

*/ virtual Model::ExportClientVpnClientConfigurationOutcome ExportClientVpnClientConfiguration(const Model::ExportClientVpnClientConfigurationRequest& request) const; /** *

Downloads the contents of the Client VPN endpoint configuration file for the * specified Client VPN endpoint. The Client VPN endpoint configuration file * includes the Client VPN endpoint and certificate information clients need to * establish a connection with the Client VPN endpoint.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ExportClientVpnClientConfigurationOutcomeCallable ExportClientVpnClientConfigurationCallable(const Model::ExportClientVpnClientConfigurationRequest& request) const; /** *

Downloads the contents of the Client VPN endpoint configuration file for the * specified Client VPN endpoint. The Client VPN endpoint configuration file * includes the Client VPN endpoint and certificate information clients need to * establish a connection with the Client VPN endpoint.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ExportClientVpnClientConfigurationAsync(const Model::ExportClientVpnClientConfigurationRequest& request, const ExportClientVpnClientConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see * Exporting * a VM Directory from an Amazon Machine Image (AMI) in the VM Import/Export * User Guide.

See Also:

AWS API * Reference

*/ virtual Model::ExportImageOutcome ExportImage(const Model::ExportImageRequest& request) const; /** *

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see * Exporting * a VM Directory from an Amazon Machine Image (AMI) in the VM Import/Export * User Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ExportImageOutcomeCallable ExportImageCallable(const Model::ExportImageRequest& request) const; /** *

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see * Exporting * a VM Directory from an Amazon Machine Image (AMI) in the VM Import/Export * User Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ExportImageAsync(const Model::ExportImageRequest& request, const ExportImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Exports routes from the specified transit gateway route table to the * specified S3 bucket. By default, all routes are exported. Alternatively, you can * filter by CIDR range.

The routes are saved to the specified bucket in a * JSON file. For more information, see Export * Route Tables to Amazon S3 in Transit Gateways.

See * Also:

AWS * API Reference

*/ virtual Model::ExportTransitGatewayRoutesOutcome ExportTransitGatewayRoutes(const Model::ExportTransitGatewayRoutesRequest& request) const; /** *

Exports routes from the specified transit gateway route table to the * specified S3 bucket. By default, all routes are exported. Alternatively, you can * filter by CIDR range.

The routes are saved to the specified bucket in a * JSON file. For more information, see Export * Route Tables to Amazon S3 in Transit Gateways.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ExportTransitGatewayRoutesOutcomeCallable ExportTransitGatewayRoutesCallable(const Model::ExportTransitGatewayRoutesRequest& request) const; /** *

Exports routes from the specified transit gateway route table to the * specified S3 bucket. By default, all routes are exported. Alternatively, you can * filter by CIDR range.

The routes are saved to the specified bucket in a * JSON file. For more information, see Export * Route Tables to Amazon S3 in Transit Gateways.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ExportTransitGatewayRoutesAsync(const Model::ExportTransitGatewayRoutesRequest& request, const ExportTransitGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the IPv6 CIDR block associations for a specified IPv6 * address pool.

See Also:

AWS * API Reference

*/ virtual Model::GetAssociatedIpv6PoolCidrsOutcome GetAssociatedIpv6PoolCidrs(const Model::GetAssociatedIpv6PoolCidrsRequest& request) const; /** *

Gets information about the IPv6 CIDR block associations for a specified IPv6 * address pool.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetAssociatedIpv6PoolCidrsOutcomeCallable GetAssociatedIpv6PoolCidrsCallable(const Model::GetAssociatedIpv6PoolCidrsRequest& request) const; /** *

Gets information about the IPv6 CIDR block associations for a specified IPv6 * address pool.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetAssociatedIpv6PoolCidrsAsync(const Model::GetAssociatedIpv6PoolCidrsRequest& request, const GetAssociatedIpv6PoolCidrsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets usage information about a Capacity Reservation. If the Capacity * Reservation is shared, it shows usage information for the Capacity Reservation * owner and each AWS account that is currently using the shared capacity. If the * Capacity Reservation is not shared, it shows only the Capacity Reservation * owner's usage.

See Also:

AWS * API Reference

*/ virtual Model::GetCapacityReservationUsageOutcome GetCapacityReservationUsage(const Model::GetCapacityReservationUsageRequest& request) const; /** *

Gets usage information about a Capacity Reservation. If the Capacity * Reservation is shared, it shows usage information for the Capacity Reservation * owner and each AWS account that is currently using the shared capacity. If the * Capacity Reservation is not shared, it shows only the Capacity Reservation * owner's usage.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetCapacityReservationUsageOutcomeCallable GetCapacityReservationUsageCallable(const Model::GetCapacityReservationUsageRequest& request) const; /** *

Gets usage information about a Capacity Reservation. If the Capacity * Reservation is shared, it shows usage information for the Capacity Reservation * owner and each AWS account that is currently using the shared capacity. If the * Capacity Reservation is not shared, it shows only the Capacity Reservation * owner's usage.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetCapacityReservationUsageAsync(const Model::GetCapacityReservationUsageRequest& request, const GetCapacityReservationUsageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the allocations from the specified customer-owned address * pool.

See Also:

AWS * API Reference

*/ virtual Model::GetCoipPoolUsageOutcome GetCoipPoolUsage(const Model::GetCoipPoolUsageRequest& request) const; /** *

Describes the allocations from the specified customer-owned address * pool.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetCoipPoolUsageOutcomeCallable GetCoipPoolUsageCallable(const Model::GetCoipPoolUsageRequest& request) const; /** *

Describes the allocations from the specified customer-owned address * pool.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetCoipPoolUsageAsync(const Model::GetCoipPoolUsageRequest& request, const GetCoipPoolUsageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets the console output for the specified instance. For Linux instances, the * instance console output displays the exact console output that would normally be * displayed on a physical monitor attached to a computer. For Windows instances, * the instance console output includes the last three system event log errors.

*

By default, the console output returns buffered information that was posted * shortly after an instance transition state (start, stop, reboot, or terminate). * This information is available for at least one hour after the most recent post. * Only the most recent 64 KB of console output is available.

You can * optionally retrieve the latest serial console output at any time during the * instance lifecycle. This option is supported on instance types that use the * Nitro hypervisor.

For more information, see Instance * Console Output in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetConsoleOutputOutcome GetConsoleOutput(const Model::GetConsoleOutputRequest& request) const; /** *

Gets the console output for the specified instance. For Linux instances, the * instance console output displays the exact console output that would normally be * displayed on a physical monitor attached to a computer. For Windows instances, * the instance console output includes the last three system event log errors.

*

By default, the console output returns buffered information that was posted * shortly after an instance transition state (start, stop, reboot, or terminate). * This information is available for at least one hour after the most recent post. * Only the most recent 64 KB of console output is available.

You can * optionally retrieve the latest serial console output at any time during the * instance lifecycle. This option is supported on instance types that use the * Nitro hypervisor.

For more information, see Instance * Console Output in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetConsoleOutputOutcomeCallable GetConsoleOutputCallable(const Model::GetConsoleOutputRequest& request) const; /** *

Gets the console output for the specified instance. For Linux instances, the * instance console output displays the exact console output that would normally be * displayed on a physical monitor attached to a computer. For Windows instances, * the instance console output includes the last three system event log errors.

*

By default, the console output returns buffered information that was posted * shortly after an instance transition state (start, stop, reboot, or terminate). * This information is available for at least one hour after the most recent post. * Only the most recent 64 KB of console output is available.

You can * optionally retrieve the latest serial console output at any time during the * instance lifecycle. This option is supported on instance types that use the * Nitro hypervisor.

For more information, see Instance * Console Output in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetConsoleOutputAsync(const Model::GetConsoleOutputRequest& request, const GetConsoleOutputResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieve a JPG-format screenshot of a running instance to help with * troubleshooting.

The returned content is Base64-encoded.

See * Also:

AWS * API Reference

*/ virtual Model::GetConsoleScreenshotOutcome GetConsoleScreenshot(const Model::GetConsoleScreenshotRequest& request) const; /** *

Retrieve a JPG-format screenshot of a running instance to help with * troubleshooting.

The returned content is Base64-encoded.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetConsoleScreenshotOutcomeCallable GetConsoleScreenshotCallable(const Model::GetConsoleScreenshotRequest& request) const; /** *

Retrieve a JPG-format screenshot of a running instance to help with * troubleshooting.

The returned content is Base64-encoded.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetConsoleScreenshotAsync(const Model::GetConsoleScreenshotRequest& request, const GetConsoleScreenshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the default credit option for CPU usage of a burstable performance * instance family.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetDefaultCreditSpecificationOutcome GetDefaultCreditSpecification(const Model::GetDefaultCreditSpecificationRequest& request) const; /** *

Describes the default credit option for CPU usage of a burstable performance * instance family.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDefaultCreditSpecificationOutcomeCallable GetDefaultCreditSpecificationCallable(const Model::GetDefaultCreditSpecificationRequest& request) const; /** *

Describes the default credit option for CPU usage of a burstable performance * instance family.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDefaultCreditSpecificationAsync(const Model::GetDefaultCreditSpecificationRequest& request, const GetDefaultCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes the default customer master key (CMK) for EBS encryption by default * for your account in this Region. You can change the default CMK for encryption * by default using ModifyEbsDefaultKmsKeyId or * ResetEbsDefaultKmsKeyId.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetEbsDefaultKmsKeyIdOutcome GetEbsDefaultKmsKeyId(const Model::GetEbsDefaultKmsKeyIdRequest& request) const; /** *

Describes the default customer master key (CMK) for EBS encryption by default * for your account in this Region. You can change the default CMK for encryption * by default using ModifyEbsDefaultKmsKeyId or * ResetEbsDefaultKmsKeyId.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetEbsDefaultKmsKeyIdOutcomeCallable GetEbsDefaultKmsKeyIdCallable(const Model::GetEbsDefaultKmsKeyIdRequest& request) const; /** *

Describes the default customer master key (CMK) for EBS encryption by default * for your account in this Region. You can change the default CMK for encryption * by default using ModifyEbsDefaultKmsKeyId or * ResetEbsDefaultKmsKeyId.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetEbsDefaultKmsKeyIdAsync(const Model::GetEbsDefaultKmsKeyIdRequest& request, const GetEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes whether EBS encryption by default is enabled for your account in * the current Region.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetEbsEncryptionByDefaultOutcome GetEbsEncryptionByDefault(const Model::GetEbsEncryptionByDefaultRequest& request) const; /** *

Describes whether EBS encryption by default is enabled for your account in * the current Region.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetEbsEncryptionByDefaultOutcomeCallable GetEbsEncryptionByDefaultCallable(const Model::GetEbsEncryptionByDefaultRequest& request) const; /** *

Describes whether EBS encryption by default is enabled for your account in * the current Region.

For more information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetEbsEncryptionByDefaultAsync(const Model::GetEbsEncryptionByDefaultRequest& request, const GetEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the resource groups to which a Capacity Reservation has been * added.

See Also:

AWS * API Reference

*/ virtual Model::GetGroupsForCapacityReservationOutcome GetGroupsForCapacityReservation(const Model::GetGroupsForCapacityReservationRequest& request) const; /** *

Lists the resource groups to which a Capacity Reservation has been * added.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetGroupsForCapacityReservationOutcomeCallable GetGroupsForCapacityReservationCallable(const Model::GetGroupsForCapacityReservationRequest& request) const; /** *

Lists the resource groups to which a Capacity Reservation has been * added.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetGroupsForCapacityReservationAsync(const Model::GetGroupsForCapacityReservationRequest& request, const GetGroupsForCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Preview a reservation purchase with configurations that match those of your * Dedicated Host. You must have active Dedicated Hosts in your account before you * purchase a reservation.

This is a preview of the * PurchaseHostReservation action and does not result in the offering being * purchased.

See Also:

AWS * API Reference

*/ virtual Model::GetHostReservationPurchasePreviewOutcome GetHostReservationPurchasePreview(const Model::GetHostReservationPurchasePreviewRequest& request) const; /** *

Preview a reservation purchase with configurations that match those of your * Dedicated Host. You must have active Dedicated Hosts in your account before you * purchase a reservation.

This is a preview of the * PurchaseHostReservation action and does not result in the offering being * purchased.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetHostReservationPurchasePreviewOutcomeCallable GetHostReservationPurchasePreviewCallable(const Model::GetHostReservationPurchasePreviewRequest& request) const; /** *

Preview a reservation purchase with configurations that match those of your * Dedicated Host. You must have active Dedicated Hosts in your account before you * purchase a reservation.

This is a preview of the * PurchaseHostReservation action and does not result in the offering being * purchased.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetHostReservationPurchasePreviewAsync(const Model::GetHostReservationPurchasePreviewRequest& request, const GetHostReservationPurchasePreviewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieves the configuration data of the specified instance. You can use this * data to create a launch template.

This action calls on other describe * actions to get instance information. Depending on your instance configuration, * you may need to allow the following actions in your IAM policy: * DescribeSpotInstanceRequests, DescribeInstanceCreditSpecifications, * DescribeVolumes, DescribeInstanceAttribute, and DescribeElasticGpus. Or, you can * allow describe* depending on your instance * requirements.

See Also:

AWS * API Reference

*/ virtual Model::GetLaunchTemplateDataOutcome GetLaunchTemplateData(const Model::GetLaunchTemplateDataRequest& request) const; /** *

Retrieves the configuration data of the specified instance. You can use this * data to create a launch template.

This action calls on other describe * actions to get instance information. Depending on your instance configuration, * you may need to allow the following actions in your IAM policy: * DescribeSpotInstanceRequests, DescribeInstanceCreditSpecifications, * DescribeVolumes, DescribeInstanceAttribute, and DescribeElasticGpus. Or, you can * allow describe* depending on your instance * requirements.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetLaunchTemplateDataOutcomeCallable GetLaunchTemplateDataCallable(const Model::GetLaunchTemplateDataRequest& request) const; /** *

Retrieves the configuration data of the specified instance. You can use this * data to create a launch template.

This action calls on other describe * actions to get instance information. Depending on your instance configuration, * you may need to allow the following actions in your IAM policy: * DescribeSpotInstanceRequests, DescribeInstanceCreditSpecifications, * DescribeVolumes, DescribeInstanceAttribute, and DescribeElasticGpus. Or, you can * allow describe* depending on your instance * requirements.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetLaunchTemplateDataAsync(const Model::GetLaunchTemplateDataRequest& request, const GetLaunchTemplateDataResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the resources that are associated with the specified * managed prefix list.

See Also:

AWS * API Reference

*/ virtual Model::GetManagedPrefixListAssociationsOutcome GetManagedPrefixListAssociations(const Model::GetManagedPrefixListAssociationsRequest& request) const; /** *

Gets information about the resources that are associated with the specified * managed prefix list.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetManagedPrefixListAssociationsOutcomeCallable GetManagedPrefixListAssociationsCallable(const Model::GetManagedPrefixListAssociationsRequest& request) const; /** *

Gets information about the resources that are associated with the specified * managed prefix list.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetManagedPrefixListAssociationsAsync(const Model::GetManagedPrefixListAssociationsRequest& request, const GetManagedPrefixListAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the entries for a specified managed prefix * list.

See Also:

AWS * API Reference

*/ virtual Model::GetManagedPrefixListEntriesOutcome GetManagedPrefixListEntries(const Model::GetManagedPrefixListEntriesRequest& request) const; /** *

Gets information about the entries for a specified managed prefix * list.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetManagedPrefixListEntriesOutcomeCallable GetManagedPrefixListEntriesCallable(const Model::GetManagedPrefixListEntriesRequest& request) const; /** *

Gets information about the entries for a specified managed prefix * list.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetManagedPrefixListEntriesAsync(const Model::GetManagedPrefixListEntriesRequest& request, const GetManagedPrefixListEntriesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Retrieves the encrypted administrator password for a running Windows * instance.

The Windows password is generated at boot by the * EC2Config service or EC2Launch scripts (Windows Server * 2016 and later). This usually only happens the first time an instance is * launched. For more information, see EC2Config * and EC2Launch * in the Amazon Elastic Compute Cloud User Guide.

For the * EC2Config service, the password is not generated for rebundled AMIs * unless Ec2SetPassword is enabled before bundling.

The * password is encrypted using the key pair that you specified when you launched * the instance. You must provide the corresponding key pair file.

When you * launch an instance, password generation and encryption may take a few minutes. * If you try to retrieve the password before it's available, the output returns an * empty string. We recommend that you wait up to 15 minutes after launching an * instance before trying to retrieve the generated password.

See * Also:

AWS * API Reference

*/ virtual Model::GetPasswordDataOutcome GetPasswordData(const Model::GetPasswordDataRequest& request) const; /** *

Retrieves the encrypted administrator password for a running Windows * instance.

The Windows password is generated at boot by the * EC2Config service or EC2Launch scripts (Windows Server * 2016 and later). This usually only happens the first time an instance is * launched. For more information, see EC2Config * and EC2Launch * in the Amazon Elastic Compute Cloud User Guide.

For the * EC2Config service, the password is not generated for rebundled AMIs * unless Ec2SetPassword is enabled before bundling.

The * password is encrypted using the key pair that you specified when you launched * the instance. You must provide the corresponding key pair file.

When you * launch an instance, password generation and encryption may take a few minutes. * If you try to retrieve the password before it's available, the output returns an * empty string. We recommend that you wait up to 15 minutes after launching an * instance before trying to retrieve the generated password.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetPasswordDataOutcomeCallable GetPasswordDataCallable(const Model::GetPasswordDataRequest& request) const; /** *

Retrieves the encrypted administrator password for a running Windows * instance.

The Windows password is generated at boot by the * EC2Config service or EC2Launch scripts (Windows Server * 2016 and later). This usually only happens the first time an instance is * launched. For more information, see EC2Config * and EC2Launch * in the Amazon Elastic Compute Cloud User Guide.

For the * EC2Config service, the password is not generated for rebundled AMIs * unless Ec2SetPassword is enabled before bundling.

The * password is encrypted using the key pair that you specified when you launched * the instance. You must provide the corresponding key pair file.

When you * launch an instance, password generation and encryption may take a few minutes. * If you try to retrieve the password before it's available, the output returns an * empty string. We recommend that you wait up to 15 minutes after launching an * instance before trying to retrieve the generated password.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetPasswordDataAsync(const Model::GetPasswordDataRequest& request, const GetPasswordDataResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a quote and exchange information for exchanging one or more specified * Convertible Reserved Instances for a new Convertible Reserved Instance. If the * exchange cannot be performed, the reason is returned in the response. Use * AcceptReservedInstancesExchangeQuote to perform the * exchange.

See Also:

AWS * API Reference

*/ virtual Model::GetReservedInstancesExchangeQuoteOutcome GetReservedInstancesExchangeQuote(const Model::GetReservedInstancesExchangeQuoteRequest& request) const; /** *

Returns a quote and exchange information for exchanging one or more specified * Convertible Reserved Instances for a new Convertible Reserved Instance. If the * exchange cannot be performed, the reason is returned in the response. Use * AcceptReservedInstancesExchangeQuote to perform the * exchange.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetReservedInstancesExchangeQuoteOutcomeCallable GetReservedInstancesExchangeQuoteCallable(const Model::GetReservedInstancesExchangeQuoteRequest& request) const; /** *

Returns a quote and exchange information for exchanging one or more specified * Convertible Reserved Instances for a new Convertible Reserved Instance. If the * exchange cannot be performed, the reason is returned in the response. Use * AcceptReservedInstancesExchangeQuote to perform the * exchange.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetReservedInstancesExchangeQuoteAsync(const Model::GetReservedInstancesExchangeQuoteRequest& request, const GetReservedInstancesExchangeQuoteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the route tables to which the specified resource attachment propagates * routes.

See Also:

AWS * API Reference

*/ virtual Model::GetTransitGatewayAttachmentPropagationsOutcome GetTransitGatewayAttachmentPropagations(const Model::GetTransitGatewayAttachmentPropagationsRequest& request) const; /** *

Lists the route tables to which the specified resource attachment propagates * routes.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetTransitGatewayAttachmentPropagationsOutcomeCallable GetTransitGatewayAttachmentPropagationsCallable(const Model::GetTransitGatewayAttachmentPropagationsRequest& request) const; /** *

Lists the route tables to which the specified resource attachment propagates * routes.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetTransitGatewayAttachmentPropagationsAsync(const Model::GetTransitGatewayAttachmentPropagationsRequest& request, const GetTransitGatewayAttachmentPropagationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the associations for the transit gateway multicast * domain.

See Also:

AWS * API Reference

*/ virtual Model::GetTransitGatewayMulticastDomainAssociationsOutcome GetTransitGatewayMulticastDomainAssociations(const Model::GetTransitGatewayMulticastDomainAssociationsRequest& request) const; /** *

Gets information about the associations for the transit gateway multicast * domain.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetTransitGatewayMulticastDomainAssociationsOutcomeCallable GetTransitGatewayMulticastDomainAssociationsCallable(const Model::GetTransitGatewayMulticastDomainAssociationsRequest& request) const; /** *

Gets information about the associations for the transit gateway multicast * domain.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetTransitGatewayMulticastDomainAssociationsAsync(const Model::GetTransitGatewayMulticastDomainAssociationsRequest& request, const GetTransitGatewayMulticastDomainAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the prefix list references in a specified transit * gateway route table.

See Also:

AWS * API Reference

*/ virtual Model::GetTransitGatewayPrefixListReferencesOutcome GetTransitGatewayPrefixListReferences(const Model::GetTransitGatewayPrefixListReferencesRequest& request) const; /** *

Gets information about the prefix list references in a specified transit * gateway route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetTransitGatewayPrefixListReferencesOutcomeCallable GetTransitGatewayPrefixListReferencesCallable(const Model::GetTransitGatewayPrefixListReferencesRequest& request) const; /** *

Gets information about the prefix list references in a specified transit * gateway route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetTransitGatewayPrefixListReferencesAsync(const Model::GetTransitGatewayPrefixListReferencesRequest& request, const GetTransitGatewayPrefixListReferencesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the associations for the specified transit gateway * route table.

See Also:

AWS * API Reference

*/ virtual Model::GetTransitGatewayRouteTableAssociationsOutcome GetTransitGatewayRouteTableAssociations(const Model::GetTransitGatewayRouteTableAssociationsRequest& request) const; /** *

Gets information about the associations for the specified transit gateway * route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetTransitGatewayRouteTableAssociationsOutcomeCallable GetTransitGatewayRouteTableAssociationsCallable(const Model::GetTransitGatewayRouteTableAssociationsRequest& request) const; /** *

Gets information about the associations for the specified transit gateway * route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetTransitGatewayRouteTableAssociationsAsync(const Model::GetTransitGatewayRouteTableAssociationsRequest& request, const GetTransitGatewayRouteTableAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about the route table propagations for the specified transit * gateway route table.

See Also:

AWS * API Reference

*/ virtual Model::GetTransitGatewayRouteTablePropagationsOutcome GetTransitGatewayRouteTablePropagations(const Model::GetTransitGatewayRouteTablePropagationsRequest& request) const; /** *

Gets information about the route table propagations for the specified transit * gateway route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetTransitGatewayRouteTablePropagationsOutcomeCallable GetTransitGatewayRouteTablePropagationsCallable(const Model::GetTransitGatewayRouteTablePropagationsRequest& request) const; /** *

Gets information about the route table propagations for the specified transit * gateway route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetTransitGatewayRouteTablePropagationsAsync(const Model::GetTransitGatewayRouteTablePropagationsRequest& request, const GetTransitGatewayRouteTablePropagationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Uploads a client certificate revocation list to the specified Client VPN * endpoint. Uploading a client certificate revocation list overwrites the existing * client certificate revocation list.

Uploading a client certificate * revocation list resets existing client connections.

See Also:

* AWS * API Reference

*/ virtual Model::ImportClientVpnClientCertificateRevocationListOutcome ImportClientVpnClientCertificateRevocationList(const Model::ImportClientVpnClientCertificateRevocationListRequest& request) const; /** *

Uploads a client certificate revocation list to the specified Client VPN * endpoint. Uploading a client certificate revocation list overwrites the existing * client certificate revocation list.

Uploading a client certificate * revocation list resets existing client connections.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportClientVpnClientCertificateRevocationListOutcomeCallable ImportClientVpnClientCertificateRevocationListCallable(const Model::ImportClientVpnClientCertificateRevocationListRequest& request) const; /** *

Uploads a client certificate revocation list to the specified Client VPN * endpoint. Uploading a client certificate revocation list overwrites the existing * client certificate revocation list.

Uploading a client certificate * revocation list resets existing client connections.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportClientVpnClientCertificateRevocationListAsync(const Model::ImportClientVpnClientCertificateRevocationListRequest& request, const ImportClientVpnClientCertificateRevocationListResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Import single or multi-volume disk images or EBS snapshots into an Amazon * Machine Image (AMI). For more information, see Importing * a VM as an Image Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS API * Reference

*/ virtual Model::ImportImageOutcome ImportImage(const Model::ImportImageRequest& request) const; /** *

Import single or multi-volume disk images or EBS snapshots into an Amazon * Machine Image (AMI). For more information, see Importing * a VM as an Image Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportImageOutcomeCallable ImportImageCallable(const Model::ImportImageRequest& request) const; /** *

Import single or multi-volume disk images or EBS snapshots into an Amazon * Machine Image (AMI). For more information, see Importing * a VM as an Image Using VM Import/Export in the VM Import/Export User * Guide.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportImageAsync(const Model::ImportImageRequest& request, const ImportImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an import instance task using metadata from the specified disk image. * ImportInstance only supports single-volume VMs. To import * multi-volume VMs, use ImportImage. For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

For information about the * import manifest referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

*/ virtual Model::ImportInstanceOutcome ImportInstance(const Model::ImportInstanceRequest& request) const; /** *

Creates an import instance task using metadata from the specified disk image. * ImportInstance only supports single-volume VMs. To import * multi-volume VMs, use ImportImage. For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

For information about the * import manifest referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportInstanceOutcomeCallable ImportInstanceCallable(const Model::ImportInstanceRequest& request) const; /** *

Creates an import instance task using metadata from the specified disk image. * ImportInstance only supports single-volume VMs. To import * multi-volume VMs, use ImportImage. For more information, see Importing * a Virtual Machine Using the Amazon EC2 CLI.

For information about the * import manifest referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportInstanceAsync(const Model::ImportInstanceRequest& request, const ImportInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Imports the public key from an RSA key pair that you created with a * third-party tool. Compare this with CreateKeyPair, in which AWS creates * the key pair and gives the keys to you (AWS keeps a copy of the public key). * With ImportKeyPair, you create the key pair and give AWS just the public key. * The private key is never transferred between you and AWS.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::ImportKeyPairOutcome ImportKeyPair(const Model::ImportKeyPairRequest& request) const; /** *

Imports the public key from an RSA key pair that you created with a * third-party tool. Compare this with CreateKeyPair, in which AWS creates * the key pair and gives the keys to you (AWS keeps a copy of the public key). * With ImportKeyPair, you create the key pair and give AWS just the public key. * The private key is never transferred between you and AWS.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportKeyPairOutcomeCallable ImportKeyPairCallable(const Model::ImportKeyPairRequest& request) const; /** *

Imports the public key from an RSA key pair that you created with a * third-party tool. Compare this with CreateKeyPair, in which AWS creates * the key pair and gives the keys to you (AWS keeps a copy of the public key). * With ImportKeyPair, you create the key pair and give AWS just the public key. * The private key is never transferred between you and AWS.

For more * information about key pairs, see Key * Pairs in the Amazon Elastic Compute Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportKeyPairAsync(const Model::ImportKeyPairRequest& request, const ImportKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Imports a disk into an EBS snapshot.

See Also:

AWS * API Reference

*/ virtual Model::ImportSnapshotOutcome ImportSnapshot(const Model::ImportSnapshotRequest& request) const; /** *

Imports a disk into an EBS snapshot.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportSnapshotOutcomeCallable ImportSnapshotCallable(const Model::ImportSnapshotRequest& request) const; /** *

Imports a disk into an EBS snapshot.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportSnapshotAsync(const Model::ImportSnapshotRequest& request, const ImportSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an import volume task using metadata from the specified disk * image.For more information, see Importing * Disks to Amazon EBS.

For information about the import manifest * referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

*/ virtual Model::ImportVolumeOutcome ImportVolume(const Model::ImportVolumeRequest& request) const; /** *

Creates an import volume task using metadata from the specified disk * image.For more information, see Importing * Disks to Amazon EBS.

For information about the import manifest * referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ImportVolumeOutcomeCallable ImportVolumeCallable(const Model::ImportVolumeRequest& request) const; /** *

Creates an import volume task using metadata from the specified disk * image.For more information, see Importing * Disks to Amazon EBS.

For information about the import manifest * referenced by this API action, see VM * Import Manifest.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ImportVolumeAsync(const Model::ImportVolumeRequest& request, const ImportVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes the opt-in status of the Local Zone and Wavelength Zone group for * your account.

Use * DescribeAvailabilityZones to view the value for * GroupName.

See Also:

AWS * API Reference

*/ virtual Model::ModifyAvailabilityZoneGroupOutcome ModifyAvailabilityZoneGroup(const Model::ModifyAvailabilityZoneGroupRequest& request) const; /** *

Changes the opt-in status of the Local Zone and Wavelength Zone group for * your account.

Use * DescribeAvailabilityZones to view the value for * GroupName.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyAvailabilityZoneGroupOutcomeCallable ModifyAvailabilityZoneGroupCallable(const Model::ModifyAvailabilityZoneGroupRequest& request) const; /** *

Changes the opt-in status of the Local Zone and Wavelength Zone group for * your account.

Use * DescribeAvailabilityZones to view the value for * GroupName.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyAvailabilityZoneGroupAsync(const Model::ModifyAvailabilityZoneGroupRequest& request, const ModifyAvailabilityZoneGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a Capacity Reservation's capacity and the conditions under which it * is to be released. You cannot change a Capacity Reservation's instance type, EBS * optimization, instance store settings, platform, Availability Zone, or instance * eligibility. If you need to modify any of these attributes, we recommend that * you cancel the Capacity Reservation, and then create a new one with the required * attributes.

See Also:

AWS * API Reference

*/ virtual Model::ModifyCapacityReservationOutcome ModifyCapacityReservation(const Model::ModifyCapacityReservationRequest& request) const; /** *

Modifies a Capacity Reservation's capacity and the conditions under which it * is to be released. You cannot change a Capacity Reservation's instance type, EBS * optimization, instance store settings, platform, Availability Zone, or instance * eligibility. If you need to modify any of these attributes, we recommend that * you cancel the Capacity Reservation, and then create a new one with the required * attributes.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyCapacityReservationOutcomeCallable ModifyCapacityReservationCallable(const Model::ModifyCapacityReservationRequest& request) const; /** *

Modifies a Capacity Reservation's capacity and the conditions under which it * is to be released. You cannot change a Capacity Reservation's instance type, EBS * optimization, instance store settings, platform, Availability Zone, or instance * eligibility. If you need to modify any of these attributes, we recommend that * you cancel the Capacity Reservation, and then create a new one with the required * attributes.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyCapacityReservationAsync(const Model::ModifyCapacityReservationRequest& request, const ModifyCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified Client VPN endpoint. Modifying the DNS server resets * existing client connections.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClientVpnEndpointOutcome ModifyClientVpnEndpoint(const Model::ModifyClientVpnEndpointRequest& request) const; /** *

Modifies the specified Client VPN endpoint. Modifying the DNS server resets * existing client connections.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClientVpnEndpointOutcomeCallable ModifyClientVpnEndpointCallable(const Model::ModifyClientVpnEndpointRequest& request) const; /** *

Modifies the specified Client VPN endpoint. Modifying the DNS server resets * existing client connections.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClientVpnEndpointAsync(const Model::ModifyClientVpnEndpointRequest& request, const ModifyClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the default credit option for CPU usage of burstable performance * instances. The default credit option is set at the account level per AWS Region, * and is specified per instance family. All new burstable performance instances in * the account launch using the default credit option.

* ModifyDefaultCreditSpecification is an asynchronous operation, * which works at an AWS Region level and modifies the credit option for each * Availability Zone. All zones in a Region are updated within five minutes. But if * instances are launched during this operation, they might not get the new credit * option until the zone is updated. To verify whether the update has occurred, you * can call GetDefaultCreditSpecification and check * DefaultCreditSpecification for updates.

For more * information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyDefaultCreditSpecificationOutcome ModifyDefaultCreditSpecification(const Model::ModifyDefaultCreditSpecificationRequest& request) const; /** *

Modifies the default credit option for CPU usage of burstable performance * instances. The default credit option is set at the account level per AWS Region, * and is specified per instance family. All new burstable performance instances in * the account launch using the default credit option.

* ModifyDefaultCreditSpecification is an asynchronous operation, * which works at an AWS Region level and modifies the credit option for each * Availability Zone. All zones in a Region are updated within five minutes. But if * instances are launched during this operation, they might not get the new credit * option until the zone is updated. To verify whether the update has occurred, you * can call GetDefaultCreditSpecification and check * DefaultCreditSpecification for updates.

For more * information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyDefaultCreditSpecificationOutcomeCallable ModifyDefaultCreditSpecificationCallable(const Model::ModifyDefaultCreditSpecificationRequest& request) const; /** *

Modifies the default credit option for CPU usage of burstable performance * instances. The default credit option is set at the account level per AWS Region, * and is specified per instance family. All new burstable performance instances in * the account launch using the default credit option.

* ModifyDefaultCreditSpecification is an asynchronous operation, * which works at an AWS Region level and modifies the credit option for each * Availability Zone. All zones in a Region are updated within five minutes. But if * instances are launched during this operation, they might not get the new credit * option until the zone is updated. To verify whether the update has occurred, you * can call GetDefaultCreditSpecification and check * DefaultCreditSpecification for updates.

For more * information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyDefaultCreditSpecificationAsync(const Model::ModifyDefaultCreditSpecificationRequest& request, const ModifyDefaultCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes the default customer master key (CMK) for EBS encryption by default * for your account in this Region.

AWS creates a unique AWS managed CMK in * each Region for use with encryption by default. If you change the default CMK to * a symmetric customer managed CMK, it is used instead of the AWS managed CMK. To * reset the default CMK to the AWS managed CMK for EBS, use * ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric CMKs.

*

If you delete or disable the customer managed CMK that you specified for use * with encryption by default, your instances will fail to launch.

For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyEbsDefaultKmsKeyIdOutcome ModifyEbsDefaultKmsKeyId(const Model::ModifyEbsDefaultKmsKeyIdRequest& request) const; /** *

Changes the default customer master key (CMK) for EBS encryption by default * for your account in this Region.

AWS creates a unique AWS managed CMK in * each Region for use with encryption by default. If you change the default CMK to * a symmetric customer managed CMK, it is used instead of the AWS managed CMK. To * reset the default CMK to the AWS managed CMK for EBS, use * ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric CMKs.

*

If you delete or disable the customer managed CMK that you specified for use * with encryption by default, your instances will fail to launch.

For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyEbsDefaultKmsKeyIdOutcomeCallable ModifyEbsDefaultKmsKeyIdCallable(const Model::ModifyEbsDefaultKmsKeyIdRequest& request) const; /** *

Changes the default customer master key (CMK) for EBS encryption by default * for your account in this Region.

AWS creates a unique AWS managed CMK in * each Region for use with encryption by default. If you change the default CMK to * a symmetric customer managed CMK, it is used instead of the AWS managed CMK. To * reset the default CMK to the AWS managed CMK for EBS, use * ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric CMKs.

*

If you delete or disable the customer managed CMK that you specified for use * with encryption by default, your instances will fail to launch.

For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyEbsDefaultKmsKeyIdAsync(const Model::ModifyEbsDefaultKmsKeyIdRequest& request, const ModifyEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified EC2 Fleet.

You can only modify an EC2 Fleet * request of type maintain.

While the EC2 Fleet is being * modified, it is in the modifying state.

To scale up your EC2 * Fleet, increase its target capacity. The EC2 Fleet launches the additional Spot * Instances according to the allocation strategy for the EC2 Fleet request. If the * allocation strategy is lowest-price, the EC2 Fleet launches * instances using the Spot Instance pool with the lowest price. If the allocation * strategy is diversified, the EC2 Fleet distributes the instances * across the Spot Instance pools. If the allocation strategy is * capacity-optimized, EC2 Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 * Fleet cancels any open requests that exceed the new target capacity. You can * request that the EC2 Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowest-price, the EC2 Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacity-optimized, the EC2 Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the EC2 Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the EC2 Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your EC2 Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS API * Reference

*/ virtual Model::ModifyFleetOutcome ModifyFleet(const Model::ModifyFleetRequest& request) const; /** *

Modifies the specified EC2 Fleet.

You can only modify an EC2 Fleet * request of type maintain.

While the EC2 Fleet is being * modified, it is in the modifying state.

To scale up your EC2 * Fleet, increase its target capacity. The EC2 Fleet launches the additional Spot * Instances according to the allocation strategy for the EC2 Fleet request. If the * allocation strategy is lowest-price, the EC2 Fleet launches * instances using the Spot Instance pool with the lowest price. If the allocation * strategy is diversified, the EC2 Fleet distributes the instances * across the Spot Instance pools. If the allocation strategy is * capacity-optimized, EC2 Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 * Fleet cancels any open requests that exceed the new target capacity. You can * request that the EC2 Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowest-price, the EC2 Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacity-optimized, the EC2 Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the EC2 Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the EC2 Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your EC2 Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyFleetOutcomeCallable ModifyFleetCallable(const Model::ModifyFleetRequest& request) const; /** *

Modifies the specified EC2 Fleet.

You can only modify an EC2 Fleet * request of type maintain.

While the EC2 Fleet is being * modified, it is in the modifying state.

To scale up your EC2 * Fleet, increase its target capacity. The EC2 Fleet launches the additional Spot * Instances according to the allocation strategy for the EC2 Fleet request. If the * allocation strategy is lowest-price, the EC2 Fleet launches * instances using the Spot Instance pool with the lowest price. If the allocation * strategy is diversified, the EC2 Fleet distributes the instances * across the Spot Instance pools. If the allocation strategy is * capacity-optimized, EC2 Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 * Fleet cancels any open requests that exceed the new target capacity. You can * request that the EC2 Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowest-price, the EC2 Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacity-optimized, the EC2 Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the EC2 Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the EC2 Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your EC2 Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyFleetAsync(const Model::ModifyFleetRequest& request, const ModifyFleetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

*/ virtual Model::ModifyFpgaImageAttributeOutcome ModifyFpgaImageAttribute(const Model::ModifyFpgaImageAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyFpgaImageAttributeOutcomeCallable ModifyFpgaImageAttributeCallable(const Model::ModifyFpgaImageAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified Amazon FPGA Image * (AFI).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyFpgaImageAttributeAsync(const Model::ModifyFpgaImageAttributeRequest& request, const ModifyFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modify the auto-placement setting of a Dedicated Host. When auto-placement is * enabled, any instances that you launch with a tenancy of host but * without a specific host ID are placed onto any available Dedicated Host in your * account that has auto-placement enabled. When auto-placement is disabled, you * need to provide a host ID to have the instance launch onto a specific host. If * no host ID is provided, the instance is launched onto a suitable host with * auto-placement enabled.

You can also use this API action to modify a * Dedicated Host to support either multiple instance types in an instance family, * or to support a specific instance type only.

See Also:

AWS API * Reference

*/ virtual Model::ModifyHostsOutcome ModifyHosts(const Model::ModifyHostsRequest& request) const; /** *

Modify the auto-placement setting of a Dedicated Host. When auto-placement is * enabled, any instances that you launch with a tenancy of host but * without a specific host ID are placed onto any available Dedicated Host in your * account that has auto-placement enabled. When auto-placement is disabled, you * need to provide a host ID to have the instance launch onto a specific host. If * no host ID is provided, the instance is launched onto a suitable host with * auto-placement enabled.

You can also use this API action to modify a * Dedicated Host to support either multiple instance types in an instance family, * or to support a specific instance type only.

See Also:

AWS API * Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyHostsOutcomeCallable ModifyHostsCallable(const Model::ModifyHostsRequest& request) const; /** *

Modify the auto-placement setting of a Dedicated Host. When auto-placement is * enabled, any instances that you launch with a tenancy of host but * without a specific host ID are placed onto any available Dedicated Host in your * account that has auto-placement enabled. When auto-placement is disabled, you * need to provide a host ID to have the instance launch onto a specific host. If * no host ID is provided, the instance is launched onto a suitable host with * auto-placement enabled.

You can also use this API action to modify a * Dedicated Host to support either multiple instance types in an instance family, * or to support a specific instance type only.

See Also:

AWS API * Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyHostsAsync(const Model::ModifyHostsRequest& request, const ModifyHostsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the ID format for the specified resource on a per-Region basis. You * can specify that resources should receive longer IDs (17-character IDs) when * they are created.

This request can only be used to modify longer ID * settings for resource types that are within the opt-in period. Resources * currently in their opt-in period include: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

This setting applies to the IAM user who makes * the request; it does not apply to the entire AWS account. By default, an IAM * user defaults to the same settings as the root user. If you're using this action * as the root user, then these settings apply to the entire account, unless an IAM * user explicitly overrides these settings for themselves. For more information, * see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

Resources * created with longer IDs are visible to all IAM roles and users, regardless of * these settings and provided that they have permission to use the relevant * Describe command for the resource type.

See Also:

* AWS * API Reference

*/ virtual Model::ModifyIdFormatOutcome ModifyIdFormat(const Model::ModifyIdFormatRequest& request) const; /** *

Modifies the ID format for the specified resource on a per-Region basis. You * can specify that resources should receive longer IDs (17-character IDs) when * they are created.

This request can only be used to modify longer ID * settings for resource types that are within the opt-in period. Resources * currently in their opt-in period include: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

This setting applies to the IAM user who makes * the request; it does not apply to the entire AWS account. By default, an IAM * user defaults to the same settings as the root user. If you're using this action * as the root user, then these settings apply to the entire account, unless an IAM * user explicitly overrides these settings for themselves. For more information, * see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

Resources * created with longer IDs are visible to all IAM roles and users, regardless of * these settings and provided that they have permission to use the relevant * Describe command for the resource type.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyIdFormatOutcomeCallable ModifyIdFormatCallable(const Model::ModifyIdFormatRequest& request) const; /** *

Modifies the ID format for the specified resource on a per-Region basis. You * can specify that resources should receive longer IDs (17-character IDs) when * they are created.

This request can only be used to modify longer ID * settings for resource types that are within the opt-in period. Resources * currently in their opt-in period include: bundle | * conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

This setting applies to the IAM user who makes * the request; it does not apply to the entire AWS account. By default, an IAM * user defaults to the same settings as the root user. If you're using this action * as the root user, then these settings apply to the entire account, unless an IAM * user explicitly overrides these settings for themselves. For more information, * see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

Resources * created with longer IDs are visible to all IAM roles and users, regardless of * these settings and provided that they have permission to use the relevant * Describe command for the resource type.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyIdFormatAsync(const Model::ModifyIdFormatRequest& request, const ModifyIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the ID format of a resource for a specified IAM user, IAM role, or * the root user for an account; or all IAM users, IAM roles, and the root user for * an account. You can specify that resources should receive longer IDs * (17-character IDs) when they are created.

This request can only be used * to modify longer ID settings for resource types that are within the opt-in * period. Resources currently in their opt-in period include: bundle * | conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

This * setting applies to the principal specified in the request; it does not apply to * the principal that makes the request.

Resources created with longer IDs * are visible to all IAM roles and users, regardless of these settings and * provided that they have permission to use the relevant Describe * command for the resource type.

See Also:

AWS * API Reference

*/ virtual Model::ModifyIdentityIdFormatOutcome ModifyIdentityIdFormat(const Model::ModifyIdentityIdFormatRequest& request) const; /** *

Modifies the ID format of a resource for a specified IAM user, IAM role, or * the root user for an account; or all IAM users, IAM roles, and the root user for * an account. You can specify that resources should receive longer IDs * (17-character IDs) when they are created.

This request can only be used * to modify longer ID settings for resource types that are within the opt-in * period. Resources currently in their opt-in period include: bundle * | conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

This * setting applies to the principal specified in the request; it does not apply to * the principal that makes the request.

Resources created with longer IDs * are visible to all IAM roles and users, regardless of these settings and * provided that they have permission to use the relevant Describe * command for the resource type.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyIdentityIdFormatOutcomeCallable ModifyIdentityIdFormatCallable(const Model::ModifyIdentityIdFormatRequest& request) const; /** *

Modifies the ID format of a resource for a specified IAM user, IAM role, or * the root user for an account; or all IAM users, IAM roles, and the root user for * an account. You can specify that resources should receive longer IDs * (17-character IDs) when they are created.

This request can only be used * to modify longer ID settings for resource types that are within the opt-in * period. Resources currently in their opt-in period include: bundle * | conversion-task | customer-gateway | * dhcp-options | elastic-ip-allocation | * elastic-ip-association | export-task | * flow-log | image | import-task | * internet-gateway | network-acl | * network-acl-association | network-interface | * network-interface-attachment | prefix-list | * route-table | route-table-association | * security-group | subnet | * subnet-cidr-block-association | vpc | * vpc-cidr-block-association | vpc-endpoint | * vpc-peering-connection | vpn-connection | * vpn-gateway.

For more information, see Resource * IDs in the Amazon Elastic Compute Cloud User Guide.

This * setting applies to the principal specified in the request; it does not apply to * the principal that makes the request.

Resources created with longer IDs * are visible to all IAM roles and users, regardless of these settings and * provided that they have permission to use the relevant Describe * command for the resource type.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyIdentityIdFormatAsync(const Model::ModifyIdentityIdFormatRequest& request, const ModifyIdentityIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified attribute of the specified AMI. You can specify only * one attribute at a time. You can use the Attribute parameter to * specify the attribute or one of the following parameters: * Description, LaunchPermission, or * ProductCode.

AWS Marketplace product codes cannot be * modified. Images with an AWS Marketplace product code cannot be made public.

*

To enable the SriovNetSupport enhanced networking attribute of an image, * enable SriovNetSupport on an instance and create an AMI from the * instance.

See Also:

AWS * API Reference

*/ virtual Model::ModifyImageAttributeOutcome ModifyImageAttribute(const Model::ModifyImageAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified AMI. You can specify only * one attribute at a time. You can use the Attribute parameter to * specify the attribute or one of the following parameters: * Description, LaunchPermission, or * ProductCode.

AWS Marketplace product codes cannot be * modified. Images with an AWS Marketplace product code cannot be made public.

*

To enable the SriovNetSupport enhanced networking attribute of an image, * enable SriovNetSupport on an instance and create an AMI from the * instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyImageAttributeOutcomeCallable ModifyImageAttributeCallable(const Model::ModifyImageAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified AMI. You can specify only * one attribute at a time. You can use the Attribute parameter to * specify the attribute or one of the following parameters: * Description, LaunchPermission, or * ProductCode.

AWS Marketplace product codes cannot be * modified. Images with an AWS Marketplace product code cannot be made public.

*

To enable the SriovNetSupport enhanced networking attribute of an image, * enable SriovNetSupport on an instance and create an AMI from the * instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyImageAttributeAsync(const Model::ModifyImageAttributeRequest& request, const ModifyImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified attribute of the specified instance. You can specify * only one attribute at a time.

Note: Using this action to change * the security groups associated with an elastic network interface (ENI) attached * to an instance in a VPC can result in an error if the instance has more than one * ENI. To change the security groups associated with an ENI attached to an * instance that has multiple ENIs, we recommend that you use the * ModifyNetworkInterfaceAttribute action.

To modify some attributes, * the instance must be stopped. For more information, see Modifying * attributes of a stopped instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstanceAttributeOutcome ModifyInstanceAttribute(const Model::ModifyInstanceAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified instance. You can specify * only one attribute at a time.

Note: Using this action to change * the security groups associated with an elastic network interface (ENI) attached * to an instance in a VPC can result in an error if the instance has more than one * ENI. To change the security groups associated with an ENI attached to an * instance that has multiple ENIs, we recommend that you use the * ModifyNetworkInterfaceAttribute action.

To modify some attributes, * the instance must be stopped. For more information, see Modifying * attributes of a stopped instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstanceAttributeOutcomeCallable ModifyInstanceAttributeCallable(const Model::ModifyInstanceAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified instance. You can specify * only one attribute at a time.

Note: Using this action to change * the security groups associated with an elastic network interface (ENI) attached * to an instance in a VPC can result in an error if the instance has more than one * ENI. To change the security groups associated with an ENI attached to an * instance that has multiple ENIs, we recommend that you use the * ModifyNetworkInterfaceAttribute action.

To modify some attributes, * the instance must be stopped. For more information, see Modifying * attributes of a stopped instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstanceAttributeAsync(const Model::ModifyInstanceAttributeRequest& request, const ModifyInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the Capacity Reservation settings for a stopped instance. Use this * action to configure an instance to target a specific Capacity Reservation, run * in any open Capacity Reservation with matching attributes, or run * On-Demand Instance capacity.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstanceCapacityReservationAttributesOutcome ModifyInstanceCapacityReservationAttributes(const Model::ModifyInstanceCapacityReservationAttributesRequest& request) const; /** *

Modifies the Capacity Reservation settings for a stopped instance. Use this * action to configure an instance to target a specific Capacity Reservation, run * in any open Capacity Reservation with matching attributes, or run * On-Demand Instance capacity.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstanceCapacityReservationAttributesOutcomeCallable ModifyInstanceCapacityReservationAttributesCallable(const Model::ModifyInstanceCapacityReservationAttributesRequest& request) const; /** *

Modifies the Capacity Reservation settings for a stopped instance. Use this * action to configure an instance to target a specific Capacity Reservation, run * in any open Capacity Reservation with matching attributes, or run * On-Demand Instance capacity.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstanceCapacityReservationAttributesAsync(const Model::ModifyInstanceCapacityReservationAttributesRequest& request, const ModifyInstanceCapacityReservationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the credit option for CPU usage on a running or stopped burstable * performance instance. The credit options are standard and * unlimited.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstanceCreditSpecificationOutcome ModifyInstanceCreditSpecification(const Model::ModifyInstanceCreditSpecificationRequest& request) const; /** *

Modifies the credit option for CPU usage on a running or stopped burstable * performance instance. The credit options are standard and * unlimited.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstanceCreditSpecificationOutcomeCallable ModifyInstanceCreditSpecificationCallable(const Model::ModifyInstanceCreditSpecificationRequest& request) const; /** *

Modifies the credit option for CPU usage on a running or stopped burstable * performance instance. The credit options are standard and * unlimited.

For more information, see Burstable * performance instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstanceCreditSpecificationAsync(const Model::ModifyInstanceCreditSpecificationRequest& request, const ModifyInstanceCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the start time for a scheduled Amazon EC2 instance * event.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstanceEventStartTimeOutcome ModifyInstanceEventStartTime(const Model::ModifyInstanceEventStartTimeRequest& request) const; /** *

Modifies the start time for a scheduled Amazon EC2 instance * event.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstanceEventStartTimeOutcomeCallable ModifyInstanceEventStartTimeCallable(const Model::ModifyInstanceEventStartTimeRequest& request) const; /** *

Modifies the start time for a scheduled Amazon EC2 instance * event.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstanceEventStartTimeAsync(const Model::ModifyInstanceEventStartTimeRequest& request, const ModifyInstanceEventStartTimeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modify the instance metadata parameters on a running or stopped instance. * When you modify the parameters on a stopped instance, they are applied when the * instance is started. When you modify the parameters on a running instance, the * API responds with a state of “pending”. After the parameter modifications are * successfully applied to the instance, the state of the modifications changes * from “pending” to “applied” in subsequent describe-instances API calls. For more * information, see Instance * metadata and user data.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstanceMetadataOptionsOutcome ModifyInstanceMetadataOptions(const Model::ModifyInstanceMetadataOptionsRequest& request) const; /** *

Modify the instance metadata parameters on a running or stopped instance. * When you modify the parameters on a stopped instance, they are applied when the * instance is started. When you modify the parameters on a running instance, the * API responds with a state of “pending”. After the parameter modifications are * successfully applied to the instance, the state of the modifications changes * from “pending” to “applied” in subsequent describe-instances API calls. For more * information, see Instance * metadata and user data.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstanceMetadataOptionsOutcomeCallable ModifyInstanceMetadataOptionsCallable(const Model::ModifyInstanceMetadataOptionsRequest& request) const; /** *

Modify the instance metadata parameters on a running or stopped instance. * When you modify the parameters on a stopped instance, they are applied when the * instance is started. When you modify the parameters on a running instance, the * API responds with a state of “pending”. After the parameter modifications are * successfully applied to the instance, the state of the modifications changes * from “pending” to “applied” in subsequent describe-instances API calls. For more * information, see Instance * metadata and user data.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstanceMetadataOptionsAsync(const Model::ModifyInstanceMetadataOptionsRequest& request, const ModifyInstanceMetadataOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the placement attributes for a specified instance. You can do the * following:

  • Modify the affinity between an instance and a Dedicated * Host. When affinity is set to host and the instance is not * associated with a specific Dedicated Host, the next time the instance is * launched, it is automatically associated with the host on which it lands. If the * instance is restarted or rebooted, this relationship persists.

  • *

    Change the Dedicated Host with which an instance is associated.

  • *
  • Change the instance tenancy of an instance from host to * dedicated, or from dedicated to host.

    *
  • Move an instance to or from a placement * group.

At least one attribute for affinity, host ID, * tenancy, or placement group name must be specified in the request. Affinity and * tenancy can be modified in the same request.

To modify the host ID, * tenancy, placement group, or partition for an instance, the instance must be in * the stopped state.

See Also:

AWS * API Reference

*/ virtual Model::ModifyInstancePlacementOutcome ModifyInstancePlacement(const Model::ModifyInstancePlacementRequest& request) const; /** *

Modifies the placement attributes for a specified instance. You can do the * following:

  • Modify the affinity between an instance and a Dedicated * Host. When affinity is set to host and the instance is not * associated with a specific Dedicated Host, the next time the instance is * launched, it is automatically associated with the host on which it lands. If the * instance is restarted or rebooted, this relationship persists.

  • *

    Change the Dedicated Host with which an instance is associated.

  • *
  • Change the instance tenancy of an instance from host to * dedicated, or from dedicated to host.

    *
  • Move an instance to or from a placement * group.

At least one attribute for affinity, host ID, * tenancy, or placement group name must be specified in the request. Affinity and * tenancy can be modified in the same request.

To modify the host ID, * tenancy, placement group, or partition for an instance, the instance must be in * the stopped state.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyInstancePlacementOutcomeCallable ModifyInstancePlacementCallable(const Model::ModifyInstancePlacementRequest& request) const; /** *

Modifies the placement attributes for a specified instance. You can do the * following:

  • Modify the affinity between an instance and a Dedicated * Host. When affinity is set to host and the instance is not * associated with a specific Dedicated Host, the next time the instance is * launched, it is automatically associated with the host on which it lands. If the * instance is restarted or rebooted, this relationship persists.

  • *

    Change the Dedicated Host with which an instance is associated.

  • *
  • Change the instance tenancy of an instance from host to * dedicated, or from dedicated to host.

    *
  • Move an instance to or from a placement * group.

At least one attribute for affinity, host ID, * tenancy, or placement group name must be specified in the request. Affinity and * tenancy can be modified in the same request.

To modify the host ID, * tenancy, placement group, or partition for an instance, the instance must be in * the stopped state.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyInstancePlacementAsync(const Model::ModifyInstancePlacementRequest& request, const ModifyInstancePlacementResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a launch template. You can specify which version of the launch * template to set as the default version. When launching an instance, the default * version applies when a launch template version is not specified.

See * Also:

AWS * API Reference

*/ virtual Model::ModifyLaunchTemplateOutcome ModifyLaunchTemplate(const Model::ModifyLaunchTemplateRequest& request) const; /** *

Modifies a launch template. You can specify which version of the launch * template to set as the default version. When launching an instance, the default * version applies when a launch template version is not specified.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyLaunchTemplateOutcomeCallable ModifyLaunchTemplateCallable(const Model::ModifyLaunchTemplateRequest& request) const; /** *

Modifies a launch template. You can specify which version of the launch * template to set as the default version. When launching an instance, the default * version applies when a launch template version is not specified.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyLaunchTemplateAsync(const Model::ModifyLaunchTemplateRequest& request, const ModifyLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified managed prefix list.

Adding or removing entries * in a prefix list creates a new version of the prefix list. Changing the name of * the prefix list does not affect the version.

If you specify a current * version number that does not match the true current version number, the request * fails.

See Also:

AWS * API Reference

*/ virtual Model::ModifyManagedPrefixListOutcome ModifyManagedPrefixList(const Model::ModifyManagedPrefixListRequest& request) const; /** *

Modifies the specified managed prefix list.

Adding or removing entries * in a prefix list creates a new version of the prefix list. Changing the name of * the prefix list does not affect the version.

If you specify a current * version number that does not match the true current version number, the request * fails.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyManagedPrefixListOutcomeCallable ModifyManagedPrefixListCallable(const Model::ModifyManagedPrefixListRequest& request) const; /** *

Modifies the specified managed prefix list.

Adding or removing entries * in a prefix list creates a new version of the prefix list. Changing the name of * the prefix list does not affect the version.

If you specify a current * version number that does not match the true current version number, the request * fails.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyManagedPrefixListAsync(const Model::ModifyManagedPrefixListRequest& request, const ModifyManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified network interface attribute. You can specify only one * attribute at a time. You can use this action to attach and detach security * groups from an existing EC2 instance.

See Also:

AWS * API Reference

*/ virtual Model::ModifyNetworkInterfaceAttributeOutcome ModifyNetworkInterfaceAttribute(const Model::ModifyNetworkInterfaceAttributeRequest& request) const; /** *

Modifies the specified network interface attribute. You can specify only one * attribute at a time. You can use this action to attach and detach security * groups from an existing EC2 instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyNetworkInterfaceAttributeOutcomeCallable ModifyNetworkInterfaceAttributeCallable(const Model::ModifyNetworkInterfaceAttributeRequest& request) const; /** *

Modifies the specified network interface attribute. You can specify only one * attribute at a time. You can use this action to attach and detach security * groups from an existing EC2 instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyNetworkInterfaceAttributeAsync(const Model::ModifyNetworkInterfaceAttributeRequest& request, const ModifyNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the Availability Zone, instance count, instance type, or network * platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved * Instances to be modified must be identical, except for Availability Zone, * network platform, and instance type.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyReservedInstancesOutcome ModifyReservedInstances(const Model::ModifyReservedInstancesRequest& request) const; /** *

Modifies the Availability Zone, instance count, instance type, or network * platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved * Instances to be modified must be identical, except for Availability Zone, * network platform, and instance type.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyReservedInstancesOutcomeCallable ModifyReservedInstancesCallable(const Model::ModifyReservedInstancesRequest& request) const; /** *

Modifies the Availability Zone, instance count, instance type, or network * platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved * Instances to be modified must be identical, except for Availability Zone, * network platform, and instance type.

For more information, see Modifying * Reserved Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyReservedInstancesAsync(const Model::ModifyReservedInstancesRequest& request, const ModifyReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds or removes permission settings for the specified snapshot. You may add * or remove specified AWS account IDs from a snapshot's list of create volume * permissions, but you cannot do both in a single operation. If you need to both * add and remove account IDs for a snapshot, you must use multiple operations. You * can make up to 500 modifications to a snapshot in a single operation.

*

Encrypted snapshots and snapshots with AWS Marketplace product codes cannot * be made public. Snapshots encrypted with your default CMK cannot be shared with * other accounts.

For more information about modifying snapshot * permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifySnapshotAttributeOutcome ModifySnapshotAttribute(const Model::ModifySnapshotAttributeRequest& request) const; /** *

Adds or removes permission settings for the specified snapshot. You may add * or remove specified AWS account IDs from a snapshot's list of create volume * permissions, but you cannot do both in a single operation. If you need to both * add and remove account IDs for a snapshot, you must use multiple operations. You * can make up to 500 modifications to a snapshot in a single operation.

*

Encrypted snapshots and snapshots with AWS Marketplace product codes cannot * be made public. Snapshots encrypted with your default CMK cannot be shared with * other accounts.

For more information about modifying snapshot * permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifySnapshotAttributeOutcomeCallable ModifySnapshotAttributeCallable(const Model::ModifySnapshotAttributeRequest& request) const; /** *

Adds or removes permission settings for the specified snapshot. You may add * or remove specified AWS account IDs from a snapshot's list of create volume * permissions, but you cannot do both in a single operation. If you need to both * add and remove account IDs for a snapshot, you must use multiple operations. You * can make up to 500 modifications to a snapshot in a single operation.

*

Encrypted snapshots and snapshots with AWS Marketplace product codes cannot * be made public. Snapshots encrypted with your default CMK cannot be shared with * other accounts.

For more information about modifying snapshot * permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifySnapshotAttributeAsync(const Model::ModifySnapshotAttributeRequest& request, const ModifySnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified Spot Fleet request.

You can only modify a Spot * Fleet request of type maintain.

While the Spot Fleet request * is being modified, it is in the modifying state.

To scale up * your Spot Fleet, increase its target capacity. The Spot Fleet launches the * additional Spot Instances according to the allocation strategy for the Spot * Fleet request. If the allocation strategy is lowestPrice, the Spot * Fleet launches instances using the Spot Instance pool with the lowest price. If * the allocation strategy is diversified, the Spot Fleet distributes * the instances across the Spot Instance pools. If the allocation strategy is * capacityOptimized, Spot Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your Spot Fleet, decrease its target capacity. First, the Spot * Fleet cancels any open requests that exceed the new target capacity. You can * request that the Spot Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowestPrice, the Spot Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacityOptimized, the Spot Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the Spot Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the Spot Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your Spot Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS * API Reference

*/ virtual Model::ModifySpotFleetRequestOutcome ModifySpotFleetRequest(const Model::ModifySpotFleetRequestRequest& request) const; /** *

Modifies the specified Spot Fleet request.

You can only modify a Spot * Fleet request of type maintain.

While the Spot Fleet request * is being modified, it is in the modifying state.

To scale up * your Spot Fleet, increase its target capacity. The Spot Fleet launches the * additional Spot Instances according to the allocation strategy for the Spot * Fleet request. If the allocation strategy is lowestPrice, the Spot * Fleet launches instances using the Spot Instance pool with the lowest price. If * the allocation strategy is diversified, the Spot Fleet distributes * the instances across the Spot Instance pools. If the allocation strategy is * capacityOptimized, Spot Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your Spot Fleet, decrease its target capacity. First, the Spot * Fleet cancels any open requests that exceed the new target capacity. You can * request that the Spot Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowestPrice, the Spot Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacityOptimized, the Spot Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the Spot Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the Spot Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your Spot Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifySpotFleetRequestOutcomeCallable ModifySpotFleetRequestCallable(const Model::ModifySpotFleetRequestRequest& request) const; /** *

Modifies the specified Spot Fleet request.

You can only modify a Spot * Fleet request of type maintain.

While the Spot Fleet request * is being modified, it is in the modifying state.

To scale up * your Spot Fleet, increase its target capacity. The Spot Fleet launches the * additional Spot Instances according to the allocation strategy for the Spot * Fleet request. If the allocation strategy is lowestPrice, the Spot * Fleet launches instances using the Spot Instance pool with the lowest price. If * the allocation strategy is diversified, the Spot Fleet distributes * the instances across the Spot Instance pools. If the allocation strategy is * capacityOptimized, Spot Fleet launches instances from Spot Instance * pools with optimal capacity for the number of instances that are launching.

*

To scale down your Spot Fleet, decrease its target capacity. First, the Spot * Fleet cancels any open requests that exceed the new target capacity. You can * request that the Spot Fleet terminate Spot Instances until the size of the fleet * no longer exceeds the new target capacity. If the allocation strategy is * lowestPrice, the Spot Fleet terminates the instances with the * highest price per unit. If the allocation strategy is * capacityOptimized, the Spot Fleet terminates the instances in the * Spot Instance pools that have the least available Spot Instance capacity. If the * allocation strategy is diversified, the Spot Fleet terminates * instances across the Spot Instance pools. Alternatively, you can request that * the Spot Fleet keep the fleet at its current size, but not replace any Spot * Instances that are interrupted or that you terminate manually.

If you are * finished with your Spot Fleet for now, but will use it again later, you can set * the target capacity to 0.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifySpotFleetRequestAsync(const Model::ModifySpotFleetRequestRequest& request, const ModifySpotFleetRequestResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a subnet attribute. You can only modify one attribute at a * time.

See Also:

AWS * API Reference

*/ virtual Model::ModifySubnetAttributeOutcome ModifySubnetAttribute(const Model::ModifySubnetAttributeRequest& request) const; /** *

Modifies a subnet attribute. You can only modify one attribute at a * time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifySubnetAttributeOutcomeCallable ModifySubnetAttributeCallable(const Model::ModifySubnetAttributeRequest& request) const; /** *

Modifies a subnet attribute. You can only modify one attribute at a * time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifySubnetAttributeAsync(const Model::ModifySubnetAttributeRequest& request, const ModifySubnetAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Allows or restricts mirroring network services.

By default, Amazon * DNS network services are not eligible for Traffic Mirror. Use * AddNetworkServices to add network services to a Traffic Mirror * filter. When a network service is added to the Traffic Mirror filter, all * traffic related to that network service will be mirrored. When you no longer * want to mirror network services, use RemoveNetworkServices to * remove the network services from the Traffic Mirror filter.

For * information about filter rule properties, see Network * Services in the Traffic Mirroring User Guide .

See * Also:

AWS * API Reference

*/ virtual Model::ModifyTrafficMirrorFilterNetworkServicesOutcome ModifyTrafficMirrorFilterNetworkServices(const Model::ModifyTrafficMirrorFilterNetworkServicesRequest& request) const; /** *

Allows or restricts mirroring network services.

By default, Amazon * DNS network services are not eligible for Traffic Mirror. Use * AddNetworkServices to add network services to a Traffic Mirror * filter. When a network service is added to the Traffic Mirror filter, all * traffic related to that network service will be mirrored. When you no longer * want to mirror network services, use RemoveNetworkServices to * remove the network services from the Traffic Mirror filter.

For * information about filter rule properties, see Network * Services in the Traffic Mirroring User Guide .

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTrafficMirrorFilterNetworkServicesOutcomeCallable ModifyTrafficMirrorFilterNetworkServicesCallable(const Model::ModifyTrafficMirrorFilterNetworkServicesRequest& request) const; /** *

Allows or restricts mirroring network services.

By default, Amazon * DNS network services are not eligible for Traffic Mirror. Use * AddNetworkServices to add network services to a Traffic Mirror * filter. When a network service is added to the Traffic Mirror filter, all * traffic related to that network service will be mirrored. When you no longer * want to mirror network services, use RemoveNetworkServices to * remove the network services from the Traffic Mirror filter.

For * information about filter rule properties, see Network * Services in the Traffic Mirroring User Guide .

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTrafficMirrorFilterNetworkServicesAsync(const Model::ModifyTrafficMirrorFilterNetworkServicesRequest& request, const ModifyTrafficMirrorFilterNetworkServicesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified Traffic Mirror rule.

* DestinationCidrBlock and SourceCidrBlock must both be * an IPv4 range or an IPv6 range.

See Also:

AWS * API Reference

*/ virtual Model::ModifyTrafficMirrorFilterRuleOutcome ModifyTrafficMirrorFilterRule(const Model::ModifyTrafficMirrorFilterRuleRequest& request) const; /** *

Modifies the specified Traffic Mirror rule.

* DestinationCidrBlock and SourceCidrBlock must both be * an IPv4 range or an IPv6 range.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTrafficMirrorFilterRuleOutcomeCallable ModifyTrafficMirrorFilterRuleCallable(const Model::ModifyTrafficMirrorFilterRuleRequest& request) const; /** *

Modifies the specified Traffic Mirror rule.

* DestinationCidrBlock and SourceCidrBlock must both be * an IPv4 range or an IPv6 range.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTrafficMirrorFilterRuleAsync(const Model::ModifyTrafficMirrorFilterRuleRequest& request, const ModifyTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a Traffic Mirror session.

See Also:

AWS * API Reference

*/ virtual Model::ModifyTrafficMirrorSessionOutcome ModifyTrafficMirrorSession(const Model::ModifyTrafficMirrorSessionRequest& request) const; /** *

Modifies a Traffic Mirror session.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTrafficMirrorSessionOutcomeCallable ModifyTrafficMirrorSessionCallable(const Model::ModifyTrafficMirrorSessionRequest& request) const; /** *

Modifies a Traffic Mirror session.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTrafficMirrorSessionAsync(const Model::ModifyTrafficMirrorSessionRequest& request, const ModifyTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified transit gateway. When you modify a transit gateway, * the modified options are applied to new transit gateway attachments only. Your * existing transit gateway attachments are not modified.

See Also:

* AWS * API Reference

*/ virtual Model::ModifyTransitGatewayOutcome ModifyTransitGateway(const Model::ModifyTransitGatewayRequest& request) const; /** *

Modifies the specified transit gateway. When you modify a transit gateway, * the modified options are applied to new transit gateway attachments only. Your * existing transit gateway attachments are not modified.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTransitGatewayOutcomeCallable ModifyTransitGatewayCallable(const Model::ModifyTransitGatewayRequest& request) const; /** *

Modifies the specified transit gateway. When you modify a transit gateway, * the modified options are applied to new transit gateway attachments only. Your * existing transit gateway attachments are not modified.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTransitGatewayAsync(const Model::ModifyTransitGatewayRequest& request, const ModifyTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

*/ virtual Model::ModifyTransitGatewayPrefixListReferenceOutcome ModifyTransitGatewayPrefixListReference(const Model::ModifyTransitGatewayPrefixListReferenceRequest& request) const; /** *

Modifies a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTransitGatewayPrefixListReferenceOutcomeCallable ModifyTransitGatewayPrefixListReferenceCallable(const Model::ModifyTransitGatewayPrefixListReferenceRequest& request) const; /** *

Modifies a reference (route) to a prefix list in a specified transit gateway * route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTransitGatewayPrefixListReferenceAsync(const Model::ModifyTransitGatewayPrefixListReferenceRequest& request, const ModifyTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified VPC attachment.

See Also:

AWS * API Reference

*/ virtual Model::ModifyTransitGatewayVpcAttachmentOutcome ModifyTransitGatewayVpcAttachment(const Model::ModifyTransitGatewayVpcAttachmentRequest& request) const; /** *

Modifies the specified VPC attachment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyTransitGatewayVpcAttachmentOutcomeCallable ModifyTransitGatewayVpcAttachmentCallable(const Model::ModifyTransitGatewayVpcAttachmentRequest& request) const; /** *

Modifies the specified VPC attachment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyTransitGatewayVpcAttachmentAsync(const Model::ModifyTransitGatewayVpcAttachmentRequest& request, const ModifyTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

You can modify several parameters of an existing EBS volume, including volume * size, volume type, and IOPS capacity. If your EBS volume is attached to a * current-generation EC2 instance type, you may be able to apply these changes * without stopping the instance or detaching the volume from it. For more * information about modifying an EBS volume running Linux, see Modifying * the size, IOPS, or type of an EBS volume on Linux. For more information * about modifying an EBS volume running Windows, see Modifying * the size, IOPS, or type of an EBS volume on Windows.

When you * complete a resize operation on your volume, you need to extend the volume's * file-system size to take advantage of the new storage capacity. For information * about extending a Linux file system, see Extending * a Linux file system. For information about extending a Windows file system, * see Extending * a Windows file system.

You can use CloudWatch Events to check the * status of a modification to an EBS volume. For information about CloudWatch * Events, see the Amazon * CloudWatch Events User Guide. You can also track the status of a * modification using DescribeVolumesModifications. For information about * tracking status changes using either method, see Monitoring * volume modifications.

With previous-generation instance types, * resizing an EBS volume may require detaching and reattaching the volume or * stopping and restarting the instance. For more information, see Modifying * the size, IOPS, or type of an EBS volume on Linux and Modifying * the size, IOPS, or type of an EBS volume on Windows.

If you reach the * maximum volume modification rate per volume limit, you will need to wait at * least six hours before applying further modifications to the affected EBS * volume.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVolumeOutcome ModifyVolume(const Model::ModifyVolumeRequest& request) const; /** *

You can modify several parameters of an existing EBS volume, including volume * size, volume type, and IOPS capacity. If your EBS volume is attached to a * current-generation EC2 instance type, you may be able to apply these changes * without stopping the instance or detaching the volume from it. For more * information about modifying an EBS volume running Linux, see Modifying * the size, IOPS, or type of an EBS volume on Linux. For more information * about modifying an EBS volume running Windows, see Modifying * the size, IOPS, or type of an EBS volume on Windows.

When you * complete a resize operation on your volume, you need to extend the volume's * file-system size to take advantage of the new storage capacity. For information * about extending a Linux file system, see Extending * a Linux file system. For information about extending a Windows file system, * see Extending * a Windows file system.

You can use CloudWatch Events to check the * status of a modification to an EBS volume. For information about CloudWatch * Events, see the Amazon * CloudWatch Events User Guide. You can also track the status of a * modification using DescribeVolumesModifications. For information about * tracking status changes using either method, see Monitoring * volume modifications.

With previous-generation instance types, * resizing an EBS volume may require detaching and reattaching the volume or * stopping and restarting the instance. For more information, see Modifying * the size, IOPS, or type of an EBS volume on Linux and Modifying * the size, IOPS, or type of an EBS volume on Windows.

If you reach the * maximum volume modification rate per volume limit, you will need to wait at * least six hours before applying further modifications to the affected EBS * volume.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVolumeOutcomeCallable ModifyVolumeCallable(const Model::ModifyVolumeRequest& request) const; /** *

You can modify several parameters of an existing EBS volume, including volume * size, volume type, and IOPS capacity. If your EBS volume is attached to a * current-generation EC2 instance type, you may be able to apply these changes * without stopping the instance or detaching the volume from it. For more * information about modifying an EBS volume running Linux, see Modifying * the size, IOPS, or type of an EBS volume on Linux. For more information * about modifying an EBS volume running Windows, see Modifying * the size, IOPS, or type of an EBS volume on Windows.

When you * complete a resize operation on your volume, you need to extend the volume's * file-system size to take advantage of the new storage capacity. For information * about extending a Linux file system, see Extending * a Linux file system. For information about extending a Windows file system, * see Extending * a Windows file system.

You can use CloudWatch Events to check the * status of a modification to an EBS volume. For information about CloudWatch * Events, see the Amazon * CloudWatch Events User Guide. You can also track the status of a * modification using DescribeVolumesModifications. For information about * tracking status changes using either method, see Monitoring * volume modifications.

With previous-generation instance types, * resizing an EBS volume may require detaching and reattaching the volume or * stopping and restarting the instance. For more information, see Modifying * the size, IOPS, or type of an EBS volume on Linux and Modifying * the size, IOPS, or type of an EBS volume on Windows.

If you reach the * maximum volume modification rate per volume limit, you will need to wait at * least six hours before applying further modifications to the affected EBS * volume.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVolumeAsync(const Model::ModifyVolumeRequest& request, const ModifyVolumeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a volume attribute.

By default, all I/O operations for the * volume are suspended when the data on the volume is determined to be potentially * inconsistent, to prevent undetectable, latent data corruption. The I/O access to * the volume can be resumed by first enabling I/O access and then checking the * data consistency on your volume.

You can change the default behavior to * resume I/O operations. We recommend that you change this only for boot volumes * or for volumes that are stateless or disposable.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVolumeAttributeOutcome ModifyVolumeAttribute(const Model::ModifyVolumeAttributeRequest& request) const; /** *

Modifies a volume attribute.

By default, all I/O operations for the * volume are suspended when the data on the volume is determined to be potentially * inconsistent, to prevent undetectable, latent data corruption. The I/O access to * the volume can be resumed by first enabling I/O access and then checking the * data consistency on your volume.

You can change the default behavior to * resume I/O operations. We recommend that you change this only for boot volumes * or for volumes that are stateless or disposable.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVolumeAttributeOutcomeCallable ModifyVolumeAttributeCallable(const Model::ModifyVolumeAttributeRequest& request) const; /** *

Modifies a volume attribute.

By default, all I/O operations for the * volume are suspended when the data on the volume is determined to be potentially * inconsistent, to prevent undetectable, latent data corruption. The I/O access to * the volume can be resumed by first enabling I/O access and then checking the * data consistency on your volume.

You can change the default behavior to * resume I/O operations. We recommend that you change this only for boot volumes * or for volumes that are stateless or disposable.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVolumeAttributeAsync(const Model::ModifyVolumeAttributeRequest& request, const ModifyVolumeAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the specified attribute of the specified VPC.

See * Also:

AWS * API Reference

*/ virtual Model::ModifyVpcAttributeOutcome ModifyVpcAttribute(const Model::ModifyVpcAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified VPC.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcAttributeOutcomeCallable ModifyVpcAttributeCallable(const Model::ModifyVpcAttributeRequest& request) const; /** *

Modifies the specified attribute of the specified VPC.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcAttributeAsync(const Model::ModifyVpcAttributeRequest& request, const ModifyVpcAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies attributes of a specified VPC endpoint. The attributes that you can * modify depend on the type of VPC endpoint (interface or gateway). For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcEndpointOutcome ModifyVpcEndpoint(const Model::ModifyVpcEndpointRequest& request) const; /** *

Modifies attributes of a specified VPC endpoint. The attributes that you can * modify depend on the type of VPC endpoint (interface or gateway). For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcEndpointOutcomeCallable ModifyVpcEndpointCallable(const Model::ModifyVpcEndpointRequest& request) const; /** *

Modifies attributes of a specified VPC endpoint. The attributes that you can * modify depend on the type of VPC endpoint (interface or gateway). For more * information, see VPC * Endpoints in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcEndpointAsync(const Model::ModifyVpcEndpointRequest& request, const ModifyVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a connection notification for VPC endpoint or VPC endpoint service. * You can change the SNS topic for the notification, or the events for which to be * notified.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcEndpointConnectionNotificationOutcome ModifyVpcEndpointConnectionNotification(const Model::ModifyVpcEndpointConnectionNotificationRequest& request) const; /** *

Modifies a connection notification for VPC endpoint or VPC endpoint service. * You can change the SNS topic for the notification, or the events for which to be * notified.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcEndpointConnectionNotificationOutcomeCallable ModifyVpcEndpointConnectionNotificationCallable(const Model::ModifyVpcEndpointConnectionNotificationRequest& request) const; /** *

Modifies a connection notification for VPC endpoint or VPC endpoint service. * You can change the SNS topic for the notification, or the events for which to be * notified.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcEndpointConnectionNotificationAsync(const Model::ModifyVpcEndpointConnectionNotificationRequest& request, const ModifyVpcEndpointConnectionNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the attributes of your VPC endpoint service configuration. You can * change the Network Load Balancers for your service, and you can specify whether * acceptance is required for requests to connect to your endpoint service through * an interface VPC endpoint.

If you set or modify the private DNS name, you * must prove that you own the private DNS domain name. For more information, see * VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcEndpointServiceConfigurationOutcome ModifyVpcEndpointServiceConfiguration(const Model::ModifyVpcEndpointServiceConfigurationRequest& request) const; /** *

Modifies the attributes of your VPC endpoint service configuration. You can * change the Network Load Balancers for your service, and you can specify whether * acceptance is required for requests to connect to your endpoint service through * an interface VPC endpoint.

If you set or modify the private DNS name, you * must prove that you own the private DNS domain name. For more information, see * VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcEndpointServiceConfigurationOutcomeCallable ModifyVpcEndpointServiceConfigurationCallable(const Model::ModifyVpcEndpointServiceConfigurationRequest& request) const; /** *

Modifies the attributes of your VPC endpoint service configuration. You can * change the Network Load Balancers for your service, and you can specify whether * acceptance is required for requests to connect to your endpoint service through * an interface VPC endpoint.

If you set or modify the private DNS name, you * must prove that you own the private DNS domain name. For more information, see * VPC * Endpoint Service Private DNS Name Verification in the Amazon Virtual * Private Cloud User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcEndpointServiceConfigurationAsync(const Model::ModifyVpcEndpointServiceConfigurationRequest& request, const ModifyVpcEndpointServiceConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the permissions for your VPC * endpoint service. You can add or remove permissions for service consumers * (IAM users, IAM roles, and AWS accounts) to connect to your endpoint * service.

If you grant permissions to all principals, the service is * public. Any users who know the name of a public service can send a request to * attach an endpoint. If the service does not require manual approval, attachments * are automatically approved.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcEndpointServicePermissionsOutcome ModifyVpcEndpointServicePermissions(const Model::ModifyVpcEndpointServicePermissionsRequest& request) const; /** *

Modifies the permissions for your VPC * endpoint service. You can add or remove permissions for service consumers * (IAM users, IAM roles, and AWS accounts) to connect to your endpoint * service.

If you grant permissions to all principals, the service is * public. Any users who know the name of a public service can send a request to * attach an endpoint. If the service does not require manual approval, attachments * are automatically approved.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcEndpointServicePermissionsOutcomeCallable ModifyVpcEndpointServicePermissionsCallable(const Model::ModifyVpcEndpointServicePermissionsRequest& request) const; /** *

Modifies the permissions for your VPC * endpoint service. You can add or remove permissions for service consumers * (IAM users, IAM roles, and AWS accounts) to connect to your endpoint * service.

If you grant permissions to all principals, the service is * public. Any users who know the name of a public service can send a request to * attach an endpoint. If the service does not require manual approval, attachments * are automatically approved.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcEndpointServicePermissionsAsync(const Model::ModifyVpcEndpointServicePermissionsRequest& request, const ModifyVpcEndpointServicePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the VPC peering connection options on one side of a VPC peering * connection. You can do the following:

  • Enable/disable * communication over the peering connection between an EC2-Classic instance that's * linked to your VPC (using ClassicLink) and instances in the peer VPC.

  • *
  • Enable/disable communication over the peering connection between * instances in your VPC and an EC2-Classic instance that's linked to the peer * VPC.

  • Enable/disable the ability to resolve public DNS * hostnames to private IP addresses when queried from instances in the peer * VPC.

If the peered VPCs are in the same AWS account, you can * enable DNS resolution for queries from the local VPC. This ensures that queries * from the local VPC resolve to private IP addresses in the peer VPC. This option * is not available if the peered VPCs are in different AWS accounts or different * Regions. For peered VPCs in different AWS accounts, each AWS account owner must * initiate a separate request to modify the peering connection options. For * inter-region peering connections, you must use the Region for the requester VPC * to modify the requester VPC peering options and the Region for the accepter VPC * to modify the accepter VPC peering options. To verify which VPCs are the * accepter and the requester for a VPC peering connection, use the * DescribeVpcPeeringConnections command.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcPeeringConnectionOptionsOutcome ModifyVpcPeeringConnectionOptions(const Model::ModifyVpcPeeringConnectionOptionsRequest& request) const; /** *

Modifies the VPC peering connection options on one side of a VPC peering * connection. You can do the following:

  • Enable/disable * communication over the peering connection between an EC2-Classic instance that's * linked to your VPC (using ClassicLink) and instances in the peer VPC.

  • *
  • Enable/disable communication over the peering connection between * instances in your VPC and an EC2-Classic instance that's linked to the peer * VPC.

  • Enable/disable the ability to resolve public DNS * hostnames to private IP addresses when queried from instances in the peer * VPC.

If the peered VPCs are in the same AWS account, you can * enable DNS resolution for queries from the local VPC. This ensures that queries * from the local VPC resolve to private IP addresses in the peer VPC. This option * is not available if the peered VPCs are in different AWS accounts or different * Regions. For peered VPCs in different AWS accounts, each AWS account owner must * initiate a separate request to modify the peering connection options. For * inter-region peering connections, you must use the Region for the requester VPC * to modify the requester VPC peering options and the Region for the accepter VPC * to modify the accepter VPC peering options. To verify which VPCs are the * accepter and the requester for a VPC peering connection, use the * DescribeVpcPeeringConnections command.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcPeeringConnectionOptionsOutcomeCallable ModifyVpcPeeringConnectionOptionsCallable(const Model::ModifyVpcPeeringConnectionOptionsRequest& request) const; /** *

Modifies the VPC peering connection options on one side of a VPC peering * connection. You can do the following:

  • Enable/disable * communication over the peering connection between an EC2-Classic instance that's * linked to your VPC (using ClassicLink) and instances in the peer VPC.

  • *
  • Enable/disable communication over the peering connection between * instances in your VPC and an EC2-Classic instance that's linked to the peer * VPC.

  • Enable/disable the ability to resolve public DNS * hostnames to private IP addresses when queried from instances in the peer * VPC.

If the peered VPCs are in the same AWS account, you can * enable DNS resolution for queries from the local VPC. This ensures that queries * from the local VPC resolve to private IP addresses in the peer VPC. This option * is not available if the peered VPCs are in different AWS accounts or different * Regions. For peered VPCs in different AWS accounts, each AWS account owner must * initiate a separate request to modify the peering connection options. For * inter-region peering connections, you must use the Region for the requester VPC * to modify the requester VPC peering options and the Region for the accepter VPC * to modify the accepter VPC peering options. To verify which VPCs are the * accepter and the requester for a VPC peering connection, use the * DescribeVpcPeeringConnections command.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcPeeringConnectionOptionsAsync(const Model::ModifyVpcPeeringConnectionOptionsRequest& request, const ModifyVpcPeeringConnectionOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the instance tenancy attribute of the specified VPC. You can change * the instance tenancy attribute of a VPC to default only. You cannot * change the instance tenancy attribute to dedicated.

After * you modify the tenancy of the VPC, any new instances that you launch into the * VPC have a tenancy of default, unless you specify otherwise during * launch. The tenancy of any existing instances in the VPC is not affected.

*

For more information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpcTenancyOutcome ModifyVpcTenancy(const Model::ModifyVpcTenancyRequest& request) const; /** *

Modifies the instance tenancy attribute of the specified VPC. You can change * the instance tenancy attribute of a VPC to default only. You cannot * change the instance tenancy attribute to dedicated.

After * you modify the tenancy of the VPC, any new instances that you launch into the * VPC have a tenancy of default, unless you specify otherwise during * launch. The tenancy of any existing instances in the VPC is not affected.

*

For more information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpcTenancyOutcomeCallable ModifyVpcTenancyCallable(const Model::ModifyVpcTenancyRequest& request) const; /** *

Modifies the instance tenancy attribute of the specified VPC. You can change * the instance tenancy attribute of a VPC to default only. You cannot * change the instance tenancy attribute to dedicated.

After * you modify the tenancy of the VPC, any new instances that you launch into the * VPC have a tenancy of default, unless you specify otherwise during * launch. The tenancy of any existing instances in the VPC is not affected.

*

For more information, see Dedicated * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpcTenancyAsync(const Model::ModifyVpcTenancyRequest& request, const ModifyVpcTenancyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the customer gateway or the target gateway of an AWS Site-to-Site * VPN connection. To modify the target gateway, the following migration options * are available:

  • An existing virtual private gateway to a new * virtual private gateway

  • An existing virtual private gateway to * a transit gateway

  • An existing transit gateway to a new transit * gateway

  • An existing transit gateway to a virtual private * gateway

Before you perform the migration to the new gateway, * you must configure the new gateway. Use CreateVpnGateway to create a * virtual private gateway, or CreateTransitGateway to create a transit * gateway.

This step is required when you migrate from a virtual private * gateway with static routes to a transit gateway.

You must delete the * static routes before you migrate to the new gateway.

Keep a copy of the * static route before you delete it. You will need to add back these routes to the * transit gateway after the VPN connection migration is complete.

After you * migrate to the new gateway, you might need to modify your VPC route table. Use * CreateRoute and DeleteRoute to make the changes described in VPN * Gateway Target Modification Required VPC Route Table Updates in the AWS * Site-to-Site VPN User Guide.

When the new gateway is a transit * gateway, modify the transit gateway route table to allow traffic between the VPC * and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to * add the routes.

If you deleted VPN static routes, you must add the * static routes to the transit gateway route table.

After you perform this * operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel * options remain intact. Your AWS Site-to-Site VPN connection will be temporarily * unavailable for a brief period while we provision the new * endpoints.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpnConnectionOutcome ModifyVpnConnection(const Model::ModifyVpnConnectionRequest& request) const; /** *

Modifies the customer gateway or the target gateway of an AWS Site-to-Site * VPN connection. To modify the target gateway, the following migration options * are available:

  • An existing virtual private gateway to a new * virtual private gateway

  • An existing virtual private gateway to * a transit gateway

  • An existing transit gateway to a new transit * gateway

  • An existing transit gateway to a virtual private * gateway

Before you perform the migration to the new gateway, * you must configure the new gateway. Use CreateVpnGateway to create a * virtual private gateway, or CreateTransitGateway to create a transit * gateway.

This step is required when you migrate from a virtual private * gateway with static routes to a transit gateway.

You must delete the * static routes before you migrate to the new gateway.

Keep a copy of the * static route before you delete it. You will need to add back these routes to the * transit gateway after the VPN connection migration is complete.

After you * migrate to the new gateway, you might need to modify your VPC route table. Use * CreateRoute and DeleteRoute to make the changes described in VPN * Gateway Target Modification Required VPC Route Table Updates in the AWS * Site-to-Site VPN User Guide.

When the new gateway is a transit * gateway, modify the transit gateway route table to allow traffic between the VPC * and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to * add the routes.

If you deleted VPN static routes, you must add the * static routes to the transit gateway route table.

After you perform this * operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel * options remain intact. Your AWS Site-to-Site VPN connection will be temporarily * unavailable for a brief period while we provision the new * endpoints.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpnConnectionOutcomeCallable ModifyVpnConnectionCallable(const Model::ModifyVpnConnectionRequest& request) const; /** *

Modifies the customer gateway or the target gateway of an AWS Site-to-Site * VPN connection. To modify the target gateway, the following migration options * are available:

  • An existing virtual private gateway to a new * virtual private gateway

  • An existing virtual private gateway to * a transit gateway

  • An existing transit gateway to a new transit * gateway

  • An existing transit gateway to a virtual private * gateway

Before you perform the migration to the new gateway, * you must configure the new gateway. Use CreateVpnGateway to create a * virtual private gateway, or CreateTransitGateway to create a transit * gateway.

This step is required when you migrate from a virtual private * gateway with static routes to a transit gateway.

You must delete the * static routes before you migrate to the new gateway.

Keep a copy of the * static route before you delete it. You will need to add back these routes to the * transit gateway after the VPN connection migration is complete.

After you * migrate to the new gateway, you might need to modify your VPC route table. Use * CreateRoute and DeleteRoute to make the changes described in VPN * Gateway Target Modification Required VPC Route Table Updates in the AWS * Site-to-Site VPN User Guide.

When the new gateway is a transit * gateway, modify the transit gateway route table to allow traffic between the VPC * and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to * add the routes.

If you deleted VPN static routes, you must add the * static routes to the transit gateway route table.

After you perform this * operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel * options remain intact. Your AWS Site-to-Site VPN connection will be temporarily * unavailable for a brief period while we provision the new * endpoints.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpnConnectionAsync(const Model::ModifyVpnConnectionRequest& request, const ModifyVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the VPN tunnel endpoint certificate.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpnTunnelCertificateOutcome ModifyVpnTunnelCertificate(const Model::ModifyVpnTunnelCertificateRequest& request) const; /** *

Modifies the VPN tunnel endpoint certificate.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpnTunnelCertificateOutcomeCallable ModifyVpnTunnelCertificateCallable(const Model::ModifyVpnTunnelCertificateRequest& request) const; /** *

Modifies the VPN tunnel endpoint certificate.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpnTunnelCertificateAsync(const Model::ModifyVpnTunnelCertificateRequest& request, const ModifyVpnTunnelCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the options for a VPN tunnel in an AWS Site-to-Site VPN connection. * You can modify multiple options for a tunnel in a single request, but you can * only modify one tunnel at a time. For more information, see Site-to-Site * VPN Tunnel Options for Your Site-to-Site VPN Connection in the AWS * Site-to-Site VPN User Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyVpnTunnelOptionsOutcome ModifyVpnTunnelOptions(const Model::ModifyVpnTunnelOptionsRequest& request) const; /** *

Modifies the options for a VPN tunnel in an AWS Site-to-Site VPN connection. * You can modify multiple options for a tunnel in a single request, but you can * only modify one tunnel at a time. For more information, see Site-to-Site * VPN Tunnel Options for Your Site-to-Site VPN Connection in the AWS * Site-to-Site VPN User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyVpnTunnelOptionsOutcomeCallable ModifyVpnTunnelOptionsCallable(const Model::ModifyVpnTunnelOptionsRequest& request) const; /** *

Modifies the options for a VPN tunnel in an AWS Site-to-Site VPN connection. * You can modify multiple options for a tunnel in a single request, but you can * only modify one tunnel at a time. For more information, see Site-to-Site * VPN Tunnel Options for Your Site-to-Site VPN Connection in the AWS * Site-to-Site VPN User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyVpnTunnelOptionsAsync(const Model::ModifyVpnTunnelOptionsRequest& request, const ModifyVpnTunnelOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables detailed monitoring for a running instance. Otherwise, basic * monitoring is enabled. For more information, see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

To disable detailed monitoring, see .

See Also:

* AWS * API Reference

*/ virtual Model::MonitorInstancesOutcome MonitorInstances(const Model::MonitorInstancesRequest& request) const; /** *

Enables detailed monitoring for a running instance. Otherwise, basic * monitoring is enabled. For more information, see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

To disable detailed monitoring, see .

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::MonitorInstancesOutcomeCallable MonitorInstancesCallable(const Model::MonitorInstancesRequest& request) const; /** *

Enables detailed monitoring for a running instance. Otherwise, basic * monitoring is enabled. For more information, see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

To disable detailed monitoring, see .

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void MonitorInstancesAsync(const Model::MonitorInstancesRequest& request, const MonitorInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC * platform. The Elastic IP address must be allocated to your account for more than * 24 hours, and it must not be associated with an instance. After the Elastic IP * address is moved, it is no longer available for use in the EC2-Classic platform, * unless you move it back using the RestoreAddressToClassic request. You * cannot move an Elastic IP address that was originally allocated for use in the * EC2-VPC platform to the EC2-Classic platform.

See Also:

AWS * API Reference

*/ virtual Model::MoveAddressToVpcOutcome MoveAddressToVpc(const Model::MoveAddressToVpcRequest& request) const; /** *

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC * platform. The Elastic IP address must be allocated to your account for more than * 24 hours, and it must not be associated with an instance. After the Elastic IP * address is moved, it is no longer available for use in the EC2-Classic platform, * unless you move it back using the RestoreAddressToClassic request. You * cannot move an Elastic IP address that was originally allocated for use in the * EC2-VPC platform to the EC2-Classic platform.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::MoveAddressToVpcOutcomeCallable MoveAddressToVpcCallable(const Model::MoveAddressToVpcRequest& request) const; /** *

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC * platform. The Elastic IP address must be allocated to your account for more than * 24 hours, and it must not be associated with an instance. After the Elastic IP * address is moved, it is no longer available for use in the EC2-Classic platform, * unless you move it back using the RestoreAddressToClassic request. You * cannot move an Elastic IP address that was originally allocated for use in the * EC2-VPC platform to the EC2-Classic platform.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void MoveAddressToVpcAsync(const Model::MoveAddressToVpcRequest& request, const MoveAddressToVpcResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Provisions an IPv4 or IPv6 address range for use with your AWS resources * through bring your own IP addresses (BYOIP) and creates a corresponding address * pool. After the address range is provisioned, it is ready to be advertised using * AdvertiseByoipCidr.

AWS verifies that you own the address range * and are authorized to advertise it. You must ensure that the address range is * registered to you and that you created an RPKI ROA to authorize Amazon ASNs * 16509 and 14618 to advertise the address range. For more information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

Provisioning an address range is an asynchronous operation, so * the call returns immediately, but the address range is not ready to use until * its status changes from pending-provision to * provisioned. To monitor the status of an address range, use * DescribeByoipCidrs. To allocate an Elastic IP address from your IPv4 * address pool, use AllocateAddress with either the specific address from * the address pool or the ID of the address pool.

See Also:

AWS * API Reference

*/ virtual Model::ProvisionByoipCidrOutcome ProvisionByoipCidr(const Model::ProvisionByoipCidrRequest& request) const; /** *

Provisions an IPv4 or IPv6 address range for use with your AWS resources * through bring your own IP addresses (BYOIP) and creates a corresponding address * pool. After the address range is provisioned, it is ready to be advertised using * AdvertiseByoipCidr.

AWS verifies that you own the address range * and are authorized to advertise it. You must ensure that the address range is * registered to you and that you created an RPKI ROA to authorize Amazon ASNs * 16509 and 14618 to advertise the address range. For more information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

Provisioning an address range is an asynchronous operation, so * the call returns immediately, but the address range is not ready to use until * its status changes from pending-provision to * provisioned. To monitor the status of an address range, use * DescribeByoipCidrs. To allocate an Elastic IP address from your IPv4 * address pool, use AllocateAddress with either the specific address from * the address pool or the ID of the address pool.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ProvisionByoipCidrOutcomeCallable ProvisionByoipCidrCallable(const Model::ProvisionByoipCidrRequest& request) const; /** *

Provisions an IPv4 or IPv6 address range for use with your AWS resources * through bring your own IP addresses (BYOIP) and creates a corresponding address * pool. After the address range is provisioned, it is ready to be advertised using * AdvertiseByoipCidr.

AWS verifies that you own the address range * and are authorized to advertise it. You must ensure that the address range is * registered to you and that you created an RPKI ROA to authorize Amazon ASNs * 16509 and 14618 to advertise the address range. For more information, see Bring * Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User * Guide.

Provisioning an address range is an asynchronous operation, so * the call returns immediately, but the address range is not ready to use until * its status changes from pending-provision to * provisioned. To monitor the status of an address range, use * DescribeByoipCidrs. To allocate an Elastic IP address from your IPv4 * address pool, use AllocateAddress with either the specific address from * the address pool or the ID of the address pool.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ProvisionByoipCidrAsync(const Model::ProvisionByoipCidrRequest& request, const ProvisionByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Purchase a reservation with configurations that match those of your Dedicated * Host. You must have active Dedicated Hosts in your account before you purchase a * reservation. This action results in the specified reservation being purchased * and charged to your account.

See Also:

AWS * API Reference

*/ virtual Model::PurchaseHostReservationOutcome PurchaseHostReservation(const Model::PurchaseHostReservationRequest& request) const; /** *

Purchase a reservation with configurations that match those of your Dedicated * Host. You must have active Dedicated Hosts in your account before you purchase a * reservation. This action results in the specified reservation being purchased * and charged to your account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PurchaseHostReservationOutcomeCallable PurchaseHostReservationCallable(const Model::PurchaseHostReservationRequest& request) const; /** *

Purchase a reservation with configurations that match those of your Dedicated * Host. You must have active Dedicated Hosts in your account before you purchase a * reservation. This action results in the specified reservation being purchased * and charged to your account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PurchaseHostReservationAsync(const Model::PurchaseHostReservationRequest& request, const PurchaseHostReservationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Purchases a Reserved Instance for use with your account. With Reserved * Instances, you pay a lower hourly rate compared to On-Demand instance * pricing.

Use DescribeReservedInstancesOfferings to get a list of * Reserved Instance offerings that match your specifications. After you've * purchased a Reserved Instance, you can check for your new Reserved Instance with * DescribeReservedInstances.

To queue a purchase for a future date * and time, specify a purchase time. If you do not specify a purchase time, the * default is the current time.

For more information, see Reserved * Instances and Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::PurchaseReservedInstancesOfferingOutcome PurchaseReservedInstancesOffering(const Model::PurchaseReservedInstancesOfferingRequest& request) const; /** *

Purchases a Reserved Instance for use with your account. With Reserved * Instances, you pay a lower hourly rate compared to On-Demand instance * pricing.

Use DescribeReservedInstancesOfferings to get a list of * Reserved Instance offerings that match your specifications. After you've * purchased a Reserved Instance, you can check for your new Reserved Instance with * DescribeReservedInstances.

To queue a purchase for a future date * and time, specify a purchase time. If you do not specify a purchase time, the * default is the current time.

For more information, see Reserved * Instances and Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PurchaseReservedInstancesOfferingOutcomeCallable PurchaseReservedInstancesOfferingCallable(const Model::PurchaseReservedInstancesOfferingRequest& request) const; /** *

Purchases a Reserved Instance for use with your account. With Reserved * Instances, you pay a lower hourly rate compared to On-Demand instance * pricing.

Use DescribeReservedInstancesOfferings to get a list of * Reserved Instance offerings that match your specifications. After you've * purchased a Reserved Instance, you can check for your new Reserved Instance with * DescribeReservedInstances.

To queue a purchase for a future date * and time, specify a purchase time. If you do not specify a purchase time, the * default is the current time.

For more information, see Reserved * Instances and Reserved * Instance Marketplace in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PurchaseReservedInstancesOfferingAsync(const Model::PurchaseReservedInstancesOfferingRequest& request, const PurchaseReservedInstancesOfferingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Purchases the Scheduled Instances with the specified schedule.

*

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the * hour for a one-year term. Before you can purchase a Scheduled Instance, you must * call DescribeScheduledInstanceAvailability to check for available * schedules and obtain a purchase token. After you purchase a Scheduled Instance, * you must call RunScheduledInstances during each scheduled time * period.

After you purchase a Scheduled Instance, you can't cancel, * modify, or resell your purchase.

See Also:

AWS * API Reference

*/ virtual Model::PurchaseScheduledInstancesOutcome PurchaseScheduledInstances(const Model::PurchaseScheduledInstancesRequest& request) const; /** *

Purchases the Scheduled Instances with the specified schedule.

*

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the * hour for a one-year term. Before you can purchase a Scheduled Instance, you must * call DescribeScheduledInstanceAvailability to check for available * schedules and obtain a purchase token. After you purchase a Scheduled Instance, * you must call RunScheduledInstances during each scheduled time * period.

After you purchase a Scheduled Instance, you can't cancel, * modify, or resell your purchase.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PurchaseScheduledInstancesOutcomeCallable PurchaseScheduledInstancesCallable(const Model::PurchaseScheduledInstancesRequest& request) const; /** *

Purchases the Scheduled Instances with the specified schedule.

*

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the * hour for a one-year term. Before you can purchase a Scheduled Instance, you must * call DescribeScheduledInstanceAvailability to check for available * schedules and obtain a purchase token. After you purchase a Scheduled Instance, * you must call RunScheduledInstances during each scheduled time * period.

After you purchase a Scheduled Instance, you can't cancel, * modify, or resell your purchase.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PurchaseScheduledInstancesAsync(const Model::PurchaseScheduledInstancesRequest& request, const PurchaseScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Requests a reboot of the specified instances. This operation is asynchronous; * it only queues a request to reboot the specified instances. The operation * succeeds if the instances are valid and belong to you. Requests to reboot * terminated instances are ignored.

If an instance does not cleanly shut * down within four minutes, Amazon EC2 performs a hard reboot.

For more * information about troubleshooting, see Getting * console output and rebooting instances in the Amazon Elastic Compute * Cloud User Guide.

See Also:

AWS * API Reference

*/ virtual Model::RebootInstancesOutcome RebootInstances(const Model::RebootInstancesRequest& request) const; /** *

Requests a reboot of the specified instances. This operation is asynchronous; * it only queues a request to reboot the specified instances. The operation * succeeds if the instances are valid and belong to you. Requests to reboot * terminated instances are ignored.

If an instance does not cleanly shut * down within four minutes, Amazon EC2 performs a hard reboot.

For more * information about troubleshooting, see Getting * console output and rebooting instances in the Amazon Elastic Compute * Cloud User Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RebootInstancesOutcomeCallable RebootInstancesCallable(const Model::RebootInstancesRequest& request) const; /** *

Requests a reboot of the specified instances. This operation is asynchronous; * it only queues a request to reboot the specified instances. The operation * succeeds if the instances are valid and belong to you. Requests to reboot * terminated instances are ignored.

If an instance does not cleanly shut * down within four minutes, Amazon EC2 performs a hard reboot.

For more * information about troubleshooting, see Getting * console output and rebooting instances in the Amazon Elastic Compute * Cloud User Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RebootInstancesAsync(const Model::RebootInstancesRequest& request, const RebootInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers an AMI. When you're creating an AMI, this is the final step you * must complete before you can launch an instance from the AMI. For more * information about creating AMIs, see Creating * your own AMIs in the Amazon Elastic Compute Cloud User Guide.

*

For Amazon EBS-backed instances, CreateImage creates and * registers the AMI in a single request, so you don't have to register the AMI * yourself.

You can also use RegisterImage to create * an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. You * specify the snapshot using the block device mapping. For more information, see * Launching * a Linux instance from a backup in the Amazon Elastic Compute Cloud User * Guide.

If any snapshots have AWS Marketplace product codes, they are * copied to the new AMI.

Windows and some Linux distributions, such as Red * Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 * billing product code associated with an AMI to verify the subscription status * for package updates. To create a new AMI for operating systems that require a * billing product code, instead of registering the AMI, do the following to * preserve the billing product code association:

  1. Launch an * instance from an existing AMI with that billing product code.

  2. *

    Customize the instance.

  3. Create an AMI from the instance * using CreateImage.

If you purchase a Reserved Instance * to apply to an On-Demand Instance that was launched from an AMI with a billing * product code, make sure that the Reserved Instance has the matching billing * product code. If you purchase a Reserved Instance without the matching billing * product code, the Reserved Instance will not be applied to the On-Demand * Instance. For information about how to obtain the platform details and billing * information of an AMI, see Obtaining * billing information in the Amazon Elastic Compute Cloud User * Guide.

If needed, you can deregister an AMI at any time. Any * modifications you make to an AMI backed by an instance store volume invalidates * its registration. If you make changes to an image, deregister the previous image * and register the new image.

See Also:

AWS * API Reference

*/ virtual Model::RegisterImageOutcome RegisterImage(const Model::RegisterImageRequest& request) const; /** *

Registers an AMI. When you're creating an AMI, this is the final step you * must complete before you can launch an instance from the AMI. For more * information about creating AMIs, see Creating * your own AMIs in the Amazon Elastic Compute Cloud User Guide.

*

For Amazon EBS-backed instances, CreateImage creates and * registers the AMI in a single request, so you don't have to register the AMI * yourself.

You can also use RegisterImage to create * an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. You * specify the snapshot using the block device mapping. For more information, see * Launching * a Linux instance from a backup in the Amazon Elastic Compute Cloud User * Guide.

If any snapshots have AWS Marketplace product codes, they are * copied to the new AMI.

Windows and some Linux distributions, such as Red * Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 * billing product code associated with an AMI to verify the subscription status * for package updates. To create a new AMI for operating systems that require a * billing product code, instead of registering the AMI, do the following to * preserve the billing product code association:

  1. Launch an * instance from an existing AMI with that billing product code.

  2. *

    Customize the instance.

  3. Create an AMI from the instance * using CreateImage.

If you purchase a Reserved Instance * to apply to an On-Demand Instance that was launched from an AMI with a billing * product code, make sure that the Reserved Instance has the matching billing * product code. If you purchase a Reserved Instance without the matching billing * product code, the Reserved Instance will not be applied to the On-Demand * Instance. For information about how to obtain the platform details and billing * information of an AMI, see Obtaining * billing information in the Amazon Elastic Compute Cloud User * Guide.

If needed, you can deregister an AMI at any time. Any * modifications you make to an AMI backed by an instance store volume invalidates * its registration. If you make changes to an image, deregister the previous image * and register the new image.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterImageOutcomeCallable RegisterImageCallable(const Model::RegisterImageRequest& request) const; /** *

Registers an AMI. When you're creating an AMI, this is the final step you * must complete before you can launch an instance from the AMI. For more * information about creating AMIs, see Creating * your own AMIs in the Amazon Elastic Compute Cloud User Guide.

*

For Amazon EBS-backed instances, CreateImage creates and * registers the AMI in a single request, so you don't have to register the AMI * yourself.

You can also use RegisterImage to create * an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. You * specify the snapshot using the block device mapping. For more information, see * Launching * a Linux instance from a backup in the Amazon Elastic Compute Cloud User * Guide.

If any snapshots have AWS Marketplace product codes, they are * copied to the new AMI.

Windows and some Linux distributions, such as Red * Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 * billing product code associated with an AMI to verify the subscription status * for package updates. To create a new AMI for operating systems that require a * billing product code, instead of registering the AMI, do the following to * preserve the billing product code association:

  1. Launch an * instance from an existing AMI with that billing product code.

  2. *

    Customize the instance.

  3. Create an AMI from the instance * using CreateImage.

If you purchase a Reserved Instance * to apply to an On-Demand Instance that was launched from an AMI with a billing * product code, make sure that the Reserved Instance has the matching billing * product code. If you purchase a Reserved Instance without the matching billing * product code, the Reserved Instance will not be applied to the On-Demand * Instance. For information about how to obtain the platform details and billing * information of an AMI, see Obtaining * billing information in the Amazon Elastic Compute Cloud User * Guide.

If needed, you can deregister an AMI at any time. Any * modifications you make to an AMI backed by an instance store volume invalidates * its registration. If you make changes to an image, deregister the previous image * and register the new image.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterImageAsync(const Model::RegisterImageRequest& request, const RegisterImageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers a set of tag keys to include in scheduled event notifications for * your resources.

To remove tags, use .

See Also:

AWS * API Reference

*/ virtual Model::RegisterInstanceEventNotificationAttributesOutcome RegisterInstanceEventNotificationAttributes(const Model::RegisterInstanceEventNotificationAttributesRequest& request) const; /** *

Registers a set of tag keys to include in scheduled event notifications for * your resources.

To remove tags, use .

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterInstanceEventNotificationAttributesOutcomeCallable RegisterInstanceEventNotificationAttributesCallable(const Model::RegisterInstanceEventNotificationAttributesRequest& request) const; /** *

Registers a set of tag keys to include in scheduled event notifications for * your resources.

To remove tags, use .

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterInstanceEventNotificationAttributesAsync(const Model::RegisterInstanceEventNotificationAttributesRequest& request, const RegisterInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers members (network interfaces) with the transit gateway multicast * group. A member is a network interface associated with a supported EC2 instance * that receives multicast traffic. For information about supported instances, see * Multicast * Consideration in Amazon VPC Transit Gateways.

After you add * the members, use SearchTransitGatewayMulticastGroups * to verify that the members were added to the transit gateway multicast * group.

See Also:

AWS * API Reference

*/ virtual Model::RegisterTransitGatewayMulticastGroupMembersOutcome RegisterTransitGatewayMulticastGroupMembers(const Model::RegisterTransitGatewayMulticastGroupMembersRequest& request) const; /** *

Registers members (network interfaces) with the transit gateway multicast * group. A member is a network interface associated with a supported EC2 instance * that receives multicast traffic. For information about supported instances, see * Multicast * Consideration in Amazon VPC Transit Gateways.

After you add * the members, use SearchTransitGatewayMulticastGroups * to verify that the members were added to the transit gateway multicast * group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterTransitGatewayMulticastGroupMembersOutcomeCallable RegisterTransitGatewayMulticastGroupMembersCallable(const Model::RegisterTransitGatewayMulticastGroupMembersRequest& request) const; /** *

Registers members (network interfaces) with the transit gateway multicast * group. A member is a network interface associated with a supported EC2 instance * that receives multicast traffic. For information about supported instances, see * Multicast * Consideration in Amazon VPC Transit Gateways.

After you add * the members, use SearchTransitGatewayMulticastGroups * to verify that the members were added to the transit gateway multicast * group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterTransitGatewayMulticastGroupMembersAsync(const Model::RegisterTransitGatewayMulticastGroupMembersRequest& request, const RegisterTransitGatewayMulticastGroupMembersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers sources (network interfaces) with the specified transit gateway * multicast group.

A multicast source is a network interface attached to a * supported instance that sends multicast traffic. For information about supported * instances, see Multicast * Considerations in Amazon VPC Transit Gateways.

After you add * the source, use SearchTransitGatewayMulticastGroups * to verify that the source was added to the multicast group.

See * Also:

AWS * API Reference

*/ virtual Model::RegisterTransitGatewayMulticastGroupSourcesOutcome RegisterTransitGatewayMulticastGroupSources(const Model::RegisterTransitGatewayMulticastGroupSourcesRequest& request) const; /** *

Registers sources (network interfaces) with the specified transit gateway * multicast group.

A multicast source is a network interface attached to a * supported instance that sends multicast traffic. For information about supported * instances, see Multicast * Considerations in Amazon VPC Transit Gateways.

After you add * the source, use SearchTransitGatewayMulticastGroups * to verify that the source was added to the multicast group.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterTransitGatewayMulticastGroupSourcesOutcomeCallable RegisterTransitGatewayMulticastGroupSourcesCallable(const Model::RegisterTransitGatewayMulticastGroupSourcesRequest& request) const; /** *

Registers sources (network interfaces) with the specified transit gateway * multicast group.

A multicast source is a network interface attached to a * supported instance that sends multicast traffic. For information about supported * instances, see Multicast * Considerations in Amazon VPC Transit Gateways.

After you add * the source, use SearchTransitGatewayMulticastGroups * to verify that the source was added to the multicast group.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterTransitGatewayMulticastGroupSourcesAsync(const Model::RegisterTransitGatewayMulticastGroupSourcesRequest& request, const RegisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Rejects a transit gateway peering attachment request.

See * Also:

AWS * API Reference

*/ virtual Model::RejectTransitGatewayPeeringAttachmentOutcome RejectTransitGatewayPeeringAttachment(const Model::RejectTransitGatewayPeeringAttachmentRequest& request) const; /** *

Rejects a transit gateway peering attachment request.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RejectTransitGatewayPeeringAttachmentOutcomeCallable RejectTransitGatewayPeeringAttachmentCallable(const Model::RejectTransitGatewayPeeringAttachmentRequest& request) const; /** *

Rejects a transit gateway peering attachment request.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RejectTransitGatewayPeeringAttachmentAsync(const Model::RejectTransitGatewayPeeringAttachmentRequest& request, const RejectTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Rejects a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use AcceptTransitGatewayVpcAttachment to accept a VPC * attachment request.

See Also:

AWS * API Reference

*/ virtual Model::RejectTransitGatewayVpcAttachmentOutcome RejectTransitGatewayVpcAttachment(const Model::RejectTransitGatewayVpcAttachmentRequest& request) const; /** *

Rejects a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use AcceptTransitGatewayVpcAttachment to accept a VPC * attachment request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RejectTransitGatewayVpcAttachmentOutcomeCallable RejectTransitGatewayVpcAttachmentCallable(const Model::RejectTransitGatewayVpcAttachmentRequest& request) const; /** *

Rejects a request to attach a VPC to a transit gateway.

The VPC * attachment must be in the pendingAcceptance state. Use * DescribeTransitGatewayVpcAttachments to view your pending VPC attachment * requests. Use AcceptTransitGatewayVpcAttachment to accept a VPC * attachment request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RejectTransitGatewayVpcAttachmentAsync(const Model::RejectTransitGatewayVpcAttachmentRequest& request, const RejectTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Rejects one or more VPC endpoint connection requests to your VPC endpoint * service.

See Also:

AWS * API Reference

*/ virtual Model::RejectVpcEndpointConnectionsOutcome RejectVpcEndpointConnections(const Model::RejectVpcEndpointConnectionsRequest& request) const; /** *

Rejects one or more VPC endpoint connection requests to your VPC endpoint * service.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RejectVpcEndpointConnectionsOutcomeCallable RejectVpcEndpointConnectionsCallable(const Model::RejectVpcEndpointConnectionsRequest& request) const; /** *

Rejects one or more VPC endpoint connection requests to your VPC endpoint * service.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RejectVpcEndpointConnectionsAsync(const Model::RejectVpcEndpointConnectionsRequest& request, const RejectVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Rejects a VPC peering connection request. The VPC peering connection must be * in the pending-acceptance state. Use the * DescribeVpcPeeringConnections request to view your outstanding VPC * peering connection requests. To delete an active VPC peering connection, or to * delete a VPC peering connection request that you initiated, use * DeleteVpcPeeringConnection.

See Also:

AWS * API Reference

*/ virtual Model::RejectVpcPeeringConnectionOutcome RejectVpcPeeringConnection(const Model::RejectVpcPeeringConnectionRequest& request) const; /** *

Rejects a VPC peering connection request. The VPC peering connection must be * in the pending-acceptance state. Use the * DescribeVpcPeeringConnections request to view your outstanding VPC * peering connection requests. To delete an active VPC peering connection, or to * delete a VPC peering connection request that you initiated, use * DeleteVpcPeeringConnection.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RejectVpcPeeringConnectionOutcomeCallable RejectVpcPeeringConnectionCallable(const Model::RejectVpcPeeringConnectionRequest& request) const; /** *

Rejects a VPC peering connection request. The VPC peering connection must be * in the pending-acceptance state. Use the * DescribeVpcPeeringConnections request to view your outstanding VPC * peering connection requests. To delete an active VPC peering connection, or to * delete a VPC peering connection request that you initiated, use * DeleteVpcPeeringConnection.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RejectVpcPeeringConnectionAsync(const Model::RejectVpcPeeringConnectionRequest& request, const RejectVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Releases the specified Elastic IP address.

[EC2-Classic, default VPC] * Releasing an Elastic IP address automatically disassociates it from any instance * that it's associated with. To disassociate an Elastic IP address without * releasing it, use DisassociateAddress.

[Nondefault VPC] You must * use DisassociateAddress to disassociate the Elastic IP address before you * can release it. Otherwise, Amazon EC2 returns an error * (InvalidIPAddress.InUse).

After releasing an Elastic IP * address, it is released to the IP address pool. Be sure to update your DNS * records and any servers or devices that communicate with the address. If you * attempt to release an Elastic IP address that you already released, you'll get * an AuthFailure error if the address is already allocated to another * AWS account.

[EC2-VPC] After you release an Elastic IP address for use in * a VPC, you might be able to recover it. For more information, see * AllocateAddress.

See Also:

AWS * API Reference

*/ virtual Model::ReleaseAddressOutcome ReleaseAddress(const Model::ReleaseAddressRequest& request) const; /** *

Releases the specified Elastic IP address.

[EC2-Classic, default VPC] * Releasing an Elastic IP address automatically disassociates it from any instance * that it's associated with. To disassociate an Elastic IP address without * releasing it, use DisassociateAddress.

[Nondefault VPC] You must * use DisassociateAddress to disassociate the Elastic IP address before you * can release it. Otherwise, Amazon EC2 returns an error * (InvalidIPAddress.InUse).

After releasing an Elastic IP * address, it is released to the IP address pool. Be sure to update your DNS * records and any servers or devices that communicate with the address. If you * attempt to release an Elastic IP address that you already released, you'll get * an AuthFailure error if the address is already allocated to another * AWS account.

[EC2-VPC] After you release an Elastic IP address for use in * a VPC, you might be able to recover it. For more information, see * AllocateAddress.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReleaseAddressOutcomeCallable ReleaseAddressCallable(const Model::ReleaseAddressRequest& request) const; /** *

Releases the specified Elastic IP address.

[EC2-Classic, default VPC] * Releasing an Elastic IP address automatically disassociates it from any instance * that it's associated with. To disassociate an Elastic IP address without * releasing it, use DisassociateAddress.

[Nondefault VPC] You must * use DisassociateAddress to disassociate the Elastic IP address before you * can release it. Otherwise, Amazon EC2 returns an error * (InvalidIPAddress.InUse).

After releasing an Elastic IP * address, it is released to the IP address pool. Be sure to update your DNS * records and any servers or devices that communicate with the address. If you * attempt to release an Elastic IP address that you already released, you'll get * an AuthFailure error if the address is already allocated to another * AWS account.

[EC2-VPC] After you release an Elastic IP address for use in * a VPC, you might be able to recover it. For more information, see * AllocateAddress.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReleaseAddressAsync(const Model::ReleaseAddressRequest& request, const ReleaseAddressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

When you no longer want to use an On-Demand Dedicated Host it can be * released. On-Demand billing is stopped and the host goes into * released state. The host ID of Dedicated Hosts that have been * released can no longer be specified in another request, for example, to modify * the host. You must stop or terminate all instances on a host before it can be * released.

When Dedicated Hosts are released, it may take some time for * them to stop counting toward your limit and you may receive capacity errors when * trying to allocate new Dedicated Hosts. Wait a few minutes and then try * again.

Released hosts still appear in a DescribeHosts * response.

See Also:

AWS * API Reference

*/ virtual Model::ReleaseHostsOutcome ReleaseHosts(const Model::ReleaseHostsRequest& request) const; /** *

When you no longer want to use an On-Demand Dedicated Host it can be * released. On-Demand billing is stopped and the host goes into * released state. The host ID of Dedicated Hosts that have been * released can no longer be specified in another request, for example, to modify * the host. You must stop or terminate all instances on a host before it can be * released.

When Dedicated Hosts are released, it may take some time for * them to stop counting toward your limit and you may receive capacity errors when * trying to allocate new Dedicated Hosts. Wait a few minutes and then try * again.

Released hosts still appear in a DescribeHosts * response.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReleaseHostsOutcomeCallable ReleaseHostsCallable(const Model::ReleaseHostsRequest& request) const; /** *

When you no longer want to use an On-Demand Dedicated Host it can be * released. On-Demand billing is stopped and the host goes into * released state. The host ID of Dedicated Hosts that have been * released can no longer be specified in another request, for example, to modify * the host. You must stop or terminate all instances on a host before it can be * released.

When Dedicated Hosts are released, it may take some time for * them to stop counting toward your limit and you may receive capacity errors when * trying to allocate new Dedicated Hosts. Wait a few minutes and then try * again.

Released hosts still appear in a DescribeHosts * response.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReleaseHostsAsync(const Model::ReleaseHostsRequest& request, const ReleaseHostsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Replaces an IAM instance profile for the specified running instance. You can * use this action to change the IAM instance profile that's associated with an * instance without having to disassociate the existing IAM instance profile * first.

Use DescribeIamInstanceProfileAssociations to get the * association ID.

See Also:

AWS * API Reference

*/ virtual Model::ReplaceIamInstanceProfileAssociationOutcome ReplaceIamInstanceProfileAssociation(const Model::ReplaceIamInstanceProfileAssociationRequest& request) const; /** *

Replaces an IAM instance profile for the specified running instance. You can * use this action to change the IAM instance profile that's associated with an * instance without having to disassociate the existing IAM instance profile * first.

Use DescribeIamInstanceProfileAssociations to get the * association ID.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceIamInstanceProfileAssociationOutcomeCallable ReplaceIamInstanceProfileAssociationCallable(const Model::ReplaceIamInstanceProfileAssociationRequest& request) const; /** *

Replaces an IAM instance profile for the specified running instance. You can * use this action to change the IAM instance profile that's associated with an * instance without having to disassociate the existing IAM instance profile * first.

Use DescribeIamInstanceProfileAssociations to get the * association ID.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceIamInstanceProfileAssociationAsync(const Model::ReplaceIamInstanceProfileAssociationRequest& request, const ReplaceIamInstanceProfileAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes which network ACL a subnet is associated with. By default when you * create a subnet, it's automatically associated with the default network ACL. For * more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

This is * an idempotent operation.

See Also:

AWS * API Reference

*/ virtual Model::ReplaceNetworkAclAssociationOutcome ReplaceNetworkAclAssociation(const Model::ReplaceNetworkAclAssociationRequest& request) const; /** *

Changes which network ACL a subnet is associated with. By default when you * create a subnet, it's automatically associated with the default network ACL. For * more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

This is * an idempotent operation.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceNetworkAclAssociationOutcomeCallable ReplaceNetworkAclAssociationCallable(const Model::ReplaceNetworkAclAssociationRequest& request) const; /** *

Changes which network ACL a subnet is associated with. By default when you * create a subnet, it's automatically associated with the default network ACL. For * more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

This is * an idempotent operation.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceNetworkAclAssociationAsync(const Model::ReplaceNetworkAclAssociationRequest& request, const ReplaceNetworkAclAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Replaces an entry (rule) in a network ACL. For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::ReplaceNetworkAclEntryOutcome ReplaceNetworkAclEntry(const Model::ReplaceNetworkAclEntryRequest& request) const; /** *

Replaces an entry (rule) in a network ACL. For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceNetworkAclEntryOutcomeCallable ReplaceNetworkAclEntryCallable(const Model::ReplaceNetworkAclEntryRequest& request) const; /** *

Replaces an entry (rule) in a network ACL. For more information, see Network * ACLs in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceNetworkAclEntryAsync(const Model::ReplaceNetworkAclEntryRequest& request, const ReplaceNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Replaces an existing route within a route table in a VPC. You must provide * only one of the following: internet gateway, virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

*/ virtual Model::ReplaceRouteOutcome ReplaceRoute(const Model::ReplaceRouteRequest& request) const; /** *

Replaces an existing route within a route table in a VPC. You must provide * only one of the following: internet gateway, virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceRouteOutcomeCallable ReplaceRouteCallable(const Model::ReplaceRouteRequest& request) const; /** *

Replaces an existing route within a route table in a VPC. You must provide * only one of the following: internet gateway, virtual private gateway, NAT * instance, NAT gateway, VPC peering connection, network interface, egress-only * internet gateway, or transit gateway.

For more information, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceRouteAsync(const Model::ReplaceRouteRequest& request, const ReplaceRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes the route table associated with a given subnet, internet gateway, or * virtual private gateway in a VPC. After the operation completes, the subnet or * gateway uses the routes in the new route table. For more information about route * tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

You can * also use this operation to change which table is the main route table in the * VPC. Specify the main route table's association ID and the route table ID of the * new main route table.

See Also:

AWS * API Reference

*/ virtual Model::ReplaceRouteTableAssociationOutcome ReplaceRouteTableAssociation(const Model::ReplaceRouteTableAssociationRequest& request) const; /** *

Changes the route table associated with a given subnet, internet gateway, or * virtual private gateway in a VPC. After the operation completes, the subnet or * gateway uses the routes in the new route table. For more information about route * tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

You can * also use this operation to change which table is the main route table in the * VPC. Specify the main route table's association ID and the route table ID of the * new main route table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceRouteTableAssociationOutcomeCallable ReplaceRouteTableAssociationCallable(const Model::ReplaceRouteTableAssociationRequest& request) const; /** *

Changes the route table associated with a given subnet, internet gateway, or * virtual private gateway in a VPC. After the operation completes, the subnet or * gateway uses the routes in the new route table. For more information about route * tables, see Route * Tables in the Amazon Virtual Private Cloud User Guide.

You can * also use this operation to change which table is the main route table in the * VPC. Specify the main route table's association ID and the route table ID of the * new main route table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceRouteTableAssociationAsync(const Model::ReplaceRouteTableAssociationRequest& request, const ReplaceRouteTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Replaces the specified route in the specified transit gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::ReplaceTransitGatewayRouteOutcome ReplaceTransitGatewayRoute(const Model::ReplaceTransitGatewayRouteRequest& request) const; /** *

Replaces the specified route in the specified transit gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReplaceTransitGatewayRouteOutcomeCallable ReplaceTransitGatewayRouteCallable(const Model::ReplaceTransitGatewayRouteRequest& request) const; /** *

Replaces the specified route in the specified transit gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReplaceTransitGatewayRouteAsync(const Model::ReplaceTransitGatewayRouteRequest& request, const ReplaceTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Submits feedback about the status of an instance. The instance must be in the * running state. If your experience with the instance differs from * the instance status returned by DescribeInstanceStatus, use * ReportInstanceStatus to report your experience with the instance. Amazon * EC2 collects this information to improve the accuracy of status checks.

*

Use of this action does not change the value returned by * DescribeInstanceStatus.

See Also:

AWS * API Reference

*/ virtual Model::ReportInstanceStatusOutcome ReportInstanceStatus(const Model::ReportInstanceStatusRequest& request) const; /** *

Submits feedback about the status of an instance. The instance must be in the * running state. If your experience with the instance differs from * the instance status returned by DescribeInstanceStatus, use * ReportInstanceStatus to report your experience with the instance. Amazon * EC2 collects this information to improve the accuracy of status checks.

*

Use of this action does not change the value returned by * DescribeInstanceStatus.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ReportInstanceStatusOutcomeCallable ReportInstanceStatusCallable(const Model::ReportInstanceStatusRequest& request) const; /** *

Submits feedback about the status of an instance. The instance must be in the * running state. If your experience with the instance differs from * the instance status returned by DescribeInstanceStatus, use * ReportInstanceStatus to report your experience with the instance. Amazon * EC2 collects this information to improve the accuracy of status checks.

*

Use of this action does not change the value returned by * DescribeInstanceStatus.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ReportInstanceStatusAsync(const Model::ReportInstanceStatusRequest& request, const ReportInstanceStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Spot Fleet request.

The Spot Fleet request specifies the * total target capacity and the On-Demand target capacity. Amazon EC2 calculates * the difference between the total capacity and On-Demand capacity, and launches * the difference as Spot capacity.

You can submit a single request that * includes multiple launch specifications that vary by instance type, AMI, * Availability Zone, or subnet.

By default, the Spot Fleet requests Spot * Instances in the Spot Instance pool where the price per unit is the lowest. Each * launch specification can include its own instance weighting that reflects the * value of the instance type to your application workload.

Alternatively, * you can specify that the Spot Fleet distribute the target capacity across the * Spot pools included in its launch specifications. By ensuring that the Spot * Instances in your Spot Fleet are in different Spot pools, you can improve the * availability of your fleet.

You can specify tags for the Spot Fleet * request and instances launched by the fleet. You cannot tag other resource types * in a Spot Fleet request because only the spot-fleet-request and * instance resource types are supported.

For more information, * see Spot * Fleet requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

*/ virtual Model::RequestSpotFleetOutcome RequestSpotFleet(const Model::RequestSpotFleetRequest& request) const; /** *

Creates a Spot Fleet request.

The Spot Fleet request specifies the * total target capacity and the On-Demand target capacity. Amazon EC2 calculates * the difference between the total capacity and On-Demand capacity, and launches * the difference as Spot capacity.

You can submit a single request that * includes multiple launch specifications that vary by instance type, AMI, * Availability Zone, or subnet.

By default, the Spot Fleet requests Spot * Instances in the Spot Instance pool where the price per unit is the lowest. Each * launch specification can include its own instance weighting that reflects the * value of the instance type to your application workload.

Alternatively, * you can specify that the Spot Fleet distribute the target capacity across the * Spot pools included in its launch specifications. By ensuring that the Spot * Instances in your Spot Fleet are in different Spot pools, you can improve the * availability of your fleet.

You can specify tags for the Spot Fleet * request and instances launched by the fleet. You cannot tag other resource types * in a Spot Fleet request because only the spot-fleet-request and * instance resource types are supported.

For more information, * see Spot * Fleet requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RequestSpotFleetOutcomeCallable RequestSpotFleetCallable(const Model::RequestSpotFleetRequest& request) const; /** *

Creates a Spot Fleet request.

The Spot Fleet request specifies the * total target capacity and the On-Demand target capacity. Amazon EC2 calculates * the difference between the total capacity and On-Demand capacity, and launches * the difference as Spot capacity.

You can submit a single request that * includes multiple launch specifications that vary by instance type, AMI, * Availability Zone, or subnet.

By default, the Spot Fleet requests Spot * Instances in the Spot Instance pool where the price per unit is the lowest. Each * launch specification can include its own instance weighting that reflects the * value of the instance type to your application workload.

Alternatively, * you can specify that the Spot Fleet distribute the target capacity across the * Spot pools included in its launch specifications. By ensuring that the Spot * Instances in your Spot Fleet are in different Spot pools, you can improve the * availability of your fleet.

You can specify tags for the Spot Fleet * request and instances launched by the fleet. You cannot tag other resource types * in a Spot Fleet request because only the spot-fleet-request and * instance resource types are supported.

For more information, * see Spot * Fleet requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RequestSpotFleetAsync(const Model::RequestSpotFleetRequest& request, const RequestSpotFleetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Spot Instance request.

For more information, see Spot * Instance requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

*/ virtual Model::RequestSpotInstancesOutcome RequestSpotInstances(const Model::RequestSpotInstancesRequest& request) const; /** *

Creates a Spot Instance request.

For more information, see Spot * Instance requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RequestSpotInstancesOutcomeCallable RequestSpotInstancesCallable(const Model::RequestSpotInstancesRequest& request) const; /** *

Creates a Spot Instance request.

For more information, see Spot * Instance requests in the Amazon EC2 User Guide for Linux * Instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RequestSpotInstancesAsync(const Model::RequestSpotInstancesRequest& request, const RequestSpotInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets the default customer master key (CMK) for EBS encryption for your * account in this Region to the AWS managed CMK for EBS.

After resetting * the default CMK to the AWS managed CMK, you can continue to encrypt by a * customer managed CMK by specifying it when you create the volume. For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ResetEbsDefaultKmsKeyIdOutcome ResetEbsDefaultKmsKeyId(const Model::ResetEbsDefaultKmsKeyIdRequest& request) const; /** *

Resets the default customer master key (CMK) for EBS encryption for your * account in this Region to the AWS managed CMK for EBS.

After resetting * the default CMK to the AWS managed CMK, you can continue to encrypt by a * customer managed CMK by specifying it when you create the volume. For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetEbsDefaultKmsKeyIdOutcomeCallable ResetEbsDefaultKmsKeyIdCallable(const Model::ResetEbsDefaultKmsKeyIdRequest& request) const; /** *

Resets the default customer master key (CMK) for EBS encryption for your * account in this Region to the AWS managed CMK for EBS.

After resetting * the default CMK to the AWS managed CMK, you can continue to encrypt by a * customer managed CMK by specifying it when you create the volume. For more * information, see Amazon * EBS Encryption in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetEbsDefaultKmsKeyIdAsync(const Model::ResetEbsDefaultKmsKeyIdRequest& request, const ResetEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets the specified attribute of the specified Amazon FPGA Image (AFI) to * its default value. You can only reset the load permission * attribute.

See Also:

AWS * API Reference

*/ virtual Model::ResetFpgaImageAttributeOutcome ResetFpgaImageAttribute(const Model::ResetFpgaImageAttributeRequest& request) const; /** *

Resets the specified attribute of the specified Amazon FPGA Image (AFI) to * its default value. You can only reset the load permission * attribute.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetFpgaImageAttributeOutcomeCallable ResetFpgaImageAttributeCallable(const Model::ResetFpgaImageAttributeRequest& request) const; /** *

Resets the specified attribute of the specified Amazon FPGA Image (AFI) to * its default value. You can only reset the load permission * attribute.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetFpgaImageAttributeAsync(const Model::ResetFpgaImageAttributeRequest& request, const ResetFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets an attribute of an AMI to its default value.

The * productCodes attribute can't be reset.

See Also:

AWS * API Reference

*/ virtual Model::ResetImageAttributeOutcome ResetImageAttribute(const Model::ResetImageAttributeRequest& request) const; /** *

Resets an attribute of an AMI to its default value.

The * productCodes attribute can't be reset.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetImageAttributeOutcomeCallable ResetImageAttributeCallable(const Model::ResetImageAttributeRequest& request) const; /** *

Resets an attribute of an AMI to its default value.

The * productCodes attribute can't be reset.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetImageAttributeAsync(const Model::ResetImageAttributeRequest& request, const ResetImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets an attribute of an instance to its default value. To reset the * kernel or ramdisk, the instance must be in a stopped * state. To reset the sourceDestCheck, the instance can be either * running or stopped.

The sourceDestCheck attribute controls * whether source/destination checking is enabled. The default value is * true, which means checking is enabled. This value must be * false for a NAT instance to perform NAT. For more information, see * NAT * Instances in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ResetInstanceAttributeOutcome ResetInstanceAttribute(const Model::ResetInstanceAttributeRequest& request) const; /** *

Resets an attribute of an instance to its default value. To reset the * kernel or ramdisk, the instance must be in a stopped * state. To reset the sourceDestCheck, the instance can be either * running or stopped.

The sourceDestCheck attribute controls * whether source/destination checking is enabled. The default value is * true, which means checking is enabled. This value must be * false for a NAT instance to perform NAT. For more information, see * NAT * Instances in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetInstanceAttributeOutcomeCallable ResetInstanceAttributeCallable(const Model::ResetInstanceAttributeRequest& request) const; /** *

Resets an attribute of an instance to its default value. To reset the * kernel or ramdisk, the instance must be in a stopped * state. To reset the sourceDestCheck, the instance can be either * running or stopped.

The sourceDestCheck attribute controls * whether source/destination checking is enabled. The default value is * true, which means checking is enabled. This value must be * false for a NAT instance to perform NAT. For more information, see * NAT * Instances in the Amazon Virtual Private Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetInstanceAttributeAsync(const Model::ResetInstanceAttributeRequest& request, const ResetInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets a network interface attribute. You can specify only one attribute at a * time.

See Also:

AWS * API Reference

*/ virtual Model::ResetNetworkInterfaceAttributeOutcome ResetNetworkInterfaceAttribute(const Model::ResetNetworkInterfaceAttributeRequest& request) const; /** *

Resets a network interface attribute. You can specify only one attribute at a * time.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetNetworkInterfaceAttributeOutcomeCallable ResetNetworkInterfaceAttributeCallable(const Model::ResetNetworkInterfaceAttributeRequest& request) const; /** *

Resets a network interface attribute. You can specify only one attribute at a * time.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetNetworkInterfaceAttributeAsync(const Model::ResetNetworkInterfaceAttributeRequest& request, const ResetNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resets permission settings for the specified snapshot.

For more * information about modifying snapshot permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ResetSnapshotAttributeOutcome ResetSnapshotAttribute(const Model::ResetSnapshotAttributeRequest& request) const; /** *

Resets permission settings for the specified snapshot.

For more * information about modifying snapshot permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetSnapshotAttributeOutcomeCallable ResetSnapshotAttributeCallable(const Model::ResetSnapshotAttributeRequest& request) const; /** *

Resets permission settings for the specified snapshot.

For more * information about modifying snapshot permissions, see Sharing * snapshots in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetSnapshotAttributeAsync(const Model::ResetSnapshotAttributeRequest& request, const ResetSnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Restores an Elastic IP address that was previously moved to the EC2-VPC * platform back to the EC2-Classic platform. You cannot move an Elastic IP address * that was originally allocated for use in EC2-VPC. The Elastic IP address must * not be associated with an instance or network interface.

See * Also:

AWS * API Reference

*/ virtual Model::RestoreAddressToClassicOutcome RestoreAddressToClassic(const Model::RestoreAddressToClassicRequest& request) const; /** *

Restores an Elastic IP address that was previously moved to the EC2-VPC * platform back to the EC2-Classic platform. You cannot move an Elastic IP address * that was originally allocated for use in EC2-VPC. The Elastic IP address must * not be associated with an instance or network interface.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RestoreAddressToClassicOutcomeCallable RestoreAddressToClassicCallable(const Model::RestoreAddressToClassicRequest& request) const; /** *

Restores an Elastic IP address that was previously moved to the EC2-VPC * platform back to the EC2-Classic platform. You cannot move an Elastic IP address * that was originally allocated for use in EC2-VPC. The Elastic IP address must * not be associated with an instance or network interface.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RestoreAddressToClassicAsync(const Model::RestoreAddressToClassicRequest& request, const RestoreAddressToClassicResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Restores the entries from a previous version of a managed prefix list to a * new version of the prefix list.

See Also:

AWS * API Reference

*/ virtual Model::RestoreManagedPrefixListVersionOutcome RestoreManagedPrefixListVersion(const Model::RestoreManagedPrefixListVersionRequest& request) const; /** *

Restores the entries from a previous version of a managed prefix list to a * new version of the prefix list.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RestoreManagedPrefixListVersionOutcomeCallable RestoreManagedPrefixListVersionCallable(const Model::RestoreManagedPrefixListVersionRequest& request) const; /** *

Restores the entries from a previous version of a managed prefix list to a * new version of the prefix list.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RestoreManagedPrefixListVersionAsync(const Model::RestoreManagedPrefixListVersionRequest& request, const RestoreManagedPrefixListVersionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Removes an ingress authorization rule from a Client VPN endpoint. *

See Also:

AWS * API Reference

*/ virtual Model::RevokeClientVpnIngressOutcome RevokeClientVpnIngress(const Model::RevokeClientVpnIngressRequest& request) const; /** *

Removes an ingress authorization rule from a Client VPN endpoint. *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeClientVpnIngressOutcomeCallable RevokeClientVpnIngressCallable(const Model::RevokeClientVpnIngressRequest& request) const; /** *

Removes an ingress authorization rule from a Client VPN endpoint. *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeClientVpnIngressAsync(const Model::RevokeClientVpnIngressRequest& request, const RevokeClientVpnIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[VPC only] Removes the specified egress rules from a security group for * EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. To * remove a rule, the values that you specify (for example, ports) must match the * existing rule's values exactly.

Each rule consists of the protocol and * the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP * protocols, you must also specify the destination port or range of ports. For the * ICMP protocol, you must also specify the ICMP type and code. If the security * group rule has a description, you do not have to specify the description to * revoke the rule.

Rule changes are propagated to instances within the * security group as quickly as possible. However, a small delay might * occur.

See Also:

AWS * API Reference

*/ virtual Model::RevokeSecurityGroupEgressOutcome RevokeSecurityGroupEgress(const Model::RevokeSecurityGroupEgressRequest& request) const; /** *

[VPC only] Removes the specified egress rules from a security group for * EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. To * remove a rule, the values that you specify (for example, ports) must match the * existing rule's values exactly.

Each rule consists of the protocol and * the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP * protocols, you must also specify the destination port or range of ports. For the * ICMP protocol, you must also specify the ICMP type and code. If the security * group rule has a description, you do not have to specify the description to * revoke the rule.

Rule changes are propagated to instances within the * security group as quickly as possible. However, a small delay might * occur.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeSecurityGroupEgressOutcomeCallable RevokeSecurityGroupEgressCallable(const Model::RevokeSecurityGroupEgressRequest& request) const; /** *

[VPC only] Removes the specified egress rules from a security group for * EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. To * remove a rule, the values that you specify (for example, ports) must match the * existing rule's values exactly.

Each rule consists of the protocol and * the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP * protocols, you must also specify the destination port or range of ports. For the * ICMP protocol, you must also specify the ICMP type and code. If the security * group rule has a description, you do not have to specify the description to * revoke the rule.

Rule changes are propagated to instances within the * security group as quickly as possible. However, a small delay might * occur.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeSecurityGroupEgressAsync(const Model::RevokeSecurityGroupEgressRequest& request, const RevokeSecurityGroupEgressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Removes the specified ingress rules from a security group. To remove a rule, * the values that you specify (for example, ports) must match the existing rule's * values exactly.

[EC2-Classic only] If the values you specify do * not match the existing rule's values, no error is returned. Use * DescribeSecurityGroups to verify that the rule has been removed.

*

Each rule consists of the protocol and the CIDR range or source * security group. For the TCP and UDP protocols, you must also specify the * destination port or range of ports. For the ICMP protocol, you must also specify * the ICMP type and code. If the security group rule has a description, you do not * have to specify the description to revoke the rule.

Rule changes are * propagated to instances within the security group as quickly as possible. * However, a small delay might occur.

See Also:

AWS * API Reference

*/ virtual Model::RevokeSecurityGroupIngressOutcome RevokeSecurityGroupIngress(const Model::RevokeSecurityGroupIngressRequest& request) const; /** *

Removes the specified ingress rules from a security group. To remove a rule, * the values that you specify (for example, ports) must match the existing rule's * values exactly.

[EC2-Classic only] If the values you specify do * not match the existing rule's values, no error is returned. Use * DescribeSecurityGroups to verify that the rule has been removed.

*

Each rule consists of the protocol and the CIDR range or source * security group. For the TCP and UDP protocols, you must also specify the * destination port or range of ports. For the ICMP protocol, you must also specify * the ICMP type and code. If the security group rule has a description, you do not * have to specify the description to revoke the rule.

Rule changes are * propagated to instances within the security group as quickly as possible. * However, a small delay might occur.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeSecurityGroupIngressOutcomeCallable RevokeSecurityGroupIngressCallable(const Model::RevokeSecurityGroupIngressRequest& request) const; /** *

Removes the specified ingress rules from a security group. To remove a rule, * the values that you specify (for example, ports) must match the existing rule's * values exactly.

[EC2-Classic only] If the values you specify do * not match the existing rule's values, no error is returned. Use * DescribeSecurityGroups to verify that the rule has been removed.

*

Each rule consists of the protocol and the CIDR range or source * security group. For the TCP and UDP protocols, you must also specify the * destination port or range of ports. For the ICMP protocol, you must also specify * the ICMP type and code. If the security group rule has a description, you do not * have to specify the description to revoke the rule.

Rule changes are * propagated to instances within the security group as quickly as possible. * However, a small delay might occur.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeSecurityGroupIngressAsync(const Model::RevokeSecurityGroupIngressRequest& request, const RevokeSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Launches the specified number of instances using an AMI for which you have * permissions.

You can specify a number of options, or leave the default * options. The following rules apply:

  • [EC2-VPC] If you don't * specify a subnet ID, we choose a default subnet from your default VPC for you. * If you don't have a default VPC, you must specify a subnet ID in the * request.

  • [EC2-Classic] If don't specify an Availability Zone, * we choose one for you.

  • Some instance types must be launched * into a VPC. If you do not have a default VPC, or if you do not specify a subnet * ID, the request fails. For more information, see Instance * types available only in a VPC.

  • [EC2-VPC] All instances * have a network interface with a primary private IPv4 address. If you don't * specify this address, we choose one from the IPv4 range of your subnet.

    *
  • Not all instance types support IPv6 addresses. For more * information, see Instance * types.

  • If you don't specify a security group ID, we use * the default security group. For more information, see Security * groups.

  • If any of the AMIs have a product code attached * for which the user has not subscribed, the request fails.

You * can create a launch * template, which is a resource that contains the parameters to launch an * instance. When you launch an instance using RunInstances, you can specify * the launch template instead of specifying the launch parameters.

To * ensure faster instance launches, break up large requests into smaller batches. * For example, create five separate launch requests for 100 instances each instead * of one launch request for 500 instances.

An instance is ready for you to * use when it's in the running state. You can check the state of your * instance using DescribeInstances. You can tag instances and EBS volumes * during launch, after launch, or both. For more information, see * CreateTags and Tagging * your Amazon EC2 resources.

Linux instances have access to the public * key of the key pair at boot. You can use this key to provide secure access to * the instance. Amazon EC2 public images use this feature to provide secure access * without passwords. For more information, see Key * pairs in the Amazon Elastic Compute Cloud User Guide.

For * troubleshooting, see What * to do if an instance immediately terminates, and Troubleshooting * connecting to your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::RunInstancesOutcome RunInstances(const Model::RunInstancesRequest& request) const; /** *

Launches the specified number of instances using an AMI for which you have * permissions.

You can specify a number of options, or leave the default * options. The following rules apply:

  • [EC2-VPC] If you don't * specify a subnet ID, we choose a default subnet from your default VPC for you. * If you don't have a default VPC, you must specify a subnet ID in the * request.

  • [EC2-Classic] If don't specify an Availability Zone, * we choose one for you.

  • Some instance types must be launched * into a VPC. If you do not have a default VPC, or if you do not specify a subnet * ID, the request fails. For more information, see Instance * types available only in a VPC.

  • [EC2-VPC] All instances * have a network interface with a primary private IPv4 address. If you don't * specify this address, we choose one from the IPv4 range of your subnet.

    *
  • Not all instance types support IPv6 addresses. For more * information, see Instance * types.

  • If you don't specify a security group ID, we use * the default security group. For more information, see Security * groups.

  • If any of the AMIs have a product code attached * for which the user has not subscribed, the request fails.

You * can create a launch * template, which is a resource that contains the parameters to launch an * instance. When you launch an instance using RunInstances, you can specify * the launch template instead of specifying the launch parameters.

To * ensure faster instance launches, break up large requests into smaller batches. * For example, create five separate launch requests for 100 instances each instead * of one launch request for 500 instances.

An instance is ready for you to * use when it's in the running state. You can check the state of your * instance using DescribeInstances. You can tag instances and EBS volumes * during launch, after launch, or both. For more information, see * CreateTags and Tagging * your Amazon EC2 resources.

Linux instances have access to the public * key of the key pair at boot. You can use this key to provide secure access to * the instance. Amazon EC2 public images use this feature to provide secure access * without passwords. For more information, see Key * pairs in the Amazon Elastic Compute Cloud User Guide.

For * troubleshooting, see What * to do if an instance immediately terminates, and Troubleshooting * connecting to your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RunInstancesOutcomeCallable RunInstancesCallable(const Model::RunInstancesRequest& request) const; /** *

Launches the specified number of instances using an AMI for which you have * permissions.

You can specify a number of options, or leave the default * options. The following rules apply:

  • [EC2-VPC] If you don't * specify a subnet ID, we choose a default subnet from your default VPC for you. * If you don't have a default VPC, you must specify a subnet ID in the * request.

  • [EC2-Classic] If don't specify an Availability Zone, * we choose one for you.

  • Some instance types must be launched * into a VPC. If you do not have a default VPC, or if you do not specify a subnet * ID, the request fails. For more information, see Instance * types available only in a VPC.

  • [EC2-VPC] All instances * have a network interface with a primary private IPv4 address. If you don't * specify this address, we choose one from the IPv4 range of your subnet.

    *
  • Not all instance types support IPv6 addresses. For more * information, see Instance * types.

  • If you don't specify a security group ID, we use * the default security group. For more information, see Security * groups.

  • If any of the AMIs have a product code attached * for which the user has not subscribed, the request fails.

You * can create a launch * template, which is a resource that contains the parameters to launch an * instance. When you launch an instance using RunInstances, you can specify * the launch template instead of specifying the launch parameters.

To * ensure faster instance launches, break up large requests into smaller batches. * For example, create five separate launch requests for 100 instances each instead * of one launch request for 500 instances.

An instance is ready for you to * use when it's in the running state. You can check the state of your * instance using DescribeInstances. You can tag instances and EBS volumes * during launch, after launch, or both. For more information, see * CreateTags and Tagging * your Amazon EC2 resources.

Linux instances have access to the public * key of the key pair at boot. You can use this key to provide secure access to * the instance. Amazon EC2 public images use this feature to provide secure access * without passwords. For more information, see Key * pairs in the Amazon Elastic Compute Cloud User Guide.

For * troubleshooting, see What * to do if an instance immediately terminates, and Troubleshooting * connecting to your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RunInstancesAsync(const Model::RunInstancesRequest& request, const RunInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Launches the specified Scheduled Instances.

Before you can launch a * Scheduled Instance, you must purchase it and obtain an identifier using * PurchaseScheduledInstances.

You must launch a Scheduled Instance * during its scheduled time period. You can't stop or reboot a Scheduled Instance, * but you can terminate it as needed. If you terminate a Scheduled Instance before * the current scheduled time period ends, you can launch it again after a few * minutes. For more information, see Scheduled * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::RunScheduledInstancesOutcome RunScheduledInstances(const Model::RunScheduledInstancesRequest& request) const; /** *

Launches the specified Scheduled Instances.

Before you can launch a * Scheduled Instance, you must purchase it and obtain an identifier using * PurchaseScheduledInstances.

You must launch a Scheduled Instance * during its scheduled time period. You can't stop or reboot a Scheduled Instance, * but you can terminate it as needed. If you terminate a Scheduled Instance before * the current scheduled time period ends, you can launch it again after a few * minutes. For more information, see Scheduled * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RunScheduledInstancesOutcomeCallable RunScheduledInstancesCallable(const Model::RunScheduledInstancesRequest& request) const; /** *

Launches the specified Scheduled Instances.

Before you can launch a * Scheduled Instance, you must purchase it and obtain an identifier using * PurchaseScheduledInstances.

You must launch a Scheduled Instance * during its scheduled time period. You can't stop or reboot a Scheduled Instance, * but you can terminate it as needed. If you terminate a Scheduled Instance before * the current scheduled time period ends, you can launch it again after a few * minutes. For more information, see Scheduled * Instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RunScheduledInstancesAsync(const Model::RunScheduledInstancesRequest& request, const RunScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Searches for routes in the specified local gateway route table.

See * Also:

AWS * API Reference

*/ virtual Model::SearchLocalGatewayRoutesOutcome SearchLocalGatewayRoutes(const Model::SearchLocalGatewayRoutesRequest& request) const; /** *

Searches for routes in the specified local gateway route table.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::SearchLocalGatewayRoutesOutcomeCallable SearchLocalGatewayRoutesCallable(const Model::SearchLocalGatewayRoutesRequest& request) const; /** *

Searches for routes in the specified local gateway route table.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void SearchLocalGatewayRoutesAsync(const Model::SearchLocalGatewayRoutesRequest& request, const SearchLocalGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Searches one or more transit gateway multicast groups and returns the group * membership information.

See Also:

AWS * API Reference

*/ virtual Model::SearchTransitGatewayMulticastGroupsOutcome SearchTransitGatewayMulticastGroups(const Model::SearchTransitGatewayMulticastGroupsRequest& request) const; /** *

Searches one or more transit gateway multicast groups and returns the group * membership information.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::SearchTransitGatewayMulticastGroupsOutcomeCallable SearchTransitGatewayMulticastGroupsCallable(const Model::SearchTransitGatewayMulticastGroupsRequest& request) const; /** *

Searches one or more transit gateway multicast groups and returns the group * membership information.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void SearchTransitGatewayMulticastGroupsAsync(const Model::SearchTransitGatewayMulticastGroupsRequest& request, const SearchTransitGatewayMulticastGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Searches for routes in the specified transit gateway route * table.

See Also:

AWS * API Reference

*/ virtual Model::SearchTransitGatewayRoutesOutcome SearchTransitGatewayRoutes(const Model::SearchTransitGatewayRoutesRequest& request) const; /** *

Searches for routes in the specified transit gateway route * table.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::SearchTransitGatewayRoutesOutcomeCallable SearchTransitGatewayRoutesCallable(const Model::SearchTransitGatewayRoutesRequest& request) const; /** *

Searches for routes in the specified transit gateway route * table.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void SearchTransitGatewayRoutesAsync(const Model::SearchTransitGatewayRoutesRequest& request, const SearchTransitGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger * a kernel panic (on Linux instances), or a blue screen/stop * error (on Windows instances). For instances based on Intel and AMD * processors, the interrupt is received as a non-maskable interrupt * (NMI).

In general, the operating system crashes and reboots when a kernel * panic or stop error is triggered. The operating system can also be configured to * perform diagnostic tasks, such as generating a memory dump file, loading a * secondary kernel, or obtaining a call trace.

Before sending a diagnostic * interrupt to your instance, ensure that its operating system is configured to * perform the required diagnostic tasks.

For more information about * configuring your operating system to generate a crash dump when a kernel panic * or stop error occurs, see Send * a diagnostic interrupt (Linux instances) or Send * a Diagnostic Interrupt (Windows instances).

See Also:

AWS * API Reference

*/ virtual Model::SendDiagnosticInterruptOutcome SendDiagnosticInterrupt(const Model::SendDiagnosticInterruptRequest& request) const; /** *

Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger * a kernel panic (on Linux instances), or a blue screen/stop * error (on Windows instances). For instances based on Intel and AMD * processors, the interrupt is received as a non-maskable interrupt * (NMI).

In general, the operating system crashes and reboots when a kernel * panic or stop error is triggered. The operating system can also be configured to * perform diagnostic tasks, such as generating a memory dump file, loading a * secondary kernel, or obtaining a call trace.

Before sending a diagnostic * interrupt to your instance, ensure that its operating system is configured to * perform the required diagnostic tasks.

For more information about * configuring your operating system to generate a crash dump when a kernel panic * or stop error occurs, see Send * a diagnostic interrupt (Linux instances) or Send * a Diagnostic Interrupt (Windows instances).

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::SendDiagnosticInterruptOutcomeCallable SendDiagnosticInterruptCallable(const Model::SendDiagnosticInterruptRequest& request) const; /** *

Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger * a kernel panic (on Linux instances), or a blue screen/stop * error (on Windows instances). For instances based on Intel and AMD * processors, the interrupt is received as a non-maskable interrupt * (NMI).

In general, the operating system crashes and reboots when a kernel * panic or stop error is triggered. The operating system can also be configured to * perform diagnostic tasks, such as generating a memory dump file, loading a * secondary kernel, or obtaining a call trace.

Before sending a diagnostic * interrupt to your instance, ensure that its operating system is configured to * perform the required diagnostic tasks.

For more information about * configuring your operating system to generate a crash dump when a kernel panic * or stop error occurs, see Send * a diagnostic interrupt (Linux instances) or Send * a Diagnostic Interrupt (Windows instances).

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void SendDiagnosticInterruptAsync(const Model::SendDiagnosticInterruptRequest& request, const SendDiagnosticInterruptResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Starts an Amazon EBS-backed instance that you've previously stopped.

*

Instances that use Amazon EBS volumes as their root devices can be quickly * stopped and started. When an instance is stopped, the compute resources are * released and you are not billed for instance usage. However, your root partition * Amazon EBS volume remains and continues to persist your data, and you are * charged for Amazon EBS volume usage. You can restart your instance at any time. * Every time you start your Windows instance, Amazon EC2 charges you for a full * instance hour. If you stop and restart your Windows instance, a new instance * hour begins and Amazon EC2 charges you for another full instance hour even if * you are still within the same 60-minute period when it was stopped. Every time * you start your Linux instance, Amazon EC2 charges a one-minute minimum for * instance usage, and thereafter charges per second for instance usage.

*

Before stopping an instance, make sure it is in a state from which it can be * restarted. Stopping an instance does not preserve data stored in RAM.

*

Performing this operation on an instance that uses an instance store as its * root device returns an error.

For more information, see Stopping * instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::StartInstancesOutcome StartInstances(const Model::StartInstancesRequest& request) const; /** *

Starts an Amazon EBS-backed instance that you've previously stopped.

*

Instances that use Amazon EBS volumes as their root devices can be quickly * stopped and started. When an instance is stopped, the compute resources are * released and you are not billed for instance usage. However, your root partition * Amazon EBS volume remains and continues to persist your data, and you are * charged for Amazon EBS volume usage. You can restart your instance at any time. * Every time you start your Windows instance, Amazon EC2 charges you for a full * instance hour. If you stop and restart your Windows instance, a new instance * hour begins and Amazon EC2 charges you for another full instance hour even if * you are still within the same 60-minute period when it was stopped. Every time * you start your Linux instance, Amazon EC2 charges a one-minute minimum for * instance usage, and thereafter charges per second for instance usage.

*

Before stopping an instance, make sure it is in a state from which it can be * restarted. Stopping an instance does not preserve data stored in RAM.

*

Performing this operation on an instance that uses an instance store as its * root device returns an error.

For more information, see Stopping * instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StartInstancesOutcomeCallable StartInstancesCallable(const Model::StartInstancesRequest& request) const; /** *

Starts an Amazon EBS-backed instance that you've previously stopped.

*

Instances that use Amazon EBS volumes as their root devices can be quickly * stopped and started. When an instance is stopped, the compute resources are * released and you are not billed for instance usage. However, your root partition * Amazon EBS volume remains and continues to persist your data, and you are * charged for Amazon EBS volume usage. You can restart your instance at any time. * Every time you start your Windows instance, Amazon EC2 charges you for a full * instance hour. If you stop and restart your Windows instance, a new instance * hour begins and Amazon EC2 charges you for another full instance hour even if * you are still within the same 60-minute period when it was stopped. Every time * you start your Linux instance, Amazon EC2 charges a one-minute minimum for * instance usage, and thereafter charges per second for instance usage.

*

Before stopping an instance, make sure it is in a state from which it can be * restarted. Stopping an instance does not preserve data stored in RAM.

*

Performing this operation on an instance that uses an instance store as its * root device returns an error.

For more information, see Stopping * instances in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StartInstancesAsync(const Model::StartInstancesRequest& request, const StartInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Initiates the verification process to prove that the service provider owns * the private DNS name domain for the endpoint service.

The service * provider must successfully perform the verification before the consumer can use * the name to access the service.

Before the service provider runs this * command, they must add a record to the DNS server. For more information, see Adding * a TXT Record to Your Domain's DNS Server in the Amazon VPC User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::StartVpcEndpointServicePrivateDnsVerificationOutcome StartVpcEndpointServicePrivateDnsVerification(const Model::StartVpcEndpointServicePrivateDnsVerificationRequest& request) const; /** *

Initiates the verification process to prove that the service provider owns * the private DNS name domain for the endpoint service.

The service * provider must successfully perform the verification before the consumer can use * the name to access the service.

Before the service provider runs this * command, they must add a record to the DNS server. For more information, see Adding * a TXT Record to Your Domain's DNS Server in the Amazon VPC User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StartVpcEndpointServicePrivateDnsVerificationOutcomeCallable StartVpcEndpointServicePrivateDnsVerificationCallable(const Model::StartVpcEndpointServicePrivateDnsVerificationRequest& request) const; /** *

Initiates the verification process to prove that the service provider owns * the private DNS name domain for the endpoint service.

The service * provider must successfully perform the verification before the consumer can use * the name to access the service.

Before the service provider runs this * command, they must add a record to the DNS server. For more information, see Adding * a TXT Record to Your Domain's DNS Server in the Amazon VPC User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StartVpcEndpointServicePrivateDnsVerificationAsync(const Model::StartVpcEndpointServicePrivateDnsVerificationRequest& request, const StartVpcEndpointServicePrivateDnsVerificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Stops an Amazon EBS-backed instance.

You can use the Stop action to * hibernate an instance if the instance is enabled * for hibernation and it meets the hibernation * prerequisites. For more information, see Hibernate * your instance in the Amazon Elastic Compute Cloud User Guide.

*

We don't charge usage for a stopped instance, or data transfer fees; however, * your root partition Amazon EBS volume remains and continues to persist your * data, and you are charged for Amazon EBS volume usage. Every time you start your * Windows instance, Amazon EC2 charges you for a full instance hour. If you stop * and restart your Windows instance, a new instance hour begins and Amazon EC2 * charges you for another full instance hour even if you are still within the same * 60-minute period when it was stopped. Every time you start your Linux instance, * Amazon EC2 charges a one-minute minimum for instance usage, and thereafter * charges per second for instance usage.

You can't stop or hibernate * instance store-backed instances. You can't use the Stop action to hibernate Spot * Instances, but you can specify that Amazon EC2 should hibernate Spot Instances * when they are interrupted. For more information, see Hibernating * interrupted Spot Instances in the Amazon Elastic Compute Cloud User * Guide.

When you stop or hibernate an instance, we shut it down. You * can restart your instance at any time. Before stopping or hibernating an * instance, make sure it is in a state from which it can be restarted. Stopping an * instance does not preserve data stored in RAM, but hibernating an instance does * preserve data stored in RAM. If an instance cannot hibernate successfully, a * normal shutdown occurs.

Stopping and hibernating an instance is different * to rebooting or terminating it. For example, when you stop or hibernate an * instance, the root device and any other devices attached to the instance * persist. When you terminate an instance, the root device and any other devices * attached during the instance launch are automatically deleted. For more * information about the differences between rebooting, stopping, hibernating, and * terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

When * you stop an instance, we attempt to shut it down forcibly after a short while. * If your instance appears stuck in the stopping state after a period of time, * there may be an issue with the underlying host computer. For more information, * see Troubleshooting * stopping your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::StopInstancesOutcome StopInstances(const Model::StopInstancesRequest& request) const; /** *

Stops an Amazon EBS-backed instance.

You can use the Stop action to * hibernate an instance if the instance is enabled * for hibernation and it meets the hibernation * prerequisites. For more information, see Hibernate * your instance in the Amazon Elastic Compute Cloud User Guide.

*

We don't charge usage for a stopped instance, or data transfer fees; however, * your root partition Amazon EBS volume remains and continues to persist your * data, and you are charged for Amazon EBS volume usage. Every time you start your * Windows instance, Amazon EC2 charges you for a full instance hour. If you stop * and restart your Windows instance, a new instance hour begins and Amazon EC2 * charges you for another full instance hour even if you are still within the same * 60-minute period when it was stopped. Every time you start your Linux instance, * Amazon EC2 charges a one-minute minimum for instance usage, and thereafter * charges per second for instance usage.

You can't stop or hibernate * instance store-backed instances. You can't use the Stop action to hibernate Spot * Instances, but you can specify that Amazon EC2 should hibernate Spot Instances * when they are interrupted. For more information, see Hibernating * interrupted Spot Instances in the Amazon Elastic Compute Cloud User * Guide.

When you stop or hibernate an instance, we shut it down. You * can restart your instance at any time. Before stopping or hibernating an * instance, make sure it is in a state from which it can be restarted. Stopping an * instance does not preserve data stored in RAM, but hibernating an instance does * preserve data stored in RAM. If an instance cannot hibernate successfully, a * normal shutdown occurs.

Stopping and hibernating an instance is different * to rebooting or terminating it. For example, when you stop or hibernate an * instance, the root device and any other devices attached to the instance * persist. When you terminate an instance, the root device and any other devices * attached during the instance launch are automatically deleted. For more * information about the differences between rebooting, stopping, hibernating, and * terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

When * you stop an instance, we attempt to shut it down forcibly after a short while. * If your instance appears stuck in the stopping state after a period of time, * there may be an issue with the underlying host computer. For more information, * see Troubleshooting * stopping your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StopInstancesOutcomeCallable StopInstancesCallable(const Model::StopInstancesRequest& request) const; /** *

Stops an Amazon EBS-backed instance.

You can use the Stop action to * hibernate an instance if the instance is enabled * for hibernation and it meets the hibernation * prerequisites. For more information, see Hibernate * your instance in the Amazon Elastic Compute Cloud User Guide.

*

We don't charge usage for a stopped instance, or data transfer fees; however, * your root partition Amazon EBS volume remains and continues to persist your * data, and you are charged for Amazon EBS volume usage. Every time you start your * Windows instance, Amazon EC2 charges you for a full instance hour. If you stop * and restart your Windows instance, a new instance hour begins and Amazon EC2 * charges you for another full instance hour even if you are still within the same * 60-minute period when it was stopped. Every time you start your Linux instance, * Amazon EC2 charges a one-minute minimum for instance usage, and thereafter * charges per second for instance usage.

You can't stop or hibernate * instance store-backed instances. You can't use the Stop action to hibernate Spot * Instances, but you can specify that Amazon EC2 should hibernate Spot Instances * when they are interrupted. For more information, see Hibernating * interrupted Spot Instances in the Amazon Elastic Compute Cloud User * Guide.

When you stop or hibernate an instance, we shut it down. You * can restart your instance at any time. Before stopping or hibernating an * instance, make sure it is in a state from which it can be restarted. Stopping an * instance does not preserve data stored in RAM, but hibernating an instance does * preserve data stored in RAM. If an instance cannot hibernate successfully, a * normal shutdown occurs.

Stopping and hibernating an instance is different * to rebooting or terminating it. For example, when you stop or hibernate an * instance, the root device and any other devices attached to the instance * persist. When you terminate an instance, the root device and any other devices * attached during the instance launch are automatically deleted. For more * information about the differences between rebooting, stopping, hibernating, and * terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

When * you stop an instance, we attempt to shut it down forcibly after a short while. * If your instance appears stuck in the stopping state after a period of time, * there may be an issue with the underlying host computer. For more information, * see Troubleshooting * stopping your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StopInstancesAsync(const Model::StopInstancesRequest& request, const StopInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Terminates active Client VPN endpoint connections. This action can be used to * terminate a specific client connection, or up to five connections established by * a specific user.

See Also:

AWS * API Reference

*/ virtual Model::TerminateClientVpnConnectionsOutcome TerminateClientVpnConnections(const Model::TerminateClientVpnConnectionsRequest& request) const; /** *

Terminates active Client VPN endpoint connections. This action can be used to * terminate a specific client connection, or up to five connections established by * a specific user.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::TerminateClientVpnConnectionsOutcomeCallable TerminateClientVpnConnectionsCallable(const Model::TerminateClientVpnConnectionsRequest& request) const; /** *

Terminates active Client VPN endpoint connections. This action can be used to * terminate a specific client connection, or up to five connections established by * a specific user.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void TerminateClientVpnConnectionsAsync(const Model::TerminateClientVpnConnectionsRequest& request, const TerminateClientVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Shuts down the specified instances. This operation is idempotent; if you * terminate an instance more than once, each call succeeds.

If you specify * multiple instances and the request fails (for example, because of a single * incorrect instance ID), none of the instances are terminated.

Terminated * instances remain visible after termination (for approximately one hour).

*

By default, Amazon EC2 deletes all EBS volumes that were attached when the * instance launched. Volumes attached after instance launch continue running.

*

You can stop, start, and terminate EBS-backed instances. You can only * terminate instance store-backed instances. What happens to an instance differs * if you stop it or terminate it. For example, when you stop an instance, the root * device and any other devices attached to the instance persist. When you * terminate an instance, any attached EBS volumes with the * DeleteOnTermination block device mapping parameter set to * true are automatically deleted. For more information about the * differences between stopping and terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

For * more information about troubleshooting, see Troubleshooting * terminating your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::TerminateInstancesOutcome TerminateInstances(const Model::TerminateInstancesRequest& request) const; /** *

Shuts down the specified instances. This operation is idempotent; if you * terminate an instance more than once, each call succeeds.

If you specify * multiple instances and the request fails (for example, because of a single * incorrect instance ID), none of the instances are terminated.

Terminated * instances remain visible after termination (for approximately one hour).

*

By default, Amazon EC2 deletes all EBS volumes that were attached when the * instance launched. Volumes attached after instance launch continue running.

*

You can stop, start, and terminate EBS-backed instances. You can only * terminate instance store-backed instances. What happens to an instance differs * if you stop it or terminate it. For example, when you stop an instance, the root * device and any other devices attached to the instance persist. When you * terminate an instance, any attached EBS volumes with the * DeleteOnTermination block device mapping parameter set to * true are automatically deleted. For more information about the * differences between stopping and terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

For * more information about troubleshooting, see Troubleshooting * terminating your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::TerminateInstancesOutcomeCallable TerminateInstancesCallable(const Model::TerminateInstancesRequest& request) const; /** *

Shuts down the specified instances. This operation is idempotent; if you * terminate an instance more than once, each call succeeds.

If you specify * multiple instances and the request fails (for example, because of a single * incorrect instance ID), none of the instances are terminated.

Terminated * instances remain visible after termination (for approximately one hour).

*

By default, Amazon EC2 deletes all EBS volumes that were attached when the * instance launched. Volumes attached after instance launch continue running.

*

You can stop, start, and terminate EBS-backed instances. You can only * terminate instance store-backed instances. What happens to an instance differs * if you stop it or terminate it. For example, when you stop an instance, the root * device and any other devices attached to the instance persist. When you * terminate an instance, any attached EBS volumes with the * DeleteOnTermination block device mapping parameter set to * true are automatically deleted. For more information about the * differences between stopping and terminating instances, see Instance * lifecycle in the Amazon Elastic Compute Cloud User Guide.

For * more information about troubleshooting, see Troubleshooting * terminating your instance in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void TerminateInstancesAsync(const Model::TerminateInstancesRequest& request, const TerminateInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Unassigns one or more IPv6 addresses from a network interface.

See * Also:

AWS * API Reference

*/ virtual Model::UnassignIpv6AddressesOutcome UnassignIpv6Addresses(const Model::UnassignIpv6AddressesRequest& request) const; /** *

Unassigns one or more IPv6 addresses from a network interface.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UnassignIpv6AddressesOutcomeCallable UnassignIpv6AddressesCallable(const Model::UnassignIpv6AddressesRequest& request) const; /** *

Unassigns one or more IPv6 addresses from a network interface.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UnassignIpv6AddressesAsync(const Model::UnassignIpv6AddressesRequest& request, const UnassignIpv6AddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Unassigns one or more secondary private IP addresses from a network * interface.

See Also:

AWS * API Reference

*/ virtual Model::UnassignPrivateIpAddressesOutcome UnassignPrivateIpAddresses(const Model::UnassignPrivateIpAddressesRequest& request) const; /** *

Unassigns one or more secondary private IP addresses from a network * interface.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UnassignPrivateIpAddressesOutcomeCallable UnassignPrivateIpAddressesCallable(const Model::UnassignPrivateIpAddressesRequest& request) const; /** *

Unassigns one or more secondary private IP addresses from a network * interface.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UnassignPrivateIpAddressesAsync(const Model::UnassignPrivateIpAddressesRequest& request, const UnassignPrivateIpAddressesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables detailed monitoring for a running instance. For more information, * see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

*/ virtual Model::UnmonitorInstancesOutcome UnmonitorInstances(const Model::UnmonitorInstancesRequest& request) const; /** *

Disables detailed monitoring for a running instance. For more information, * see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UnmonitorInstancesOutcomeCallable UnmonitorInstancesCallable(const Model::UnmonitorInstancesRequest& request) const; /** *

Disables detailed monitoring for a running instance. For more information, * see Monitoring * your instances and volumes in the Amazon Elastic Compute Cloud User * Guide.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UnmonitorInstancesAsync(const Model::UnmonitorInstancesRequest& request, const UnmonitorInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

[VPC only] Updates the description of an egress (outbound) security group * rule. You can replace an existing description, or add a description to a rule * that did not have one previously.

You specify the description as part of * the IP permissions structure. You can remove a description for a security group * rule by omitting the description parameter in the request.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateSecurityGroupRuleDescriptionsEgressOutcome UpdateSecurityGroupRuleDescriptionsEgress(const Model::UpdateSecurityGroupRuleDescriptionsEgressRequest& request) const; /** *

[VPC only] Updates the description of an egress (outbound) security group * rule. You can replace an existing description, or add a description to a rule * that did not have one previously.

You specify the description as part of * the IP permissions structure. You can remove a description for a security group * rule by omitting the description parameter in the request.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateSecurityGroupRuleDescriptionsEgressOutcomeCallable UpdateSecurityGroupRuleDescriptionsEgressCallable(const Model::UpdateSecurityGroupRuleDescriptionsEgressRequest& request) const; /** *

[VPC only] Updates the description of an egress (outbound) security group * rule. You can replace an existing description, or add a description to a rule * that did not have one previously.

You specify the description as part of * the IP permissions structure. You can remove a description for a security group * rule by omitting the description parameter in the request.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateSecurityGroupRuleDescriptionsEgressAsync(const Model::UpdateSecurityGroupRuleDescriptionsEgressRequest& request, const UpdateSecurityGroupRuleDescriptionsEgressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates the description of an ingress (inbound) security group rule. You can * replace an existing description, or add a description to a rule that did not * have one previously.

You specify the description as part of the IP * permissions structure. You can remove a description for a security group rule by * omitting the description parameter in the request.

See Also:

AWS * API Reference

*/ virtual Model::UpdateSecurityGroupRuleDescriptionsIngressOutcome UpdateSecurityGroupRuleDescriptionsIngress(const Model::UpdateSecurityGroupRuleDescriptionsIngressRequest& request) const; /** *

Updates the description of an ingress (inbound) security group rule. You can * replace an existing description, or add a description to a rule that did not * have one previously.

You specify the description as part of the IP * permissions structure. You can remove a description for a security group rule by * omitting the description parameter in the request.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateSecurityGroupRuleDescriptionsIngressOutcomeCallable UpdateSecurityGroupRuleDescriptionsIngressCallable(const Model::UpdateSecurityGroupRuleDescriptionsIngressRequest& request) const; /** *

Updates the description of an ingress (inbound) security group rule. You can * replace an existing description, or add a description to a rule that did not * have one previously.

You specify the description as part of the IP * permissions structure. You can remove a description for a security group rule by * omitting the description parameter in the request.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateSecurityGroupRuleDescriptionsIngressAsync(const Model::UpdateSecurityGroupRuleDescriptionsIngressRequest& request, const UpdateSecurityGroupRuleDescriptionsIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Stops advertising an address range that is provisioned as an address * pool.

You can perform this operation at most once every 10 seconds, even * if you specify different address ranges each time.

It can take a few * minutes before traffic to the specified addresses stops routing to AWS because * of BGP propagation delays.

See Also:

AWS * API Reference

*/ virtual Model::WithdrawByoipCidrOutcome WithdrawByoipCidr(const Model::WithdrawByoipCidrRequest& request) const; /** *

Stops advertising an address range that is provisioned as an address * pool.

You can perform this operation at most once every 10 seconds, even * if you specify different address ranges each time.

It can take a few * minutes before traffic to the specified addresses stops routing to AWS because * of BGP propagation delays.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::WithdrawByoipCidrOutcomeCallable WithdrawByoipCidrCallable(const Model::WithdrawByoipCidrRequest& request) const; /** *

Stops advertising an address range that is provisioned as an address * pool.

You can perform this operation at most once every 10 seconds, even * if you specify different address ranges each time.

It can take a few * minutes before traffic to the specified addresses stops routing to AWS because * of BGP propagation delays.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void WithdrawByoipCidrAsync(const Model::WithdrawByoipCidrRequest& request, const WithdrawByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void AcceptReservedInstancesExchangeQuoteAsyncHelper(const Model::AcceptReservedInstancesExchangeQuoteRequest& request, const AcceptReservedInstancesExchangeQuoteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AcceptTransitGatewayPeeringAttachmentAsyncHelper(const Model::AcceptTransitGatewayPeeringAttachmentRequest& request, const AcceptTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AcceptTransitGatewayVpcAttachmentAsyncHelper(const Model::AcceptTransitGatewayVpcAttachmentRequest& request, const AcceptTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AcceptVpcEndpointConnectionsAsyncHelper(const Model::AcceptVpcEndpointConnectionsRequest& request, const AcceptVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AcceptVpcPeeringConnectionAsyncHelper(const Model::AcceptVpcPeeringConnectionRequest& request, const AcceptVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AdvertiseByoipCidrAsyncHelper(const Model::AdvertiseByoipCidrRequest& request, const AdvertiseByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AllocateAddressAsyncHelper(const Model::AllocateAddressRequest& request, const AllocateAddressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AllocateHostsAsyncHelper(const Model::AllocateHostsRequest& request, const AllocateHostsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ApplySecurityGroupsToClientVpnTargetNetworkAsyncHelper(const Model::ApplySecurityGroupsToClientVpnTargetNetworkRequest& request, const ApplySecurityGroupsToClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssignIpv6AddressesAsyncHelper(const Model::AssignIpv6AddressesRequest& request, const AssignIpv6AddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssignPrivateIpAddressesAsyncHelper(const Model::AssignPrivateIpAddressesRequest& request, const AssignPrivateIpAddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateAddressAsyncHelper(const Model::AssociateAddressRequest& request, const AssociateAddressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateClientVpnTargetNetworkAsyncHelper(const Model::AssociateClientVpnTargetNetworkRequest& request, const AssociateClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateDhcpOptionsAsyncHelper(const Model::AssociateDhcpOptionsRequest& request, const AssociateDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateIamInstanceProfileAsyncHelper(const Model::AssociateIamInstanceProfileRequest& request, const AssociateIamInstanceProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateRouteTableAsyncHelper(const Model::AssociateRouteTableRequest& request, const AssociateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateSubnetCidrBlockAsyncHelper(const Model::AssociateSubnetCidrBlockRequest& request, const AssociateSubnetCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateTransitGatewayMulticastDomainAsyncHelper(const Model::AssociateTransitGatewayMulticastDomainRequest& request, const AssociateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateTransitGatewayRouteTableAsyncHelper(const Model::AssociateTransitGatewayRouteTableRequest& request, const AssociateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateVpcCidrBlockAsyncHelper(const Model::AssociateVpcCidrBlockRequest& request, const AssociateVpcCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AttachClassicLinkVpcAsyncHelper(const Model::AttachClassicLinkVpcRequest& request, const AttachClassicLinkVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AttachInternetGatewayAsyncHelper(const Model::AttachInternetGatewayRequest& request, const AttachInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AttachNetworkInterfaceAsyncHelper(const Model::AttachNetworkInterfaceRequest& request, const AttachNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AttachVolumeAsyncHelper(const Model::AttachVolumeRequest& request, const AttachVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AttachVpnGatewayAsyncHelper(const Model::AttachVpnGatewayRequest& request, const AttachVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeClientVpnIngressAsyncHelper(const Model::AuthorizeClientVpnIngressRequest& request, const AuthorizeClientVpnIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeSecurityGroupEgressAsyncHelper(const Model::AuthorizeSecurityGroupEgressRequest& request, const AuthorizeSecurityGroupEgressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeSecurityGroupIngressAsyncHelper(const Model::AuthorizeSecurityGroupIngressRequest& request, const AuthorizeSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BundleInstanceAsyncHelper(const Model::BundleInstanceRequest& request, const BundleInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelBundleTaskAsyncHelper(const Model::CancelBundleTaskRequest& request, const CancelBundleTaskResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelCapacityReservationAsyncHelper(const Model::CancelCapacityReservationRequest& request, const CancelCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelConversionTaskAsyncHelper(const Model::CancelConversionTaskRequest& request, const CancelConversionTaskResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelExportTaskAsyncHelper(const Model::CancelExportTaskRequest& request, const CancelExportTaskResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelImportTaskAsyncHelper(const Model::CancelImportTaskRequest& request, const CancelImportTaskResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelReservedInstancesListingAsyncHelper(const Model::CancelReservedInstancesListingRequest& request, const CancelReservedInstancesListingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelSpotFleetRequestsAsyncHelper(const Model::CancelSpotFleetRequestsRequest& request, const CancelSpotFleetRequestsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelSpotInstanceRequestsAsyncHelper(const Model::CancelSpotInstanceRequestsRequest& request, const CancelSpotInstanceRequestsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ConfirmProductInstanceAsyncHelper(const Model::ConfirmProductInstanceRequest& request, const ConfirmProductInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CopyFpgaImageAsyncHelper(const Model::CopyFpgaImageRequest& request, const CopyFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CopyImageAsyncHelper(const Model::CopyImageRequest& request, const CopyImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CopySnapshotAsyncHelper(const Model::CopySnapshotRequest& request, const CopySnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateCapacityReservationAsyncHelper(const Model::CreateCapacityReservationRequest& request, const CreateCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateCarrierGatewayAsyncHelper(const Model::CreateCarrierGatewayRequest& request, const CreateCarrierGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClientVpnEndpointAsyncHelper(const Model::CreateClientVpnEndpointRequest& request, const CreateClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClientVpnRouteAsyncHelper(const Model::CreateClientVpnRouteRequest& request, const CreateClientVpnRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateCustomerGatewayAsyncHelper(const Model::CreateCustomerGatewayRequest& request, const CreateCustomerGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDefaultSubnetAsyncHelper(const Model::CreateDefaultSubnetRequest& request, const CreateDefaultSubnetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDefaultVpcAsyncHelper(const Model::CreateDefaultVpcRequest& request, const CreateDefaultVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDhcpOptionsAsyncHelper(const Model::CreateDhcpOptionsRequest& request, const CreateDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateEgressOnlyInternetGatewayAsyncHelper(const Model::CreateEgressOnlyInternetGatewayRequest& request, const CreateEgressOnlyInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateFleetAsyncHelper(const Model::CreateFleetRequest& request, const CreateFleetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateFlowLogsAsyncHelper(const Model::CreateFlowLogsRequest& request, const CreateFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateFpgaImageAsyncHelper(const Model::CreateFpgaImageRequest& request, const CreateFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateImageAsyncHelper(const Model::CreateImageRequest& request, const CreateImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateInstanceExportTaskAsyncHelper(const Model::CreateInstanceExportTaskRequest& request, const CreateInstanceExportTaskResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateInternetGatewayAsyncHelper(const Model::CreateInternetGatewayRequest& request, const CreateInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateKeyPairAsyncHelper(const Model::CreateKeyPairRequest& request, const CreateKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateLaunchTemplateAsyncHelper(const Model::CreateLaunchTemplateRequest& request, const CreateLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateLaunchTemplateVersionAsyncHelper(const Model::CreateLaunchTemplateVersionRequest& request, const CreateLaunchTemplateVersionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateLocalGatewayRouteAsyncHelper(const Model::CreateLocalGatewayRouteRequest& request, const CreateLocalGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateLocalGatewayRouteTableVpcAssociationAsyncHelper(const Model::CreateLocalGatewayRouteTableVpcAssociationRequest& request, const CreateLocalGatewayRouteTableVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateManagedPrefixListAsyncHelper(const Model::CreateManagedPrefixListRequest& request, const CreateManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateNatGatewayAsyncHelper(const Model::CreateNatGatewayRequest& request, const CreateNatGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateNetworkAclAsyncHelper(const Model::CreateNetworkAclRequest& request, const CreateNetworkAclResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateNetworkAclEntryAsyncHelper(const Model::CreateNetworkAclEntryRequest& request, const CreateNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateNetworkInterfaceAsyncHelper(const Model::CreateNetworkInterfaceRequest& request, const CreateNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateNetworkInterfacePermissionAsyncHelper(const Model::CreateNetworkInterfacePermissionRequest& request, const CreateNetworkInterfacePermissionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreatePlacementGroupAsyncHelper(const Model::CreatePlacementGroupRequest& request, const CreatePlacementGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateReservedInstancesListingAsyncHelper(const Model::CreateReservedInstancesListingRequest& request, const CreateReservedInstancesListingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateRouteAsyncHelper(const Model::CreateRouteRequest& request, const CreateRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateRouteTableAsyncHelper(const Model::CreateRouteTableRequest& request, const CreateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSecurityGroupAsyncHelper(const Model::CreateSecurityGroupRequest& request, const CreateSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSnapshotAsyncHelper(const Model::CreateSnapshotRequest& request, const CreateSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSnapshotsAsyncHelper(const Model::CreateSnapshotsRequest& request, const CreateSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSpotDatafeedSubscriptionAsyncHelper(const Model::CreateSpotDatafeedSubscriptionRequest& request, const CreateSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSubnetAsyncHelper(const Model::CreateSubnetRequest& request, const CreateSubnetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTagsAsyncHelper(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTrafficMirrorFilterAsyncHelper(const Model::CreateTrafficMirrorFilterRequest& request, const CreateTrafficMirrorFilterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTrafficMirrorFilterRuleAsyncHelper(const Model::CreateTrafficMirrorFilterRuleRequest& request, const CreateTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTrafficMirrorSessionAsyncHelper(const Model::CreateTrafficMirrorSessionRequest& request, const CreateTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTrafficMirrorTargetAsyncHelper(const Model::CreateTrafficMirrorTargetRequest& request, const CreateTrafficMirrorTargetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayAsyncHelper(const Model::CreateTransitGatewayRequest& request, const CreateTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayMulticastDomainAsyncHelper(const Model::CreateTransitGatewayMulticastDomainRequest& request, const CreateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayPeeringAttachmentAsyncHelper(const Model::CreateTransitGatewayPeeringAttachmentRequest& request, const CreateTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayPrefixListReferenceAsyncHelper(const Model::CreateTransitGatewayPrefixListReferenceRequest& request, const CreateTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayRouteAsyncHelper(const Model::CreateTransitGatewayRouteRequest& request, const CreateTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayRouteTableAsyncHelper(const Model::CreateTransitGatewayRouteTableRequest& request, const CreateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTransitGatewayVpcAttachmentAsyncHelper(const Model::CreateTransitGatewayVpcAttachmentRequest& request, const CreateTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVolumeAsyncHelper(const Model::CreateVolumeRequest& request, const CreateVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpcAsyncHelper(const Model::CreateVpcRequest& request, const CreateVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpcEndpointAsyncHelper(const Model::CreateVpcEndpointRequest& request, const CreateVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpcEndpointConnectionNotificationAsyncHelper(const Model::CreateVpcEndpointConnectionNotificationRequest& request, const CreateVpcEndpointConnectionNotificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpcEndpointServiceConfigurationAsyncHelper(const Model::CreateVpcEndpointServiceConfigurationRequest& request, const CreateVpcEndpointServiceConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpcPeeringConnectionAsyncHelper(const Model::CreateVpcPeeringConnectionRequest& request, const CreateVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpnConnectionAsyncHelper(const Model::CreateVpnConnectionRequest& request, const CreateVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpnConnectionRouteAsyncHelper(const Model::CreateVpnConnectionRouteRequest& request, const CreateVpnConnectionRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateVpnGatewayAsyncHelper(const Model::CreateVpnGatewayRequest& request, const CreateVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteCarrierGatewayAsyncHelper(const Model::DeleteCarrierGatewayRequest& request, const DeleteCarrierGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClientVpnEndpointAsyncHelper(const Model::DeleteClientVpnEndpointRequest& request, const DeleteClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClientVpnRouteAsyncHelper(const Model::DeleteClientVpnRouteRequest& request, const DeleteClientVpnRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteCustomerGatewayAsyncHelper(const Model::DeleteCustomerGatewayRequest& request, const DeleteCustomerGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteDhcpOptionsAsyncHelper(const Model::DeleteDhcpOptionsRequest& request, const DeleteDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteEgressOnlyInternetGatewayAsyncHelper(const Model::DeleteEgressOnlyInternetGatewayRequest& request, const DeleteEgressOnlyInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteFleetsAsyncHelper(const Model::DeleteFleetsRequest& request, const DeleteFleetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteFlowLogsAsyncHelper(const Model::DeleteFlowLogsRequest& request, const DeleteFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteFpgaImageAsyncHelper(const Model::DeleteFpgaImageRequest& request, const DeleteFpgaImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteInternetGatewayAsyncHelper(const Model::DeleteInternetGatewayRequest& request, const DeleteInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteKeyPairAsyncHelper(const Model::DeleteKeyPairRequest& request, const DeleteKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteLaunchTemplateAsyncHelper(const Model::DeleteLaunchTemplateRequest& request, const DeleteLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteLaunchTemplateVersionsAsyncHelper(const Model::DeleteLaunchTemplateVersionsRequest& request, const DeleteLaunchTemplateVersionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteLocalGatewayRouteAsyncHelper(const Model::DeleteLocalGatewayRouteRequest& request, const DeleteLocalGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteLocalGatewayRouteTableVpcAssociationAsyncHelper(const Model::DeleteLocalGatewayRouteTableVpcAssociationRequest& request, const DeleteLocalGatewayRouteTableVpcAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteManagedPrefixListAsyncHelper(const Model::DeleteManagedPrefixListRequest& request, const DeleteManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteNatGatewayAsyncHelper(const Model::DeleteNatGatewayRequest& request, const DeleteNatGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteNetworkAclAsyncHelper(const Model::DeleteNetworkAclRequest& request, const DeleteNetworkAclResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteNetworkAclEntryAsyncHelper(const Model::DeleteNetworkAclEntryRequest& request, const DeleteNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteNetworkInterfaceAsyncHelper(const Model::DeleteNetworkInterfaceRequest& request, const DeleteNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteNetworkInterfacePermissionAsyncHelper(const Model::DeleteNetworkInterfacePermissionRequest& request, const DeleteNetworkInterfacePermissionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeletePlacementGroupAsyncHelper(const Model::DeletePlacementGroupRequest& request, const DeletePlacementGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteQueuedReservedInstancesAsyncHelper(const Model::DeleteQueuedReservedInstancesRequest& request, const DeleteQueuedReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteRouteAsyncHelper(const Model::DeleteRouteRequest& request, const DeleteRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteRouteTableAsyncHelper(const Model::DeleteRouteTableRequest& request, const DeleteRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSecurityGroupAsyncHelper(const Model::DeleteSecurityGroupRequest& request, const DeleteSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSnapshotAsyncHelper(const Model::DeleteSnapshotRequest& request, const DeleteSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSpotDatafeedSubscriptionAsyncHelper(const Model::DeleteSpotDatafeedSubscriptionRequest& request, const DeleteSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSubnetAsyncHelper(const Model::DeleteSubnetRequest& request, const DeleteSubnetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTagsAsyncHelper(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTrafficMirrorFilterAsyncHelper(const Model::DeleteTrafficMirrorFilterRequest& request, const DeleteTrafficMirrorFilterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTrafficMirrorFilterRuleAsyncHelper(const Model::DeleteTrafficMirrorFilterRuleRequest& request, const DeleteTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTrafficMirrorSessionAsyncHelper(const Model::DeleteTrafficMirrorSessionRequest& request, const DeleteTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTrafficMirrorTargetAsyncHelper(const Model::DeleteTrafficMirrorTargetRequest& request, const DeleteTrafficMirrorTargetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayAsyncHelper(const Model::DeleteTransitGatewayRequest& request, const DeleteTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayMulticastDomainAsyncHelper(const Model::DeleteTransitGatewayMulticastDomainRequest& request, const DeleteTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayPeeringAttachmentAsyncHelper(const Model::DeleteTransitGatewayPeeringAttachmentRequest& request, const DeleteTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayPrefixListReferenceAsyncHelper(const Model::DeleteTransitGatewayPrefixListReferenceRequest& request, const DeleteTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayRouteAsyncHelper(const Model::DeleteTransitGatewayRouteRequest& request, const DeleteTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayRouteTableAsyncHelper(const Model::DeleteTransitGatewayRouteTableRequest& request, const DeleteTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTransitGatewayVpcAttachmentAsyncHelper(const Model::DeleteTransitGatewayVpcAttachmentRequest& request, const DeleteTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVolumeAsyncHelper(const Model::DeleteVolumeRequest& request, const DeleteVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpcAsyncHelper(const Model::DeleteVpcRequest& request, const DeleteVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpcEndpointConnectionNotificationsAsyncHelper(const Model::DeleteVpcEndpointConnectionNotificationsRequest& request, const DeleteVpcEndpointConnectionNotificationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpcEndpointServiceConfigurationsAsyncHelper(const Model::DeleteVpcEndpointServiceConfigurationsRequest& request, const DeleteVpcEndpointServiceConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpcEndpointsAsyncHelper(const Model::DeleteVpcEndpointsRequest& request, const DeleteVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpcPeeringConnectionAsyncHelper(const Model::DeleteVpcPeeringConnectionRequest& request, const DeleteVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpnConnectionAsyncHelper(const Model::DeleteVpnConnectionRequest& request, const DeleteVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpnConnectionRouteAsyncHelper(const Model::DeleteVpnConnectionRouteRequest& request, const DeleteVpnConnectionRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteVpnGatewayAsyncHelper(const Model::DeleteVpnGatewayRequest& request, const DeleteVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeprovisionByoipCidrAsyncHelper(const Model::DeprovisionByoipCidrRequest& request, const DeprovisionByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeregisterImageAsyncHelper(const Model::DeregisterImageRequest& request, const DeregisterImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeregisterInstanceEventNotificationAttributesAsyncHelper(const Model::DeregisterInstanceEventNotificationAttributesRequest& request, const DeregisterInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeregisterTransitGatewayMulticastGroupMembersAsyncHelper(const Model::DeregisterTransitGatewayMulticastGroupMembersRequest& request, const DeregisterTransitGatewayMulticastGroupMembersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeregisterTransitGatewayMulticastGroupSourcesAsyncHelper(const Model::DeregisterTransitGatewayMulticastGroupSourcesRequest& request, const DeregisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAccountAttributesAsyncHelper(const Model::DescribeAccountAttributesRequest& request, const DescribeAccountAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAddressesAsyncHelper(const Model::DescribeAddressesRequest& request, const DescribeAddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAggregateIdFormatAsyncHelper(const Model::DescribeAggregateIdFormatRequest& request, const DescribeAggregateIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAvailabilityZonesAsyncHelper(const Model::DescribeAvailabilityZonesRequest& request, const DescribeAvailabilityZonesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeBundleTasksAsyncHelper(const Model::DescribeBundleTasksRequest& request, const DescribeBundleTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeByoipCidrsAsyncHelper(const Model::DescribeByoipCidrsRequest& request, const DescribeByoipCidrsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeCapacityReservationsAsyncHelper(const Model::DescribeCapacityReservationsRequest& request, const DescribeCapacityReservationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeCarrierGatewaysAsyncHelper(const Model::DescribeCarrierGatewaysRequest& request, const DescribeCarrierGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClassicLinkInstancesAsyncHelper(const Model::DescribeClassicLinkInstancesRequest& request, const DescribeClassicLinkInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClientVpnAuthorizationRulesAsyncHelper(const Model::DescribeClientVpnAuthorizationRulesRequest& request, const DescribeClientVpnAuthorizationRulesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClientVpnConnectionsAsyncHelper(const Model::DescribeClientVpnConnectionsRequest& request, const DescribeClientVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClientVpnEndpointsAsyncHelper(const Model::DescribeClientVpnEndpointsRequest& request, const DescribeClientVpnEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClientVpnRoutesAsyncHelper(const Model::DescribeClientVpnRoutesRequest& request, const DescribeClientVpnRoutesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClientVpnTargetNetworksAsyncHelper(const Model::DescribeClientVpnTargetNetworksRequest& request, const DescribeClientVpnTargetNetworksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeCoipPoolsAsyncHelper(const Model::DescribeCoipPoolsRequest& request, const DescribeCoipPoolsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeConversionTasksAsyncHelper(const Model::DescribeConversionTasksRequest& request, const DescribeConversionTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeCustomerGatewaysAsyncHelper(const Model::DescribeCustomerGatewaysRequest& request, const DescribeCustomerGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeDhcpOptionsAsyncHelper(const Model::DescribeDhcpOptionsRequest& request, const DescribeDhcpOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEgressOnlyInternetGatewaysAsyncHelper(const Model::DescribeEgressOnlyInternetGatewaysRequest& request, const DescribeEgressOnlyInternetGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeElasticGpusAsyncHelper(const Model::DescribeElasticGpusRequest& request, const DescribeElasticGpusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeExportImageTasksAsyncHelper(const Model::DescribeExportImageTasksRequest& request, const DescribeExportImageTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeExportTasksAsyncHelper(const Model::DescribeExportTasksRequest& request, const DescribeExportTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFastSnapshotRestoresAsyncHelper(const Model::DescribeFastSnapshotRestoresRequest& request, const DescribeFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFleetHistoryAsyncHelper(const Model::DescribeFleetHistoryRequest& request, const DescribeFleetHistoryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFleetInstancesAsyncHelper(const Model::DescribeFleetInstancesRequest& request, const DescribeFleetInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFleetsAsyncHelper(const Model::DescribeFleetsRequest& request, const DescribeFleetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFlowLogsAsyncHelper(const Model::DescribeFlowLogsRequest& request, const DescribeFlowLogsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFpgaImageAttributeAsyncHelper(const Model::DescribeFpgaImageAttributeRequest& request, const DescribeFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeFpgaImagesAsyncHelper(const Model::DescribeFpgaImagesRequest& request, const DescribeFpgaImagesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeHostReservationOfferingsAsyncHelper(const Model::DescribeHostReservationOfferingsRequest& request, const DescribeHostReservationOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeHostReservationsAsyncHelper(const Model::DescribeHostReservationsRequest& request, const DescribeHostReservationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeHostsAsyncHelper(const Model::DescribeHostsRequest& request, const DescribeHostsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeIamInstanceProfileAssociationsAsyncHelper(const Model::DescribeIamInstanceProfileAssociationsRequest& request, const DescribeIamInstanceProfileAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeIdFormatAsyncHelper(const Model::DescribeIdFormatRequest& request, const DescribeIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeIdentityIdFormatAsyncHelper(const Model::DescribeIdentityIdFormatRequest& request, const DescribeIdentityIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeImageAttributeAsyncHelper(const Model::DescribeImageAttributeRequest& request, const DescribeImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeImagesAsyncHelper(const Model::DescribeImagesRequest& request, const DescribeImagesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeImportImageTasksAsyncHelper(const Model::DescribeImportImageTasksRequest& request, const DescribeImportImageTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeImportSnapshotTasksAsyncHelper(const Model::DescribeImportSnapshotTasksRequest& request, const DescribeImportSnapshotTasksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceAttributeAsyncHelper(const Model::DescribeInstanceAttributeRequest& request, const DescribeInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceCreditSpecificationsAsyncHelper(const Model::DescribeInstanceCreditSpecificationsRequest& request, const DescribeInstanceCreditSpecificationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceEventNotificationAttributesAsyncHelper(const Model::DescribeInstanceEventNotificationAttributesRequest& request, const DescribeInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceStatusAsyncHelper(const Model::DescribeInstanceStatusRequest& request, const DescribeInstanceStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceTypeOfferingsAsyncHelper(const Model::DescribeInstanceTypeOfferingsRequest& request, const DescribeInstanceTypeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstanceTypesAsyncHelper(const Model::DescribeInstanceTypesRequest& request, const DescribeInstanceTypesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInstancesAsyncHelper(const Model::DescribeInstancesRequest& request, const DescribeInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeInternetGatewaysAsyncHelper(const Model::DescribeInternetGatewaysRequest& request, const DescribeInternetGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeIpv6PoolsAsyncHelper(const Model::DescribeIpv6PoolsRequest& request, const DescribeIpv6PoolsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeKeyPairsAsyncHelper(const Model::DescribeKeyPairsRequest& request, const DescribeKeyPairsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLaunchTemplateVersionsAsyncHelper(const Model::DescribeLaunchTemplateVersionsRequest& request, const DescribeLaunchTemplateVersionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLaunchTemplatesAsyncHelper(const Model::DescribeLaunchTemplatesRequest& request, const DescribeLaunchTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsAsyncHelper(const Model::DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest& request, const DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewayRouteTableVpcAssociationsAsyncHelper(const Model::DescribeLocalGatewayRouteTableVpcAssociationsRequest& request, const DescribeLocalGatewayRouteTableVpcAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewayRouteTablesAsyncHelper(const Model::DescribeLocalGatewayRouteTablesRequest& request, const DescribeLocalGatewayRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewayVirtualInterfaceGroupsAsyncHelper(const Model::DescribeLocalGatewayVirtualInterfaceGroupsRequest& request, const DescribeLocalGatewayVirtualInterfaceGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewayVirtualInterfacesAsyncHelper(const Model::DescribeLocalGatewayVirtualInterfacesRequest& request, const DescribeLocalGatewayVirtualInterfacesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLocalGatewaysAsyncHelper(const Model::DescribeLocalGatewaysRequest& request, const DescribeLocalGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeManagedPrefixListsAsyncHelper(const Model::DescribeManagedPrefixListsRequest& request, const DescribeManagedPrefixListsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeMovingAddressesAsyncHelper(const Model::DescribeMovingAddressesRequest& request, const DescribeMovingAddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNatGatewaysAsyncHelper(const Model::DescribeNatGatewaysRequest& request, const DescribeNatGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNetworkAclsAsyncHelper(const Model::DescribeNetworkAclsRequest& request, const DescribeNetworkAclsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNetworkInterfaceAttributeAsyncHelper(const Model::DescribeNetworkInterfaceAttributeRequest& request, const DescribeNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNetworkInterfacePermissionsAsyncHelper(const Model::DescribeNetworkInterfacePermissionsRequest& request, const DescribeNetworkInterfacePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNetworkInterfacesAsyncHelper(const Model::DescribeNetworkInterfacesRequest& request, const DescribeNetworkInterfacesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribePlacementGroupsAsyncHelper(const Model::DescribePlacementGroupsRequest& request, const DescribePlacementGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribePrefixListsAsyncHelper(const Model::DescribePrefixListsRequest& request, const DescribePrefixListsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribePrincipalIdFormatAsyncHelper(const Model::DescribePrincipalIdFormatRequest& request, const DescribePrincipalIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribePublicIpv4PoolsAsyncHelper(const Model::DescribePublicIpv4PoolsRequest& request, const DescribePublicIpv4PoolsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeRegionsAsyncHelper(const Model::DescribeRegionsRequest& request, const DescribeRegionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedInstancesAsyncHelper(const Model::DescribeReservedInstancesRequest& request, const DescribeReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedInstancesListingsAsyncHelper(const Model::DescribeReservedInstancesListingsRequest& request, const DescribeReservedInstancesListingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedInstancesModificationsAsyncHelper(const Model::DescribeReservedInstancesModificationsRequest& request, const DescribeReservedInstancesModificationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedInstancesOfferingsAsyncHelper(const Model::DescribeReservedInstancesOfferingsRequest& request, const DescribeReservedInstancesOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeRouteTablesAsyncHelper(const Model::DescribeRouteTablesRequest& request, const DescribeRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeScheduledInstanceAvailabilityAsyncHelper(const Model::DescribeScheduledInstanceAvailabilityRequest& request, const DescribeScheduledInstanceAvailabilityResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeScheduledInstancesAsyncHelper(const Model::DescribeScheduledInstancesRequest& request, const DescribeScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSecurityGroupReferencesAsyncHelper(const Model::DescribeSecurityGroupReferencesRequest& request, const DescribeSecurityGroupReferencesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSecurityGroupsAsyncHelper(const Model::DescribeSecurityGroupsRequest& request, const DescribeSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSnapshotAttributeAsyncHelper(const Model::DescribeSnapshotAttributeRequest& request, const DescribeSnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSnapshotsAsyncHelper(const Model::DescribeSnapshotsRequest& request, const DescribeSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotDatafeedSubscriptionAsyncHelper(const Model::DescribeSpotDatafeedSubscriptionRequest& request, const DescribeSpotDatafeedSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotFleetInstancesAsyncHelper(const Model::DescribeSpotFleetInstancesRequest& request, const DescribeSpotFleetInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotFleetRequestHistoryAsyncHelper(const Model::DescribeSpotFleetRequestHistoryRequest& request, const DescribeSpotFleetRequestHistoryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotFleetRequestsAsyncHelper(const Model::DescribeSpotFleetRequestsRequest& request, const DescribeSpotFleetRequestsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotInstanceRequestsAsyncHelper(const Model::DescribeSpotInstanceRequestsRequest& request, const DescribeSpotInstanceRequestsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSpotPriceHistoryAsyncHelper(const Model::DescribeSpotPriceHistoryRequest& request, const DescribeSpotPriceHistoryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeStaleSecurityGroupsAsyncHelper(const Model::DescribeStaleSecurityGroupsRequest& request, const DescribeStaleSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSubnetsAsyncHelper(const Model::DescribeSubnetsRequest& request, const DescribeSubnetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTagsAsyncHelper(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTrafficMirrorFiltersAsyncHelper(const Model::DescribeTrafficMirrorFiltersRequest& request, const DescribeTrafficMirrorFiltersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTrafficMirrorSessionsAsyncHelper(const Model::DescribeTrafficMirrorSessionsRequest& request, const DescribeTrafficMirrorSessionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTrafficMirrorTargetsAsyncHelper(const Model::DescribeTrafficMirrorTargetsRequest& request, const DescribeTrafficMirrorTargetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewayAttachmentsAsyncHelper(const Model::DescribeTransitGatewayAttachmentsRequest& request, const DescribeTransitGatewayAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewayMulticastDomainsAsyncHelper(const Model::DescribeTransitGatewayMulticastDomainsRequest& request, const DescribeTransitGatewayMulticastDomainsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewayPeeringAttachmentsAsyncHelper(const Model::DescribeTransitGatewayPeeringAttachmentsRequest& request, const DescribeTransitGatewayPeeringAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewayRouteTablesAsyncHelper(const Model::DescribeTransitGatewayRouteTablesRequest& request, const DescribeTransitGatewayRouteTablesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewayVpcAttachmentsAsyncHelper(const Model::DescribeTransitGatewayVpcAttachmentsRequest& request, const DescribeTransitGatewayVpcAttachmentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTransitGatewaysAsyncHelper(const Model::DescribeTransitGatewaysRequest& request, const DescribeTransitGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVolumeAttributeAsyncHelper(const Model::DescribeVolumeAttributeRequest& request, const DescribeVolumeAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVolumeStatusAsyncHelper(const Model::DescribeVolumeStatusRequest& request, const DescribeVolumeStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVolumesAsyncHelper(const Model::DescribeVolumesRequest& request, const DescribeVolumesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVolumesModificationsAsyncHelper(const Model::DescribeVolumesModificationsRequest& request, const DescribeVolumesModificationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcAttributeAsyncHelper(const Model::DescribeVpcAttributeRequest& request, const DescribeVpcAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcClassicLinkAsyncHelper(const Model::DescribeVpcClassicLinkRequest& request, const DescribeVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcClassicLinkDnsSupportAsyncHelper(const Model::DescribeVpcClassicLinkDnsSupportRequest& request, const DescribeVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointConnectionNotificationsAsyncHelper(const Model::DescribeVpcEndpointConnectionNotificationsRequest& request, const DescribeVpcEndpointConnectionNotificationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointConnectionsAsyncHelper(const Model::DescribeVpcEndpointConnectionsRequest& request, const DescribeVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointServiceConfigurationsAsyncHelper(const Model::DescribeVpcEndpointServiceConfigurationsRequest& request, const DescribeVpcEndpointServiceConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointServicePermissionsAsyncHelper(const Model::DescribeVpcEndpointServicePermissionsRequest& request, const DescribeVpcEndpointServicePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointServicesAsyncHelper(const Model::DescribeVpcEndpointServicesRequest& request, const DescribeVpcEndpointServicesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcEndpointsAsyncHelper(const Model::DescribeVpcEndpointsRequest& request, const DescribeVpcEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcPeeringConnectionsAsyncHelper(const Model::DescribeVpcPeeringConnectionsRequest& request, const DescribeVpcPeeringConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpcsAsyncHelper(const Model::DescribeVpcsRequest& request, const DescribeVpcsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpnConnectionsAsyncHelper(const Model::DescribeVpnConnectionsRequest& request, const DescribeVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeVpnGatewaysAsyncHelper(const Model::DescribeVpnGatewaysRequest& request, const DescribeVpnGatewaysResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetachClassicLinkVpcAsyncHelper(const Model::DetachClassicLinkVpcRequest& request, const DetachClassicLinkVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetachInternetGatewayAsyncHelper(const Model::DetachInternetGatewayRequest& request, const DetachInternetGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetachNetworkInterfaceAsyncHelper(const Model::DetachNetworkInterfaceRequest& request, const DetachNetworkInterfaceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetachVolumeAsyncHelper(const Model::DetachVolumeRequest& request, const DetachVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetachVpnGatewayAsyncHelper(const Model::DetachVpnGatewayRequest& request, const DetachVpnGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableEbsEncryptionByDefaultAsyncHelper(const Model::DisableEbsEncryptionByDefaultRequest& request, const DisableEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableFastSnapshotRestoresAsyncHelper(const Model::DisableFastSnapshotRestoresRequest& request, const DisableFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableTransitGatewayRouteTablePropagationAsyncHelper(const Model::DisableTransitGatewayRouteTablePropagationRequest& request, const DisableTransitGatewayRouteTablePropagationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableVgwRoutePropagationAsyncHelper(const Model::DisableVgwRoutePropagationRequest& request, const DisableVgwRoutePropagationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableVpcClassicLinkAsyncHelper(const Model::DisableVpcClassicLinkRequest& request, const DisableVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableVpcClassicLinkDnsSupportAsyncHelper(const Model::DisableVpcClassicLinkDnsSupportRequest& request, const DisableVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateAddressAsyncHelper(const Model::DisassociateAddressRequest& request, const DisassociateAddressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateClientVpnTargetNetworkAsyncHelper(const Model::DisassociateClientVpnTargetNetworkRequest& request, const DisassociateClientVpnTargetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateIamInstanceProfileAsyncHelper(const Model::DisassociateIamInstanceProfileRequest& request, const DisassociateIamInstanceProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateRouteTableAsyncHelper(const Model::DisassociateRouteTableRequest& request, const DisassociateRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateSubnetCidrBlockAsyncHelper(const Model::DisassociateSubnetCidrBlockRequest& request, const DisassociateSubnetCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateTransitGatewayMulticastDomainAsyncHelper(const Model::DisassociateTransitGatewayMulticastDomainRequest& request, const DisassociateTransitGatewayMulticastDomainResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateTransitGatewayRouteTableAsyncHelper(const Model::DisassociateTransitGatewayRouteTableRequest& request, const DisassociateTransitGatewayRouteTableResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateVpcCidrBlockAsyncHelper(const Model::DisassociateVpcCidrBlockRequest& request, const DisassociateVpcCidrBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableEbsEncryptionByDefaultAsyncHelper(const Model::EnableEbsEncryptionByDefaultRequest& request, const EnableEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableFastSnapshotRestoresAsyncHelper(const Model::EnableFastSnapshotRestoresRequest& request, const EnableFastSnapshotRestoresResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableTransitGatewayRouteTablePropagationAsyncHelper(const Model::EnableTransitGatewayRouteTablePropagationRequest& request, const EnableTransitGatewayRouteTablePropagationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableVgwRoutePropagationAsyncHelper(const Model::EnableVgwRoutePropagationRequest& request, const EnableVgwRoutePropagationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableVolumeIOAsyncHelper(const Model::EnableVolumeIORequest& request, const EnableVolumeIOResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableVpcClassicLinkAsyncHelper(const Model::EnableVpcClassicLinkRequest& request, const EnableVpcClassicLinkResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableVpcClassicLinkDnsSupportAsyncHelper(const Model::EnableVpcClassicLinkDnsSupportRequest& request, const EnableVpcClassicLinkDnsSupportResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ExportClientVpnClientCertificateRevocationListAsyncHelper(const Model::ExportClientVpnClientCertificateRevocationListRequest& request, const ExportClientVpnClientCertificateRevocationListResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ExportClientVpnClientConfigurationAsyncHelper(const Model::ExportClientVpnClientConfigurationRequest& request, const ExportClientVpnClientConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ExportImageAsyncHelper(const Model::ExportImageRequest& request, const ExportImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ExportTransitGatewayRoutesAsyncHelper(const Model::ExportTransitGatewayRoutesRequest& request, const ExportTransitGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetAssociatedIpv6PoolCidrsAsyncHelper(const Model::GetAssociatedIpv6PoolCidrsRequest& request, const GetAssociatedIpv6PoolCidrsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetCapacityReservationUsageAsyncHelper(const Model::GetCapacityReservationUsageRequest& request, const GetCapacityReservationUsageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetCoipPoolUsageAsyncHelper(const Model::GetCoipPoolUsageRequest& request, const GetCoipPoolUsageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetConsoleOutputAsyncHelper(const Model::GetConsoleOutputRequest& request, const GetConsoleOutputResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetConsoleScreenshotAsyncHelper(const Model::GetConsoleScreenshotRequest& request, const GetConsoleScreenshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDefaultCreditSpecificationAsyncHelper(const Model::GetDefaultCreditSpecificationRequest& request, const GetDefaultCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetEbsDefaultKmsKeyIdAsyncHelper(const Model::GetEbsDefaultKmsKeyIdRequest& request, const GetEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetEbsEncryptionByDefaultAsyncHelper(const Model::GetEbsEncryptionByDefaultRequest& request, const GetEbsEncryptionByDefaultResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetGroupsForCapacityReservationAsyncHelper(const Model::GetGroupsForCapacityReservationRequest& request, const GetGroupsForCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetHostReservationPurchasePreviewAsyncHelper(const Model::GetHostReservationPurchasePreviewRequest& request, const GetHostReservationPurchasePreviewResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetLaunchTemplateDataAsyncHelper(const Model::GetLaunchTemplateDataRequest& request, const GetLaunchTemplateDataResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetManagedPrefixListAssociationsAsyncHelper(const Model::GetManagedPrefixListAssociationsRequest& request, const GetManagedPrefixListAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetManagedPrefixListEntriesAsyncHelper(const Model::GetManagedPrefixListEntriesRequest& request, const GetManagedPrefixListEntriesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetPasswordDataAsyncHelper(const Model::GetPasswordDataRequest& request, const GetPasswordDataResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetReservedInstancesExchangeQuoteAsyncHelper(const Model::GetReservedInstancesExchangeQuoteRequest& request, const GetReservedInstancesExchangeQuoteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetTransitGatewayAttachmentPropagationsAsyncHelper(const Model::GetTransitGatewayAttachmentPropagationsRequest& request, const GetTransitGatewayAttachmentPropagationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetTransitGatewayMulticastDomainAssociationsAsyncHelper(const Model::GetTransitGatewayMulticastDomainAssociationsRequest& request, const GetTransitGatewayMulticastDomainAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetTransitGatewayPrefixListReferencesAsyncHelper(const Model::GetTransitGatewayPrefixListReferencesRequest& request, const GetTransitGatewayPrefixListReferencesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetTransitGatewayRouteTableAssociationsAsyncHelper(const Model::GetTransitGatewayRouteTableAssociationsRequest& request, const GetTransitGatewayRouteTableAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetTransitGatewayRouteTablePropagationsAsyncHelper(const Model::GetTransitGatewayRouteTablePropagationsRequest& request, const GetTransitGatewayRouteTablePropagationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportClientVpnClientCertificateRevocationListAsyncHelper(const Model::ImportClientVpnClientCertificateRevocationListRequest& request, const ImportClientVpnClientCertificateRevocationListResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportImageAsyncHelper(const Model::ImportImageRequest& request, const ImportImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportInstanceAsyncHelper(const Model::ImportInstanceRequest& request, const ImportInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportKeyPairAsyncHelper(const Model::ImportKeyPairRequest& request, const ImportKeyPairResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportSnapshotAsyncHelper(const Model::ImportSnapshotRequest& request, const ImportSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ImportVolumeAsyncHelper(const Model::ImportVolumeRequest& request, const ImportVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyAvailabilityZoneGroupAsyncHelper(const Model::ModifyAvailabilityZoneGroupRequest& request, const ModifyAvailabilityZoneGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyCapacityReservationAsyncHelper(const Model::ModifyCapacityReservationRequest& request, const ModifyCapacityReservationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClientVpnEndpointAsyncHelper(const Model::ModifyClientVpnEndpointRequest& request, const ModifyClientVpnEndpointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyDefaultCreditSpecificationAsyncHelper(const Model::ModifyDefaultCreditSpecificationRequest& request, const ModifyDefaultCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyEbsDefaultKmsKeyIdAsyncHelper(const Model::ModifyEbsDefaultKmsKeyIdRequest& request, const ModifyEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyFleetAsyncHelper(const Model::ModifyFleetRequest& request, const ModifyFleetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyFpgaImageAttributeAsyncHelper(const Model::ModifyFpgaImageAttributeRequest& request, const ModifyFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyHostsAsyncHelper(const Model::ModifyHostsRequest& request, const ModifyHostsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyIdFormatAsyncHelper(const Model::ModifyIdFormatRequest& request, const ModifyIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyIdentityIdFormatAsyncHelper(const Model::ModifyIdentityIdFormatRequest& request, const ModifyIdentityIdFormatResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyImageAttributeAsyncHelper(const Model::ModifyImageAttributeRequest& request, const ModifyImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstanceAttributeAsyncHelper(const Model::ModifyInstanceAttributeRequest& request, const ModifyInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstanceCapacityReservationAttributesAsyncHelper(const Model::ModifyInstanceCapacityReservationAttributesRequest& request, const ModifyInstanceCapacityReservationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstanceCreditSpecificationAsyncHelper(const Model::ModifyInstanceCreditSpecificationRequest& request, const ModifyInstanceCreditSpecificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstanceEventStartTimeAsyncHelper(const Model::ModifyInstanceEventStartTimeRequest& request, const ModifyInstanceEventStartTimeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstanceMetadataOptionsAsyncHelper(const Model::ModifyInstanceMetadataOptionsRequest& request, const ModifyInstanceMetadataOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyInstancePlacementAsyncHelper(const Model::ModifyInstancePlacementRequest& request, const ModifyInstancePlacementResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyLaunchTemplateAsyncHelper(const Model::ModifyLaunchTemplateRequest& request, const ModifyLaunchTemplateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyManagedPrefixListAsyncHelper(const Model::ModifyManagedPrefixListRequest& request, const ModifyManagedPrefixListResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyNetworkInterfaceAttributeAsyncHelper(const Model::ModifyNetworkInterfaceAttributeRequest& request, const ModifyNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyReservedInstancesAsyncHelper(const Model::ModifyReservedInstancesRequest& request, const ModifyReservedInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySnapshotAttributeAsyncHelper(const Model::ModifySnapshotAttributeRequest& request, const ModifySnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySpotFleetRequestAsyncHelper(const Model::ModifySpotFleetRequestRequest& request, const ModifySpotFleetRequestResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySubnetAttributeAsyncHelper(const Model::ModifySubnetAttributeRequest& request, const ModifySubnetAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTrafficMirrorFilterNetworkServicesAsyncHelper(const Model::ModifyTrafficMirrorFilterNetworkServicesRequest& request, const ModifyTrafficMirrorFilterNetworkServicesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTrafficMirrorFilterRuleAsyncHelper(const Model::ModifyTrafficMirrorFilterRuleRequest& request, const ModifyTrafficMirrorFilterRuleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTrafficMirrorSessionAsyncHelper(const Model::ModifyTrafficMirrorSessionRequest& request, const ModifyTrafficMirrorSessionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTransitGatewayAsyncHelper(const Model::ModifyTransitGatewayRequest& request, const ModifyTransitGatewayResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTransitGatewayPrefixListReferenceAsyncHelper(const Model::ModifyTransitGatewayPrefixListReferenceRequest& request, const ModifyTransitGatewayPrefixListReferenceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyTransitGatewayVpcAttachmentAsyncHelper(const Model::ModifyTransitGatewayVpcAttachmentRequest& request, const ModifyTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVolumeAsyncHelper(const Model::ModifyVolumeRequest& request, const ModifyVolumeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVolumeAttributeAsyncHelper(const Model::ModifyVolumeAttributeRequest& request, const ModifyVolumeAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcAttributeAsyncHelper(const Model::ModifyVpcAttributeRequest& request, const ModifyVpcAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcEndpointAsyncHelper(const Model::ModifyVpcEndpointRequest& request, const ModifyVpcEndpointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcEndpointConnectionNotificationAsyncHelper(const Model::ModifyVpcEndpointConnectionNotificationRequest& request, const ModifyVpcEndpointConnectionNotificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcEndpointServiceConfigurationAsyncHelper(const Model::ModifyVpcEndpointServiceConfigurationRequest& request, const ModifyVpcEndpointServiceConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcEndpointServicePermissionsAsyncHelper(const Model::ModifyVpcEndpointServicePermissionsRequest& request, const ModifyVpcEndpointServicePermissionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcPeeringConnectionOptionsAsyncHelper(const Model::ModifyVpcPeeringConnectionOptionsRequest& request, const ModifyVpcPeeringConnectionOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpcTenancyAsyncHelper(const Model::ModifyVpcTenancyRequest& request, const ModifyVpcTenancyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpnConnectionAsyncHelper(const Model::ModifyVpnConnectionRequest& request, const ModifyVpnConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpnTunnelCertificateAsyncHelper(const Model::ModifyVpnTunnelCertificateRequest& request, const ModifyVpnTunnelCertificateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyVpnTunnelOptionsAsyncHelper(const Model::ModifyVpnTunnelOptionsRequest& request, const ModifyVpnTunnelOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void MonitorInstancesAsyncHelper(const Model::MonitorInstancesRequest& request, const MonitorInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void MoveAddressToVpcAsyncHelper(const Model::MoveAddressToVpcRequest& request, const MoveAddressToVpcResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ProvisionByoipCidrAsyncHelper(const Model::ProvisionByoipCidrRequest& request, const ProvisionByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PurchaseHostReservationAsyncHelper(const Model::PurchaseHostReservationRequest& request, const PurchaseHostReservationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PurchaseReservedInstancesOfferingAsyncHelper(const Model::PurchaseReservedInstancesOfferingRequest& request, const PurchaseReservedInstancesOfferingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PurchaseScheduledInstancesAsyncHelper(const Model::PurchaseScheduledInstancesRequest& request, const PurchaseScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RebootInstancesAsyncHelper(const Model::RebootInstancesRequest& request, const RebootInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterImageAsyncHelper(const Model::RegisterImageRequest& request, const RegisterImageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterInstanceEventNotificationAttributesAsyncHelper(const Model::RegisterInstanceEventNotificationAttributesRequest& request, const RegisterInstanceEventNotificationAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterTransitGatewayMulticastGroupMembersAsyncHelper(const Model::RegisterTransitGatewayMulticastGroupMembersRequest& request, const RegisterTransitGatewayMulticastGroupMembersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterTransitGatewayMulticastGroupSourcesAsyncHelper(const Model::RegisterTransitGatewayMulticastGroupSourcesRequest& request, const RegisterTransitGatewayMulticastGroupSourcesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RejectTransitGatewayPeeringAttachmentAsyncHelper(const Model::RejectTransitGatewayPeeringAttachmentRequest& request, const RejectTransitGatewayPeeringAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RejectTransitGatewayVpcAttachmentAsyncHelper(const Model::RejectTransitGatewayVpcAttachmentRequest& request, const RejectTransitGatewayVpcAttachmentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RejectVpcEndpointConnectionsAsyncHelper(const Model::RejectVpcEndpointConnectionsRequest& request, const RejectVpcEndpointConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RejectVpcPeeringConnectionAsyncHelper(const Model::RejectVpcPeeringConnectionRequest& request, const RejectVpcPeeringConnectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReleaseAddressAsyncHelper(const Model::ReleaseAddressRequest& request, const ReleaseAddressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReleaseHostsAsyncHelper(const Model::ReleaseHostsRequest& request, const ReleaseHostsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceIamInstanceProfileAssociationAsyncHelper(const Model::ReplaceIamInstanceProfileAssociationRequest& request, const ReplaceIamInstanceProfileAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceNetworkAclAssociationAsyncHelper(const Model::ReplaceNetworkAclAssociationRequest& request, const ReplaceNetworkAclAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceNetworkAclEntryAsyncHelper(const Model::ReplaceNetworkAclEntryRequest& request, const ReplaceNetworkAclEntryResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceRouteAsyncHelper(const Model::ReplaceRouteRequest& request, const ReplaceRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceRouteTableAssociationAsyncHelper(const Model::ReplaceRouteTableAssociationRequest& request, const ReplaceRouteTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReplaceTransitGatewayRouteAsyncHelper(const Model::ReplaceTransitGatewayRouteRequest& request, const ReplaceTransitGatewayRouteResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ReportInstanceStatusAsyncHelper(const Model::ReportInstanceStatusRequest& request, const ReportInstanceStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RequestSpotFleetAsyncHelper(const Model::RequestSpotFleetRequest& request, const RequestSpotFleetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RequestSpotInstancesAsyncHelper(const Model::RequestSpotInstancesRequest& request, const RequestSpotInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetEbsDefaultKmsKeyIdAsyncHelper(const Model::ResetEbsDefaultKmsKeyIdRequest& request, const ResetEbsDefaultKmsKeyIdResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetFpgaImageAttributeAsyncHelper(const Model::ResetFpgaImageAttributeRequest& request, const ResetFpgaImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetImageAttributeAsyncHelper(const Model::ResetImageAttributeRequest& request, const ResetImageAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetInstanceAttributeAsyncHelper(const Model::ResetInstanceAttributeRequest& request, const ResetInstanceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetNetworkInterfaceAttributeAsyncHelper(const Model::ResetNetworkInterfaceAttributeRequest& request, const ResetNetworkInterfaceAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetSnapshotAttributeAsyncHelper(const Model::ResetSnapshotAttributeRequest& request, const ResetSnapshotAttributeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RestoreAddressToClassicAsyncHelper(const Model::RestoreAddressToClassicRequest& request, const RestoreAddressToClassicResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RestoreManagedPrefixListVersionAsyncHelper(const Model::RestoreManagedPrefixListVersionRequest& request, const RestoreManagedPrefixListVersionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeClientVpnIngressAsyncHelper(const Model::RevokeClientVpnIngressRequest& request, const RevokeClientVpnIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeSecurityGroupEgressAsyncHelper(const Model::RevokeSecurityGroupEgressRequest& request, const RevokeSecurityGroupEgressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeSecurityGroupIngressAsyncHelper(const Model::RevokeSecurityGroupIngressRequest& request, const RevokeSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RunInstancesAsyncHelper(const Model::RunInstancesRequest& request, const RunInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RunScheduledInstancesAsyncHelper(const Model::RunScheduledInstancesRequest& request, const RunScheduledInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void SearchLocalGatewayRoutesAsyncHelper(const Model::SearchLocalGatewayRoutesRequest& request, const SearchLocalGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void SearchTransitGatewayMulticastGroupsAsyncHelper(const Model::SearchTransitGatewayMulticastGroupsRequest& request, const SearchTransitGatewayMulticastGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void SearchTransitGatewayRoutesAsyncHelper(const Model::SearchTransitGatewayRoutesRequest& request, const SearchTransitGatewayRoutesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void SendDiagnosticInterruptAsyncHelper(const Model::SendDiagnosticInterruptRequest& request, const SendDiagnosticInterruptResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StartInstancesAsyncHelper(const Model::StartInstancesRequest& request, const StartInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StartVpcEndpointServicePrivateDnsVerificationAsyncHelper(const Model::StartVpcEndpointServicePrivateDnsVerificationRequest& request, const StartVpcEndpointServicePrivateDnsVerificationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StopInstancesAsyncHelper(const Model::StopInstancesRequest& request, const StopInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void TerminateClientVpnConnectionsAsyncHelper(const Model::TerminateClientVpnConnectionsRequest& request, const TerminateClientVpnConnectionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void TerminateInstancesAsyncHelper(const Model::TerminateInstancesRequest& request, const TerminateInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UnassignIpv6AddressesAsyncHelper(const Model::UnassignIpv6AddressesRequest& request, const UnassignIpv6AddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UnassignPrivateIpAddressesAsyncHelper(const Model::UnassignPrivateIpAddressesRequest& request, const UnassignPrivateIpAddressesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UnmonitorInstancesAsyncHelper(const Model::UnmonitorInstancesRequest& request, const UnmonitorInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateSecurityGroupRuleDescriptionsEgressAsyncHelper(const Model::UpdateSecurityGroupRuleDescriptionsEgressRequest& request, const UpdateSecurityGroupRuleDescriptionsEgressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateSecurityGroupRuleDescriptionsIngressAsyncHelper(const Model::UpdateSecurityGroupRuleDescriptionsIngressRequest& request, const UpdateSecurityGroupRuleDescriptionsIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void WithdrawByoipCidrAsyncHelper(const Model::WithdrawByoipCidrRequest& request, const WithdrawByoipCidrResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace EC2 } // namespace Aws