/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Transfer { /** *

Transfer Family is a fully managed service that enables the transfer of files * over the File Transfer Protocol (FTP), File Transfer Protocol over SSL (FTPS), * or Secure Shell (SSH) File Transfer Protocol (SFTP) directly into and out of * Amazon Simple Storage Service (Amazon S3) or Amazon EFS. Additionally, you can * use Applicability Statement 2 (AS2) to transfer files into and out of Amazon S3. * Amazon Web Services helps you seamlessly migrate your file transfer workflows to * Transfer Family by integrating with existing authentication systems, and * providing DNS routing with Amazon Route 53 so nothing changes for your customers * and partners, or their applications. With your data in Amazon S3, you can use it * with Amazon Web Services for processing, analytics, machine learning, and * archiving. Getting started with Transfer Family is easy since there is no * infrastructure to buy and set up.

*/ class AWS_TRANSFER_API TransferClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef TransferClientConfiguration ClientConfigurationType; typedef TransferEndpointProvider EndpointProviderType; /** * 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. */ TransferClient(const Aws::Transfer::TransferClientConfiguration& clientConfiguration = Aws::Transfer::TransferClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * 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. */ TransferClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::Transfer::TransferClientConfiguration& clientConfiguration = Aws::Transfer::TransferClientConfiguration()); /** * 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 */ TransferClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::Transfer::TransferClientConfiguration& clientConfiguration = Aws::Transfer::TransferClientConfiguration()); /* Legacy constructors due deprecation */ /** * 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. */ TransferClient(const Aws::Client::ClientConfiguration& 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. */ TransferClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& 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 */ TransferClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~TransferClient(); /** *

Used by administrators to choose which groups in the directory should have * access to upload and download files over the enabled protocols using Transfer * Family. For example, a Microsoft Active Directory might contain 50,000 users, * but only a small fraction might need the ability to transfer files to the * server. An administrator can use CreateAccess to limit the access * to the correct set of users who need this ability.

See Also:

AWS * API Reference

*/ virtual Model::CreateAccessOutcome CreateAccess(const Model::CreateAccessRequest& request) const; /** * A Callable wrapper for CreateAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAccessOutcomeCallable CreateAccessCallable(const CreateAccessRequestT& request) const { return SubmitCallable(&TransferClient::CreateAccess, request); } /** * An Async wrapper for CreateAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAccessAsync(const CreateAccessRequestT& request, const CreateAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateAccess, request, handler, context); } /** *

Creates an agreement. An agreement is a bilateral trading partner agreement, * or partnership, between an Transfer Family server and an AS2 process. The * agreement defines the file and message transfer relationship between the server * and the AS2 process. To define an agreement, Transfer Family combines a server, * local profile, partner profile, certificate, and other attributes.

The * partner is identified with the PartnerProfileId, and the AS2 * process is identified with the LocalProfileId.

See * Also:

AWS * API Reference

*/ virtual Model::CreateAgreementOutcome CreateAgreement(const Model::CreateAgreementRequest& request) const; /** * A Callable wrapper for CreateAgreement that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAgreementOutcomeCallable CreateAgreementCallable(const CreateAgreementRequestT& request) const { return SubmitCallable(&TransferClient::CreateAgreement, request); } /** * An Async wrapper for CreateAgreement that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAgreementAsync(const CreateAgreementRequestT& request, const CreateAgreementResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateAgreement, request, handler, context); } /** *

Creates the connector, which captures the parameters for an outbound * connection for the AS2 or SFTP protocol. The connector is required for sending * files to an externally hosted AS2 or SFTP server. For more details about AS2 * connectors, see Create * AS2 connectors.

You must specify exactly one configuration * object: either for AS2 (As2Config) or SFTP * (SftpConfig).

See Also:

AWS * API Reference

*/ virtual Model::CreateConnectorOutcome CreateConnector(const Model::CreateConnectorRequest& request) const; /** * A Callable wrapper for CreateConnector that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateConnectorOutcomeCallable CreateConnectorCallable(const CreateConnectorRequestT& request) const { return SubmitCallable(&TransferClient::CreateConnector, request); } /** * An Async wrapper for CreateConnector that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateConnectorAsync(const CreateConnectorRequestT& request, const CreateConnectorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateConnector, request, handler, context); } /** *

Creates the local or partner profile to use for AS2 transfers.

See * Also:

AWS * API Reference

*/ virtual Model::CreateProfileOutcome CreateProfile(const Model::CreateProfileRequest& request) const; /** * A Callable wrapper for CreateProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateProfileOutcomeCallable CreateProfileCallable(const CreateProfileRequestT& request) const { return SubmitCallable(&TransferClient::CreateProfile, request); } /** * An Async wrapper for CreateProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateProfileAsync(const CreateProfileRequestT& request, const CreateProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateProfile, request, handler, context); } /** *

Instantiates an auto-scaling virtual server based on the selected file * transfer protocol in Amazon Web Services. When you make updates to your file * transfer protocol-enabled server or when you work with users, use the * service-generated ServerId property that is assigned to the newly * created server.

See Also:

AWS * API Reference

*/ virtual Model::CreateServerOutcome CreateServer(const Model::CreateServerRequest& request) const; /** * A Callable wrapper for CreateServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateServerOutcomeCallable CreateServerCallable(const CreateServerRequestT& request) const { return SubmitCallable(&TransferClient::CreateServer, request); } /** * An Async wrapper for CreateServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateServerAsync(const CreateServerRequestT& request, const CreateServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateServer, request, handler, context); } /** *

Creates a user and associates them with an existing file transfer * protocol-enabled server. You can only create and associate users with servers * that have the IdentityProviderType set to * SERVICE_MANAGED. Using parameters for CreateUser, you * can specify the user name, set the home directory, store the user's public key, * and assign the user's Identity and Access Management (IAM) role. You can also * optionally add a session policy, and assign metadata with tags that can be used * to group and search for users.

See Also:

AWS * API Reference

*/ virtual Model::CreateUserOutcome CreateUser(const Model::CreateUserRequest& request) const; /** * A Callable wrapper for CreateUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateUserOutcomeCallable CreateUserCallable(const CreateUserRequestT& request) const { return SubmitCallable(&TransferClient::CreateUser, request); } /** * An Async wrapper for CreateUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateUserAsync(const CreateUserRequestT& request, const CreateUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateUser, request, handler, context); } /** *

Allows you to create a workflow with specified steps and step details the * workflow invokes after file transfer completes. After creating a workflow, you * can associate the workflow created with any transfer servers by specifying the * workflow-details field in CreateServer and * UpdateServer operations.

See Also:

AWS * API Reference

*/ virtual Model::CreateWorkflowOutcome CreateWorkflow(const Model::CreateWorkflowRequest& request) const; /** * A Callable wrapper for CreateWorkflow that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateWorkflowOutcomeCallable CreateWorkflowCallable(const CreateWorkflowRequestT& request) const { return SubmitCallable(&TransferClient::CreateWorkflow, request); } /** * An Async wrapper for CreateWorkflow that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateWorkflowAsync(const CreateWorkflowRequestT& request, const CreateWorkflowResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::CreateWorkflow, request, handler, context); } /** *

Allows you to delete the access specified in the ServerID and * ExternalID parameters.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAccessOutcome DeleteAccess(const Model::DeleteAccessRequest& request) const; /** * A Callable wrapper for DeleteAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAccessOutcomeCallable DeleteAccessCallable(const DeleteAccessRequestT& request) const { return SubmitCallable(&TransferClient::DeleteAccess, request); } /** * An Async wrapper for DeleteAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAccessAsync(const DeleteAccessRequestT& request, const DeleteAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteAccess, request, handler, context); } /** *

Delete the agreement that's specified in the provided * AgreementId.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAgreementOutcome DeleteAgreement(const Model::DeleteAgreementRequest& request) const; /** * A Callable wrapper for DeleteAgreement that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAgreementOutcomeCallable DeleteAgreementCallable(const DeleteAgreementRequestT& request) const { return SubmitCallable(&TransferClient::DeleteAgreement, request); } /** * An Async wrapper for DeleteAgreement that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAgreementAsync(const DeleteAgreementRequestT& request, const DeleteAgreementResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteAgreement, request, handler, context); } /** *

Deletes the certificate that's specified in the CertificateId * parameter.

See Also:

AWS * API Reference

*/ virtual Model::DeleteCertificateOutcome DeleteCertificate(const Model::DeleteCertificateRequest& request) const; /** * A Callable wrapper for DeleteCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteCertificateOutcomeCallable DeleteCertificateCallable(const DeleteCertificateRequestT& request) const { return SubmitCallable(&TransferClient::DeleteCertificate, request); } /** * An Async wrapper for DeleteCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteCertificateAsync(const DeleteCertificateRequestT& request, const DeleteCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteCertificate, request, handler, context); } /** *

Deletes the connector that's specified in the provided * ConnectorId.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConnectorOutcome DeleteConnector(const Model::DeleteConnectorRequest& request) const; /** * A Callable wrapper for DeleteConnector that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteConnectorOutcomeCallable DeleteConnectorCallable(const DeleteConnectorRequestT& request) const { return SubmitCallable(&TransferClient::DeleteConnector, request); } /** * An Async wrapper for DeleteConnector that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteConnectorAsync(const DeleteConnectorRequestT& request, const DeleteConnectorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteConnector, request, handler, context); } /** *

Deletes the host key that's specified in the HostKeyId * parameter.

See Also:

AWS * API Reference

*/ virtual Model::DeleteHostKeyOutcome DeleteHostKey(const Model::DeleteHostKeyRequest& request) const; /** * A Callable wrapper for DeleteHostKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteHostKeyOutcomeCallable DeleteHostKeyCallable(const DeleteHostKeyRequestT& request) const { return SubmitCallable(&TransferClient::DeleteHostKey, request); } /** * An Async wrapper for DeleteHostKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteHostKeyAsync(const DeleteHostKeyRequestT& request, const DeleteHostKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteHostKey, request, handler, context); } /** *

Deletes the profile that's specified in the ProfileId * parameter.

See Also:

AWS * API Reference

*/ virtual Model::DeleteProfileOutcome DeleteProfile(const Model::DeleteProfileRequest& request) const; /** * A Callable wrapper for DeleteProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteProfileOutcomeCallable DeleteProfileCallable(const DeleteProfileRequestT& request) const { return SubmitCallable(&TransferClient::DeleteProfile, request); } /** * An Async wrapper for DeleteProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteProfileAsync(const DeleteProfileRequestT& request, const DeleteProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteProfile, request, handler, context); } /** *

Deletes the file transfer protocol-enabled server that you specify.

No * response returns from this operation.

See Also:

AWS * API Reference

*/ virtual Model::DeleteServerOutcome DeleteServer(const Model::DeleteServerRequest& request) const; /** * A Callable wrapper for DeleteServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteServerOutcomeCallable DeleteServerCallable(const DeleteServerRequestT& request) const { return SubmitCallable(&TransferClient::DeleteServer, request); } /** * An Async wrapper for DeleteServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteServerAsync(const DeleteServerRequestT& request, const DeleteServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteServer, request, handler, context); } /** *

Deletes a user's Secure Shell (SSH) public key.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSshPublicKeyOutcome DeleteSshPublicKey(const Model::DeleteSshPublicKeyRequest& request) const; /** * A Callable wrapper for DeleteSshPublicKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteSshPublicKeyOutcomeCallable DeleteSshPublicKeyCallable(const DeleteSshPublicKeyRequestT& request) const { return SubmitCallable(&TransferClient::DeleteSshPublicKey, request); } /** * An Async wrapper for DeleteSshPublicKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteSshPublicKeyAsync(const DeleteSshPublicKeyRequestT& request, const DeleteSshPublicKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteSshPublicKey, request, handler, context); } /** *

Deletes the user belonging to a file transfer protocol-enabled server you * specify.

No response returns from this operation.

When you * delete a user from a server, the user's information is lost.

*

See Also:

AWS * API Reference

*/ virtual Model::DeleteUserOutcome DeleteUser(const Model::DeleteUserRequest& request) const; /** * A Callable wrapper for DeleteUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteUserOutcomeCallable DeleteUserCallable(const DeleteUserRequestT& request) const { return SubmitCallable(&TransferClient::DeleteUser, request); } /** * An Async wrapper for DeleteUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteUserAsync(const DeleteUserRequestT& request, const DeleteUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteUser, request, handler, context); } /** *

Deletes the specified workflow.

See Also:

AWS * API Reference

*/ virtual Model::DeleteWorkflowOutcome DeleteWorkflow(const Model::DeleteWorkflowRequest& request) const; /** * A Callable wrapper for DeleteWorkflow that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteWorkflowOutcomeCallable DeleteWorkflowCallable(const DeleteWorkflowRequestT& request) const { return SubmitCallable(&TransferClient::DeleteWorkflow, request); } /** * An Async wrapper for DeleteWorkflow that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteWorkflowAsync(const DeleteWorkflowRequestT& request, const DeleteWorkflowResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DeleteWorkflow, request, handler, context); } /** *

Describes the access that is assigned to the specific file transfer * protocol-enabled server, as identified by its ServerId property and * its ExternalId.

The response from this call returns the * properties of the access that is associated with the ServerId value * that was specified.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAccessOutcome DescribeAccess(const Model::DescribeAccessRequest& request) const; /** * A Callable wrapper for DescribeAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAccessOutcomeCallable DescribeAccessCallable(const DescribeAccessRequestT& request) const { return SubmitCallable(&TransferClient::DescribeAccess, request); } /** * An Async wrapper for DescribeAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAccessAsync(const DescribeAccessRequestT& request, const DescribeAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeAccess, request, handler, context); } /** *

Describes the agreement that's identified by the * AgreementId.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAgreementOutcome DescribeAgreement(const Model::DescribeAgreementRequest& request) const; /** * A Callable wrapper for DescribeAgreement that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAgreementOutcomeCallable DescribeAgreementCallable(const DescribeAgreementRequestT& request) const { return SubmitCallable(&TransferClient::DescribeAgreement, request); } /** * An Async wrapper for DescribeAgreement that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAgreementAsync(const DescribeAgreementRequestT& request, const DescribeAgreementResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeAgreement, request, handler, context); } /** *

Describes the certificate that's identified by the * CertificateId.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCertificateOutcome DescribeCertificate(const Model::DescribeCertificateRequest& request) const; /** * A Callable wrapper for DescribeCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeCertificateOutcomeCallable DescribeCertificateCallable(const DescribeCertificateRequestT& request) const { return SubmitCallable(&TransferClient::DescribeCertificate, request); } /** * An Async wrapper for DescribeCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeCertificateAsync(const DescribeCertificateRequestT& request, const DescribeCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeCertificate, request, handler, context); } /** *

Describes the connector that's identified by the ConnectorId. *

See Also:

AWS * API Reference

*/ virtual Model::DescribeConnectorOutcome DescribeConnector(const Model::DescribeConnectorRequest& request) const; /** * A Callable wrapper for DescribeConnector that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeConnectorOutcomeCallable DescribeConnectorCallable(const DescribeConnectorRequestT& request) const { return SubmitCallable(&TransferClient::DescribeConnector, request); } /** * An Async wrapper for DescribeConnector that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeConnectorAsync(const DescribeConnectorRequestT& request, const DescribeConnectorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeConnector, request, handler, context); } /** *

You can use DescribeExecution to check the details of the * execution of the specified workflow.

This API call only returns * details for in-progress workflows.

If you provide an ID for an execution * that is not in progress, or if the execution doesn't match the specified * workflow ID, you receive a ResourceNotFound exception.

*

See Also:

AWS * API Reference

*/ virtual Model::DescribeExecutionOutcome DescribeExecution(const Model::DescribeExecutionRequest& request) const; /** * A Callable wrapper for DescribeExecution that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeExecutionOutcomeCallable DescribeExecutionCallable(const DescribeExecutionRequestT& request) const { return SubmitCallable(&TransferClient::DescribeExecution, request); } /** * An Async wrapper for DescribeExecution that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeExecutionAsync(const DescribeExecutionRequestT& request, const DescribeExecutionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeExecution, request, handler, context); } /** *

Returns the details of the host key that's specified by the * HostKeyId and ServerId.

See Also:

AWS * API Reference

*/ virtual Model::DescribeHostKeyOutcome DescribeHostKey(const Model::DescribeHostKeyRequest& request) const; /** * A Callable wrapper for DescribeHostKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeHostKeyOutcomeCallable DescribeHostKeyCallable(const DescribeHostKeyRequestT& request) const { return SubmitCallable(&TransferClient::DescribeHostKey, request); } /** * An Async wrapper for DescribeHostKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeHostKeyAsync(const DescribeHostKeyRequestT& request, const DescribeHostKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeHostKey, request, handler, context); } /** *

Returns the details of the profile that's specified by the * ProfileId.

See Also:

AWS * API Reference

*/ virtual Model::DescribeProfileOutcome DescribeProfile(const Model::DescribeProfileRequest& request) const; /** * A Callable wrapper for DescribeProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeProfileOutcomeCallable DescribeProfileCallable(const DescribeProfileRequestT& request) const { return SubmitCallable(&TransferClient::DescribeProfile, request); } /** * An Async wrapper for DescribeProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeProfileAsync(const DescribeProfileRequestT& request, const DescribeProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeProfile, request, handler, context); } /** *

Describes the security policy that is attached to your file transfer * protocol-enabled server. The response contains a description of the security * policy's properties. For more information about security policies, see Working * with security policies.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSecurityPolicyOutcome DescribeSecurityPolicy(const Model::DescribeSecurityPolicyRequest& request) const; /** * A Callable wrapper for DescribeSecurityPolicy that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeSecurityPolicyOutcomeCallable DescribeSecurityPolicyCallable(const DescribeSecurityPolicyRequestT& request) const { return SubmitCallable(&TransferClient::DescribeSecurityPolicy, request); } /** * An Async wrapper for DescribeSecurityPolicy that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeSecurityPolicyAsync(const DescribeSecurityPolicyRequestT& request, const DescribeSecurityPolicyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeSecurityPolicy, request, handler, context); } /** *

Describes a file transfer protocol-enabled server that you specify by passing * the ServerId parameter.

The response contains a description * of a server's properties. When you set EndpointType to VPC, the * response will contain the EndpointDetails.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeServerOutcome DescribeServer(const Model::DescribeServerRequest& request) const; /** * A Callable wrapper for DescribeServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeServerOutcomeCallable DescribeServerCallable(const DescribeServerRequestT& request) const { return SubmitCallable(&TransferClient::DescribeServer, request); } /** * An Async wrapper for DescribeServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeServerAsync(const DescribeServerRequestT& request, const DescribeServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeServer, request, handler, context); } /** *

Describes the user assigned to the specific file transfer protocol-enabled * server, as identified by its ServerId property.

The response * from this call returns the properties of the user associated with the * ServerId value that was specified.

See Also:

AWS * API Reference

*/ virtual Model::DescribeUserOutcome DescribeUser(const Model::DescribeUserRequest& request) const; /** * A Callable wrapper for DescribeUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeUserOutcomeCallable DescribeUserCallable(const DescribeUserRequestT& request) const { return SubmitCallable(&TransferClient::DescribeUser, request); } /** * An Async wrapper for DescribeUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeUserAsync(const DescribeUserRequestT& request, const DescribeUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeUser, request, handler, context); } /** *

Describes the specified workflow.

See Also:

AWS * API Reference

*/ virtual Model::DescribeWorkflowOutcome DescribeWorkflow(const Model::DescribeWorkflowRequest& request) const; /** * A Callable wrapper for DescribeWorkflow that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeWorkflowOutcomeCallable DescribeWorkflowCallable(const DescribeWorkflowRequestT& request) const { return SubmitCallable(&TransferClient::DescribeWorkflow, request); } /** * An Async wrapper for DescribeWorkflow that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeWorkflowAsync(const DescribeWorkflowRequestT& request, const DescribeWorkflowResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::DescribeWorkflow, request, handler, context); } /** *

Imports the signing and encryption certificates that you need to create local * (AS2) profiles and partner profiles.

See Also:

AWS * API Reference

*/ virtual Model::ImportCertificateOutcome ImportCertificate(const Model::ImportCertificateRequest& request) const; /** * A Callable wrapper for ImportCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ImportCertificateOutcomeCallable ImportCertificateCallable(const ImportCertificateRequestT& request) const { return SubmitCallable(&TransferClient::ImportCertificate, request); } /** * An Async wrapper for ImportCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ImportCertificateAsync(const ImportCertificateRequestT& request, const ImportCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ImportCertificate, request, handler, context); } /** *

Adds a host key to the server that's specified by the ServerId * parameter.

See Also:

AWS * API Reference

*/ virtual Model::ImportHostKeyOutcome ImportHostKey(const Model::ImportHostKeyRequest& request) const; /** * A Callable wrapper for ImportHostKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ImportHostKeyOutcomeCallable ImportHostKeyCallable(const ImportHostKeyRequestT& request) const { return SubmitCallable(&TransferClient::ImportHostKey, request); } /** * An Async wrapper for ImportHostKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ImportHostKeyAsync(const ImportHostKeyRequestT& request, const ImportHostKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ImportHostKey, request, handler, context); } /** *

Adds a Secure Shell (SSH) public key to a Transfer Family user identified by * a UserName value assigned to the specific file transfer * protocol-enabled server, identified by ServerId.

The * response returns the UserName value, the ServerId * value, and the name of the SshPublicKeyId.

See Also:

* AWS * API Reference

*/ virtual Model::ImportSshPublicKeyOutcome ImportSshPublicKey(const Model::ImportSshPublicKeyRequest& request) const; /** * A Callable wrapper for ImportSshPublicKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ImportSshPublicKeyOutcomeCallable ImportSshPublicKeyCallable(const ImportSshPublicKeyRequestT& request) const { return SubmitCallable(&TransferClient::ImportSshPublicKey, request); } /** * An Async wrapper for ImportSshPublicKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ImportSshPublicKeyAsync(const ImportSshPublicKeyRequestT& request, const ImportSshPublicKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ImportSshPublicKey, request, handler, context); } /** *

Lists the details for all the accesses you have on your server.

See * Also:

AWS * API Reference

*/ virtual Model::ListAccessesOutcome ListAccesses(const Model::ListAccessesRequest& request) const; /** * A Callable wrapper for ListAccesses that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAccessesOutcomeCallable ListAccessesCallable(const ListAccessesRequestT& request) const { return SubmitCallable(&TransferClient::ListAccesses, request); } /** * An Async wrapper for ListAccesses that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAccessesAsync(const ListAccessesRequestT& request, const ListAccessesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListAccesses, request, handler, context); } /** *

Returns a list of the agreements for the server that's identified by the * ServerId that you supply. If you want to limit the results to a * certain number, supply a value for the MaxResults parameter. If you * ran the command previously and received a value for NextToken, you * can supply that value to continue listing agreements from where you left * off.

See Also:

AWS * API Reference

*/ virtual Model::ListAgreementsOutcome ListAgreements(const Model::ListAgreementsRequest& request) const; /** * A Callable wrapper for ListAgreements that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAgreementsOutcomeCallable ListAgreementsCallable(const ListAgreementsRequestT& request) const { return SubmitCallable(&TransferClient::ListAgreements, request); } /** * An Async wrapper for ListAgreements that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAgreementsAsync(const ListAgreementsRequestT& request, const ListAgreementsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListAgreements, request, handler, context); } /** *

Returns a list of the current certificates that have been imported into * Transfer Family. If you want to limit the results to a certain number, supply a * value for the MaxResults parameter. If you ran the command * previously and received a value for the NextToken parameter, you * can supply that value to continue listing certificates from where you left * off.

See Also:

AWS * API Reference

*/ virtual Model::ListCertificatesOutcome ListCertificates(const Model::ListCertificatesRequest& request) const; /** * A Callable wrapper for ListCertificates that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListCertificatesOutcomeCallable ListCertificatesCallable(const ListCertificatesRequestT& request) const { return SubmitCallable(&TransferClient::ListCertificates, request); } /** * An Async wrapper for ListCertificates that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListCertificatesAsync(const ListCertificatesRequestT& request, const ListCertificatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListCertificates, request, handler, context); } /** *

Lists the connectors for the specified Region.

See Also:

AWS * API Reference

*/ virtual Model::ListConnectorsOutcome ListConnectors(const Model::ListConnectorsRequest& request) const; /** * A Callable wrapper for ListConnectors that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListConnectorsOutcomeCallable ListConnectorsCallable(const ListConnectorsRequestT& request) const { return SubmitCallable(&TransferClient::ListConnectors, request); } /** * An Async wrapper for ListConnectors that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListConnectorsAsync(const ListConnectorsRequestT& request, const ListConnectorsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListConnectors, request, handler, context); } /** *

Lists all in-progress executions for the specified workflow.

If * the specified workflow ID cannot be found, ListExecutions returns a * ResourceNotFound exception.

See Also:

AWS * API Reference

*/ virtual Model::ListExecutionsOutcome ListExecutions(const Model::ListExecutionsRequest& request) const; /** * A Callable wrapper for ListExecutions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListExecutionsOutcomeCallable ListExecutionsCallable(const ListExecutionsRequestT& request) const { return SubmitCallable(&TransferClient::ListExecutions, request); } /** * An Async wrapper for ListExecutions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListExecutionsAsync(const ListExecutionsRequestT& request, const ListExecutionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListExecutions, request, handler, context); } /** *

Returns a list of host keys for the server that's specified by the * ServerId parameter.

See Also:

AWS * API Reference

*/ virtual Model::ListHostKeysOutcome ListHostKeys(const Model::ListHostKeysRequest& request) const; /** * A Callable wrapper for ListHostKeys that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListHostKeysOutcomeCallable ListHostKeysCallable(const ListHostKeysRequestT& request) const { return SubmitCallable(&TransferClient::ListHostKeys, request); } /** * An Async wrapper for ListHostKeys that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListHostKeysAsync(const ListHostKeysRequestT& request, const ListHostKeysResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListHostKeys, request, handler, context); } /** *

Returns a list of the profiles for your system. If you want to limit the * results to a certain number, supply a value for the MaxResults * parameter. If you ran the command previously and received a value for * NextToken, you can supply that value to continue listing profiles * from where you left off.

See Also:

AWS * API Reference

*/ virtual Model::ListProfilesOutcome ListProfiles(const Model::ListProfilesRequest& request) const; /** * A Callable wrapper for ListProfiles that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListProfilesOutcomeCallable ListProfilesCallable(const ListProfilesRequestT& request) const { return SubmitCallable(&TransferClient::ListProfiles, request); } /** * An Async wrapper for ListProfiles that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListProfilesAsync(const ListProfilesRequestT& request, const ListProfilesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListProfiles, request, handler, context); } /** *

Lists the security policies that are attached to your file transfer * protocol-enabled servers.

See Also:

AWS * API Reference

*/ virtual Model::ListSecurityPoliciesOutcome ListSecurityPolicies(const Model::ListSecurityPoliciesRequest& request) const; /** * A Callable wrapper for ListSecurityPolicies that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListSecurityPoliciesOutcomeCallable ListSecurityPoliciesCallable(const ListSecurityPoliciesRequestT& request) const { return SubmitCallable(&TransferClient::ListSecurityPolicies, request); } /** * An Async wrapper for ListSecurityPolicies that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListSecurityPoliciesAsync(const ListSecurityPoliciesRequestT& request, const ListSecurityPoliciesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListSecurityPolicies, request, handler, context); } /** *

Lists the file transfer protocol-enabled servers that are associated with * your Amazon Web Services account.

See Also:

AWS * API Reference

*/ virtual Model::ListServersOutcome ListServers(const Model::ListServersRequest& request) const; /** * A Callable wrapper for ListServers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListServersOutcomeCallable ListServersCallable(const ListServersRequestT& request) const { return SubmitCallable(&TransferClient::ListServers, request); } /** * An Async wrapper for ListServers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListServersAsync(const ListServersRequestT& request, const ListServersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListServers, request, handler, context); } /** *

Lists all of the tags associated with the Amazon Resource Name (ARN) that you * specify. The resource can be a user, server, or role.

See Also:

* AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&TransferClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListTagsForResource, request, handler, context); } /** *

Lists the users for a file transfer protocol-enabled server that you specify * by passing the ServerId parameter.

See Also:

AWS * API Reference

*/ virtual Model::ListUsersOutcome ListUsers(const Model::ListUsersRequest& request) const; /** * A Callable wrapper for ListUsers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListUsersOutcomeCallable ListUsersCallable(const ListUsersRequestT& request) const { return SubmitCallable(&TransferClient::ListUsers, request); } /** * An Async wrapper for ListUsers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListUsersAsync(const ListUsersRequestT& request, const ListUsersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListUsers, request, handler, context); } /** *

Lists all workflows associated with your Amazon Web Services account for your * current region.

See Also:

AWS * API Reference

*/ virtual Model::ListWorkflowsOutcome ListWorkflows(const Model::ListWorkflowsRequest& request) const; /** * A Callable wrapper for ListWorkflows that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListWorkflowsOutcomeCallable ListWorkflowsCallable(const ListWorkflowsRequestT& request) const { return SubmitCallable(&TransferClient::ListWorkflows, request); } /** * An Async wrapper for ListWorkflows that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListWorkflowsAsync(const ListWorkflowsRequestT& request, const ListWorkflowsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::ListWorkflows, request, handler, context); } /** *

Sends a callback for asynchronous custom steps.

The * ExecutionId, WorkflowId, and Token are * passed to the target resource during execution of a custom step of a workflow. * You must include those with their callback as well as providing a status. *

See Also:

AWS * API Reference

*/ virtual Model::SendWorkflowStepStateOutcome SendWorkflowStepState(const Model::SendWorkflowStepStateRequest& request) const; /** * A Callable wrapper for SendWorkflowStepState that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::SendWorkflowStepStateOutcomeCallable SendWorkflowStepStateCallable(const SendWorkflowStepStateRequestT& request) const { return SubmitCallable(&TransferClient::SendWorkflowStepState, request); } /** * An Async wrapper for SendWorkflowStepState that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void SendWorkflowStepStateAsync(const SendWorkflowStepStateRequestT& request, const SendWorkflowStepStateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::SendWorkflowStepState, request, handler, context); } /** *

Begins a file transfer between local Amazon Web Services storage and a remote * AS2 or SFTP server.

  • For an AS2 connector, you specify the * ConnectorId and one or more SendFilePaths to identify * the files you want to transfer.

  • For an SFTP connector, the * file transfer can be either outbound or inbound. In both cases, you specify the * ConnectorId. Depending on the direction of the transfer, you also * specify the following items:

    • If you are transferring file from * a partner's SFTP server to a Transfer Family server, you specify one or more * RetreiveFilePaths to identify the files you want to transfer, and a * LocalDirectoryPath to specify the destination folder.

    • *
    • If you are transferring file to a partner's SFTP server from Amazon Web * Services storage, you specify one or more SendFilePaths to identify * the files you want to transfer, and a RemoteDirectoryPath to * specify the destination folder.

See Also:

* AWS * API Reference

*/ virtual Model::StartFileTransferOutcome StartFileTransfer(const Model::StartFileTransferRequest& request) const; /** * A Callable wrapper for StartFileTransfer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartFileTransferOutcomeCallable StartFileTransferCallable(const StartFileTransferRequestT& request) const { return SubmitCallable(&TransferClient::StartFileTransfer, request); } /** * An Async wrapper for StartFileTransfer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartFileTransferAsync(const StartFileTransferRequestT& request, const StartFileTransferResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::StartFileTransfer, request, handler, context); } /** *

Changes the state of a file transfer protocol-enabled server from * OFFLINE to ONLINE. It has no impact on a server that * is already ONLINE. An ONLINE server can accept and * process file transfer jobs.

The state of STARTING indicates * that the server is in an intermediate state, either not fully able to respond, * or not fully online. The values of START_FAILED can indicate an * error condition.

No response is returned from this call.

See * Also:

AWS * API Reference

*/ virtual Model::StartServerOutcome StartServer(const Model::StartServerRequest& request) const; /** * A Callable wrapper for StartServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartServerOutcomeCallable StartServerCallable(const StartServerRequestT& request) const { return SubmitCallable(&TransferClient::StartServer, request); } /** * An Async wrapper for StartServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartServerAsync(const StartServerRequestT& request, const StartServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::StartServer, request, handler, context); } /** *

Changes the state of a file transfer protocol-enabled server from * ONLINE to OFFLINE. An OFFLINE server * cannot accept and process file transfer jobs. Information tied to your server, * such as server and user properties, are not affected by stopping your * server.

Stopping the server does not reduce or impact your file * transfer protocol endpoint billing; you must delete the server to stop being * billed.

The state of STOPPING indicates that the * server is in an intermediate state, either not fully able to respond, or not * fully offline. The values of STOP_FAILED can indicate an error * condition.

No response is returned from this call.

See * Also:

AWS * API Reference

*/ virtual Model::StopServerOutcome StopServer(const Model::StopServerRequest& request) const; /** * A Callable wrapper for StopServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopServerOutcomeCallable StopServerCallable(const StopServerRequestT& request) const { return SubmitCallable(&TransferClient::StopServer, request); } /** * An Async wrapper for StopServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopServerAsync(const StopServerRequestT& request, const StopServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::StopServer, request, handler, context); } /** *

Attaches a key-value pair to a resource, as identified by its Amazon Resource * Name (ARN). Resources are users, servers, roles, and other entities.

*

There is no response returned from this call.

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const { return SubmitCallable(&TransferClient::TagResource, request); } /** * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::TagResource, request, handler, context); } /** *

Tests whether your SFTP connector is set up successfully. We highly recommend * that you call this operation to test your ability to transfer files between a * Transfer Family server and a trading partner's SFTP server.

See * Also:

AWS * API Reference

*/ virtual Model::TestConnectionOutcome TestConnection(const Model::TestConnectionRequest& request) const; /** * A Callable wrapper for TestConnection that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TestConnectionOutcomeCallable TestConnectionCallable(const TestConnectionRequestT& request) const { return SubmitCallable(&TransferClient::TestConnection, request); } /** * An Async wrapper for TestConnection that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TestConnectionAsync(const TestConnectionRequestT& request, const TestConnectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::TestConnection, request, handler, context); } /** *

If the IdentityProviderType of a file transfer protocol-enabled * server is AWS_DIRECTORY_SERVICE or API_Gateway, tests * whether your identity provider is set up successfully. We highly recommend that * you call this operation to test your authentication method as soon as you create * your server. By doing so, you can troubleshoot issues with the identity provider * integration to ensure that your users can successfully use the service.

* The ServerId and UserName parameters are required. The * ServerProtocol, SourceIp, and * UserPassword are all optional.

Note the following:

    *
  • You cannot use TestIdentityProvider if the * IdentityProviderType of your server is * SERVICE_MANAGED.

  • * TestIdentityProvider does not work with keys: it only accepts * passwords.

  • TestIdentityProvider can test the * password operation for a custom Identity Provider that handles keys and * passwords.

  • If you provide any incorrect values for any * parameters, the Response field is empty.

  • If you * provide a server ID for a server that uses service-managed users, you get an * error:

    An error occurred (InvalidRequestException) when calling * the TestIdentityProvider operation: s-server-ID not configured for * external auth

  • If you enter a Server ID for the * --server-id parameter that does not identify an actual Transfer * server, you receive the following error:

    An error occurred * (ResourceNotFoundException) when calling the TestIdentityProvider operation: * Unknown server.

    It is possible your sever is in a different * region. You can specify a region by adding the following: --region * region-code, such as --region us-east-2 to specify a server * in US East (Ohio).

See Also:

AWS * API Reference

*/ virtual Model::TestIdentityProviderOutcome TestIdentityProvider(const Model::TestIdentityProviderRequest& request) const; /** * A Callable wrapper for TestIdentityProvider that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TestIdentityProviderOutcomeCallable TestIdentityProviderCallable(const TestIdentityProviderRequestT& request) const { return SubmitCallable(&TransferClient::TestIdentityProvider, request); } /** * An Async wrapper for TestIdentityProvider that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TestIdentityProviderAsync(const TestIdentityProviderRequestT& request, const TestIdentityProviderResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::TestIdentityProvider, request, handler, context); } /** *

Detaches a key-value pair from a resource, as identified by its Amazon * Resource Name (ARN). Resources are users, servers, roles, and other * entities.

No response is returned from this call.

See * Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const { return SubmitCallable(&TransferClient::UntagResource, request); } /** * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UntagResource, request, handler, context); } /** *

Allows you to update parameters for the access specified in the * ServerID and ExternalID parameters.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateAccessOutcome UpdateAccess(const Model::UpdateAccessRequest& request) const; /** * A Callable wrapper for UpdateAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAccessOutcomeCallable UpdateAccessCallable(const UpdateAccessRequestT& request) const { return SubmitCallable(&TransferClient::UpdateAccess, request); } /** * An Async wrapper for UpdateAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAccessAsync(const UpdateAccessRequestT& request, const UpdateAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateAccess, request, handler, context); } /** *

Updates some of the parameters for an existing agreement. Provide the * AgreementId and the ServerId for the agreement that * you want to update, along with the new values for the parameters to * update.

See Also:

AWS * API Reference

*/ virtual Model::UpdateAgreementOutcome UpdateAgreement(const Model::UpdateAgreementRequest& request) const; /** * A Callable wrapper for UpdateAgreement that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAgreementOutcomeCallable UpdateAgreementCallable(const UpdateAgreementRequestT& request) const { return SubmitCallable(&TransferClient::UpdateAgreement, request); } /** * An Async wrapper for UpdateAgreement that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAgreementAsync(const UpdateAgreementRequestT& request, const UpdateAgreementResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateAgreement, request, handler, context); } /** *

Updates the active and inactive dates for a certificate.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateCertificateOutcome UpdateCertificate(const Model::UpdateCertificateRequest& request) const; /** * A Callable wrapper for UpdateCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateCertificateOutcomeCallable UpdateCertificateCallable(const UpdateCertificateRequestT& request) const { return SubmitCallable(&TransferClient::UpdateCertificate, request); } /** * An Async wrapper for UpdateCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateCertificateAsync(const UpdateCertificateRequestT& request, const UpdateCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateCertificate, request, handler, context); } /** *

Updates some of the parameters for an existing connector. Provide the * ConnectorId for the connector that you want to update, along with * the new values for the parameters to update.

See Also:

AWS * API Reference

*/ virtual Model::UpdateConnectorOutcome UpdateConnector(const Model::UpdateConnectorRequest& request) const; /** * A Callable wrapper for UpdateConnector that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateConnectorOutcomeCallable UpdateConnectorCallable(const UpdateConnectorRequestT& request) const { return SubmitCallable(&TransferClient::UpdateConnector, request); } /** * An Async wrapper for UpdateConnector that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateConnectorAsync(const UpdateConnectorRequestT& request, const UpdateConnectorResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateConnector, request, handler, context); } /** *

Updates the description for the host key that's specified by the * ServerId and HostKeyId parameters.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateHostKeyOutcome UpdateHostKey(const Model::UpdateHostKeyRequest& request) const; /** * A Callable wrapper for UpdateHostKey that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateHostKeyOutcomeCallable UpdateHostKeyCallable(const UpdateHostKeyRequestT& request) const { return SubmitCallable(&TransferClient::UpdateHostKey, request); } /** * An Async wrapper for UpdateHostKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateHostKeyAsync(const UpdateHostKeyRequestT& request, const UpdateHostKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateHostKey, request, handler, context); } /** *

Updates some of the parameters for an existing profile. Provide the * ProfileId for the profile that you want to update, along with the * new values for the parameters to update.

See Also:

AWS * API Reference

*/ virtual Model::UpdateProfileOutcome UpdateProfile(const Model::UpdateProfileRequest& request) const; /** * A Callable wrapper for UpdateProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateProfileOutcomeCallable UpdateProfileCallable(const UpdateProfileRequestT& request) const { return SubmitCallable(&TransferClient::UpdateProfile, request); } /** * An Async wrapper for UpdateProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateProfileAsync(const UpdateProfileRequestT& request, const UpdateProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateProfile, request, handler, context); } /** *

Updates the file transfer protocol-enabled server's properties after that * server has been created.

The UpdateServer call returns the * ServerId of the server you updated.

See Also:

AWS * API Reference

*/ virtual Model::UpdateServerOutcome UpdateServer(const Model::UpdateServerRequest& request) const; /** * A Callable wrapper for UpdateServer that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateServerOutcomeCallable UpdateServerCallable(const UpdateServerRequestT& request) const { return SubmitCallable(&TransferClient::UpdateServer, request); } /** * An Async wrapper for UpdateServer that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateServerAsync(const UpdateServerRequestT& request, const UpdateServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateServer, request, handler, context); } /** *

Assigns new properties to a user. Parameters you pass modify any or all of * the following: the home directory, role, and policy for the * UserName and ServerId you specify.

The response * returns the ServerId and the UserName for the updated * user.

See Also:

AWS * API Reference

*/ virtual Model::UpdateUserOutcome UpdateUser(const Model::UpdateUserRequest& request) const; /** * A Callable wrapper for UpdateUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateUserOutcomeCallable UpdateUserCallable(const UpdateUserRequestT& request) const { return SubmitCallable(&TransferClient::UpdateUser, request); } /** * An Async wrapper for UpdateUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateUserAsync(const UpdateUserRequestT& request, const UpdateUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&TransferClient::UpdateUser, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const TransferClientConfiguration& clientConfiguration); TransferClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace Transfer } // namespace Aws