/** * 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 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 S3Control { namespace Model { class CreateAccessPointRequest; class CreateJobRequest; class DeleteAccessPointRequest; class DeleteAccessPointPolicyRequest; class DeleteJobTaggingRequest; class DeletePublicAccessBlockRequest; class DescribeJobRequest; class GetAccessPointRequest; class GetAccessPointPolicyRequest; class GetAccessPointPolicyStatusRequest; class GetJobTaggingRequest; class GetPublicAccessBlockRequest; class ListAccessPointsRequest; class ListJobsRequest; class PutAccessPointPolicyRequest; class PutJobTaggingRequest; class PutPublicAccessBlockRequest; class UpdateJobPriorityRequest; class UpdateJobStatusRequest; typedef Aws::Utils::Outcome CreateAccessPointOutcome; typedef Aws::Utils::Outcome CreateJobOutcome; typedef Aws::Utils::Outcome DeleteAccessPointOutcome; typedef Aws::Utils::Outcome DeleteAccessPointPolicyOutcome; typedef Aws::Utils::Outcome DeleteJobTaggingOutcome; typedef Aws::Utils::Outcome DeletePublicAccessBlockOutcome; typedef Aws::Utils::Outcome DescribeJobOutcome; typedef Aws::Utils::Outcome GetAccessPointOutcome; typedef Aws::Utils::Outcome GetAccessPointPolicyOutcome; typedef Aws::Utils::Outcome GetAccessPointPolicyStatusOutcome; typedef Aws::Utils::Outcome GetJobTaggingOutcome; typedef Aws::Utils::Outcome GetPublicAccessBlockOutcome; typedef Aws::Utils::Outcome ListAccessPointsOutcome; typedef Aws::Utils::Outcome ListJobsOutcome; typedef Aws::Utils::Outcome PutAccessPointPolicyOutcome; typedef Aws::Utils::Outcome PutJobTaggingOutcome; typedef Aws::Utils::Outcome PutPublicAccessBlockOutcome; typedef Aws::Utils::Outcome UpdateJobPriorityOutcome; typedef Aws::Utils::Outcome UpdateJobStatusOutcome; typedef std::future CreateAccessPointOutcomeCallable; typedef std::future CreateJobOutcomeCallable; typedef std::future DeleteAccessPointOutcomeCallable; typedef std::future DeleteAccessPointPolicyOutcomeCallable; typedef std::future DeleteJobTaggingOutcomeCallable; typedef std::future DeletePublicAccessBlockOutcomeCallable; typedef std::future DescribeJobOutcomeCallable; typedef std::future GetAccessPointOutcomeCallable; typedef std::future GetAccessPointPolicyOutcomeCallable; typedef std::future GetAccessPointPolicyStatusOutcomeCallable; typedef std::future GetJobTaggingOutcomeCallable; typedef std::future GetPublicAccessBlockOutcomeCallable; typedef std::future ListAccessPointsOutcomeCallable; typedef std::future ListJobsOutcomeCallable; typedef std::future PutAccessPointPolicyOutcomeCallable; typedef std::future PutJobTaggingOutcomeCallable; typedef std::future PutPublicAccessBlockOutcomeCallable; typedef std::future UpdateJobPriorityOutcomeCallable; typedef std::future UpdateJobStatusOutcomeCallable; } // namespace Model class S3ControlClient; typedef std::function&) > CreateAccessPointResponseReceivedHandler; typedef std::function&) > CreateJobResponseReceivedHandler; typedef std::function&) > DeleteAccessPointResponseReceivedHandler; typedef std::function&) > DeleteAccessPointPolicyResponseReceivedHandler; typedef std::function&) > DeleteJobTaggingResponseReceivedHandler; typedef std::function&) > DeletePublicAccessBlockResponseReceivedHandler; typedef std::function&) > DescribeJobResponseReceivedHandler; typedef std::function&) > GetAccessPointResponseReceivedHandler; typedef std::function&) > GetAccessPointPolicyResponseReceivedHandler; typedef std::function&) > GetAccessPointPolicyStatusResponseReceivedHandler; typedef std::function&) > GetJobTaggingResponseReceivedHandler; typedef std::function&) > GetPublicAccessBlockResponseReceivedHandler; typedef std::function&) > ListAccessPointsResponseReceivedHandler; typedef std::function&) > ListJobsResponseReceivedHandler; typedef std::function&) > PutAccessPointPolicyResponseReceivedHandler; typedef std::function&) > PutJobTaggingResponseReceivedHandler; typedef std::function&) > PutPublicAccessBlockResponseReceivedHandler; typedef std::function&) > UpdateJobPriorityResponseReceivedHandler; typedef std::function&) > UpdateJobStatusResponseReceivedHandler; /** *

AWS S3 Control provides access to Amazon S3 control plane operations.

*/ class AWS_S3CONTROL_API S3ControlClient : 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. */ S3ControlClient(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. */ S3ControlClient(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 */ S3ControlClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~S3ControlClient(); /** *

Creates an access point and associates it with the specified * bucket.

See Also:

AWS * API Reference

*/ virtual Model::CreateAccessPointOutcome CreateAccessPoint(const Model::CreateAccessPointRequest& request) const; /** *

Creates an access point and associates it with the specified * bucket.

See Also:

AWS * API Reference

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

Creates an access point and associates it with the specified * bucket.

See Also:

AWS * API Reference

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

You can use Amazon S3 Batch Operations to perform large-scale Batch * Operations on Amazon S3 objects. Amazon S3 Batch Operations can execute a single * operation or action on lists of Amazon S3 objects that you specify. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::CreateJobOutcome CreateJob(const Model::CreateJobRequest& request) const; /** *

You can use Amazon S3 Batch Operations to perform large-scale Batch * Operations on Amazon S3 objects. Amazon S3 Batch Operations can execute a single * operation or action on lists of Amazon S3 objects that you specify. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

You can use Amazon S3 Batch Operations to perform large-scale Batch * Operations on Amazon S3 objects. Amazon S3 Batch Operations can execute a single * operation or action on lists of Amazon S3 objects that you specify. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Deletes the specified access point.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAccessPointOutcome DeleteAccessPoint(const Model::DeleteAccessPointRequest& request) const; /** *

Deletes the specified access point.

See Also:

AWS * API Reference

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

Deletes the specified access point.

See Also:

AWS * API Reference

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

Deletes the access point policy for the specified access point.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteAccessPointPolicyOutcome DeleteAccessPointPolicy(const Model::DeleteAccessPointPolicyRequest& request) const; /** *

Deletes the access point policy for the specified access point.

See * Also:

AWS * API Reference

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

Deletes the access point policy for the specified access point.

See * Also:

AWS * API Reference

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

Removes the entire tag set from the specified Amazon S3 Batch Operations job. * To use this operation, you must have permission to perform the * s3:DeleteJobTagging action. For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::DeleteJobTaggingOutcome DeleteJobTagging(const Model::DeleteJobTaggingRequest& request) const; /** *

Removes the entire tag set from the specified Amazon S3 Batch Operations job. * To use this operation, you must have permission to perform the * s3:DeleteJobTagging action. For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

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

Removes the entire tag set from the specified Amazon S3 Batch Operations job. * To use this operation, you must have permission to perform the * s3:DeleteJobTagging action. For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

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

Removes the PublicAccessBlock configuration for an Amazon Web * Services account.

See Also:

AWS * API Reference

*/ virtual Model::DeletePublicAccessBlockOutcome DeletePublicAccessBlock(const Model::DeletePublicAccessBlockRequest& request) const; /** *

Removes the PublicAccessBlock configuration for an Amazon Web * Services 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::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const Model::DeletePublicAccessBlockRequest& request) const; /** *

Removes the PublicAccessBlock configuration for an Amazon Web * Services account.

See Also:

AWS * API Reference

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

Retrieves the configuration parameters and status for a Batch Operations job. * For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

* AWS * API Reference

*/ virtual Model::DescribeJobOutcome DescribeJob(const Model::DescribeJobRequest& request) const; /** *

Retrieves the configuration parameters and status for a Batch Operations job. * For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

* AWS * API Reference

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

Retrieves the configuration parameters and status for a Batch Operations job. * For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

* AWS * API Reference

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

Returns configuration information about the specified access * point.

See Also:

AWS * API Reference

*/ virtual Model::GetAccessPointOutcome GetAccessPoint(const Model::GetAccessPointRequest& request) const; /** *

Returns configuration information about the specified access * point.

See Also:

AWS * API Reference

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

Returns configuration information about the specified access * point.

See Also:

AWS * API Reference

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

Returns the access point policy associated with the specified access * point.

See Also:

AWS * API Reference

*/ virtual Model::GetAccessPointPolicyOutcome GetAccessPointPolicy(const Model::GetAccessPointPolicyRequest& request) const; /** *

Returns the access point policy associated with the specified access * point.

See Also:

AWS * API Reference

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

Returns the access point policy associated with the specified access * point.

See Also:

AWS * API Reference

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

Indicates whether the specified access point currently has a policy that * allows public access. For more information about public access through access * points, see Managing * Data Access with Amazon S3 Access Points in the Amazon Simple Storage * Service Developer Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetAccessPointPolicyStatusOutcome GetAccessPointPolicyStatus(const Model::GetAccessPointPolicyStatusRequest& request) const; /** *

Indicates whether the specified access point currently has a policy that * allows public access. For more information about public access through access * points, see Managing * Data Access with Amazon S3 Access Points in the Amazon Simple Storage * Service 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::GetAccessPointPolicyStatusOutcomeCallable GetAccessPointPolicyStatusCallable(const Model::GetAccessPointPolicyStatusRequest& request) const; /** *

Indicates whether the specified access point currently has a policy that * allows public access. For more information about public access through access * points, see Managing * Data Access with Amazon S3 Access Points in the Amazon Simple Storage * Service Developer Guide.

See Also:

AWS * API Reference

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

Returns the tags on an Amazon S3 Batch Operations job. To use this operation, * you must have permission to perform the s3:GetJobTagging action. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::GetJobTaggingOutcome GetJobTagging(const Model::GetJobTaggingRequest& request) const; /** *

Returns the tags on an Amazon S3 Batch Operations job. To use this operation, * you must have permission to perform the s3:GetJobTagging action. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

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

Returns the tags on an Amazon S3 Batch Operations job. To use this operation, * you must have permission to perform the s3:GetJobTagging action. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

Related actions include:

See Also:

AWS * API Reference

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

Retrieves the PublicAccessBlock configuration for an Amazon Web * Services account.

See Also:

AWS * API Reference

*/ virtual Model::GetPublicAccessBlockOutcome GetPublicAccessBlock(const Model::GetPublicAccessBlockRequest& request) const; /** *

Retrieves the PublicAccessBlock configuration for an Amazon Web * Services 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::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const Model::GetPublicAccessBlockRequest& request) const; /** *

Retrieves the PublicAccessBlock configuration for an Amazon Web * Services account.

See Also:

AWS * API Reference

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

Returns a list of the access points currently associated with the specified * bucket. You can retrieve up to 1000 access points per call. If the specified * bucket has more than 1,000 access points (or the number specified in * maxResults, whichever is less), the response will include a * continuation token that you can use to list the additional access * points.

See Also:

AWS * API Reference

*/ virtual Model::ListAccessPointsOutcome ListAccessPoints(const Model::ListAccessPointsRequest& request) const; /** *

Returns a list of the access points currently associated with the specified * bucket. You can retrieve up to 1000 access points per call. If the specified * bucket has more than 1,000 access points (or the number specified in * maxResults, whichever is less), the response will include a * continuation token that you can use to list the additional access * points.

See Also:

AWS * API Reference

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

Returns a list of the access points currently associated with the specified * bucket. You can retrieve up to 1000 access points per call. If the specified * bucket has more than 1,000 access points (or the number specified in * maxResults, whichever is less), the response will include a * continuation token that you can use to list the additional access * points.

See Also:

AWS * API Reference

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

Lists current Amazon S3 Batch Operations jobs and jobs that have ended within * the last 30 days for the AWS account making the request. For more information, * see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::ListJobsOutcome ListJobs(const Model::ListJobsRequest& request) const; /** *

Lists current Amazon S3 Batch Operations jobs and jobs that have ended within * the last 30 days for the AWS account making the request. For more information, * see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Lists current Amazon S3 Batch Operations jobs and jobs that have ended within * the last 30 days for the AWS account making the request. For more information, * see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Associates an access policy with the specified access point. Each access * point can have only one policy, so a request made to this API replaces any * existing policy associated with the specified access point.

See * Also:

AWS * API Reference

*/ virtual Model::PutAccessPointPolicyOutcome PutAccessPointPolicy(const Model::PutAccessPointPolicyRequest& request) const; /** *

Associates an access policy with the specified access point. Each access * point can have only one policy, so a request made to this API replaces any * existing policy associated with the specified access point.

See * Also:

AWS * API Reference

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

Associates an access policy with the specified access point. Each access * point can have only one policy, so a request made to this API replaces any * existing policy associated with the specified access point.

See * Also:

AWS * API Reference

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

Set the supplied tag-set on an Amazon S3 Batch Operations job.

A tag * is a key-value pair. You can associate Amazon S3 Batch Operations tags with any * job by sending a PUT request against the tagging subresource that is associated * with the job. To modify the existing tag set, you can either replace the * existing tag set entirely, or make changes within the existing tag set by * retrieving the existing tag set using GetJobTagging, modify that tag set, * and use this API action to replace the tag set with the one you have modified.. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

  • If you send this request with an empty tag set, Amazon S3 * deletes the existing tag set on the Batch Operations job. If you use this * method, you will be charged for a Tier 1 Request (PUT). For more information, * see Amazon S3 pricing.

  • *
  • For deleting existing tags for your batch operations job, * DeleteJobTagging request is preferred because it achieves the same result * without incurring charges.

  • A few things to consider about * using tags:

    • Amazon S3 limits the maximum number of tags to 50 * tags per job.

    • You can associate up to 50 tags with a job as * long as they have unique tag keys.

    • A tag key can be up to 128 * Unicode characters in length, and tag values can be up to 256 Unicode characters * in length.

    • The key and values are case sensitive.

    • *
    • For tagging-related restrictions related to characters and encodings, * see User-Defined * Tag Restrictions.

To use this * operation, you must have permission to perform the s3:PutJobTagging * action.

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::PutJobTaggingOutcome PutJobTagging(const Model::PutJobTaggingRequest& request) const; /** *

Set the supplied tag-set on an Amazon S3 Batch Operations job.

A tag * is a key-value pair. You can associate Amazon S3 Batch Operations tags with any * job by sending a PUT request against the tagging subresource that is associated * with the job. To modify the existing tag set, you can either replace the * existing tag set entirely, or make changes within the existing tag set by * retrieving the existing tag set using GetJobTagging, modify that tag set, * and use this API action to replace the tag set with the one you have modified.. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

  • If you send this request with an empty tag set, Amazon S3 * deletes the existing tag set on the Batch Operations job. If you use this * method, you will be charged for a Tier 1 Request (PUT). For more information, * see Amazon S3 pricing.

  • *
  • For deleting existing tags for your batch operations job, * DeleteJobTagging request is preferred because it achieves the same result * without incurring charges.

  • A few things to consider about * using tags:

    • Amazon S3 limits the maximum number of tags to 50 * tags per job.

    • You can associate up to 50 tags with a job as * long as they have unique tag keys.

    • A tag key can be up to 128 * Unicode characters in length, and tag values can be up to 256 Unicode characters * in length.

    • The key and values are case sensitive.

    • *
    • For tagging-related restrictions related to characters and encodings, * see User-Defined * Tag Restrictions.

To use this * operation, you must have permission to perform the s3:PutJobTagging * action.

Related actions include:

See Also:

AWS * API Reference

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

Set the supplied tag-set on an Amazon S3 Batch Operations job.

A tag * is a key-value pair. You can associate Amazon S3 Batch Operations tags with any * job by sending a PUT request against the tagging subresource that is associated * with the job. To modify the existing tag set, you can either replace the * existing tag set entirely, or make changes within the existing tag set by * retrieving the existing tag set using GetJobTagging, modify that tag set, * and use this API action to replace the tag set with the one you have modified.. * For more information, see Using * Job Tags in the Amazon Simple Storage Service Developer Guide.

*

  • If you send this request with an empty tag set, Amazon S3 * deletes the existing tag set on the Batch Operations job. If you use this * method, you will be charged for a Tier 1 Request (PUT). For more information, * see Amazon S3 pricing.

  • *
  • For deleting existing tags for your batch operations job, * DeleteJobTagging request is preferred because it achieves the same result * without incurring charges.

  • A few things to consider about * using tags:

    • Amazon S3 limits the maximum number of tags to 50 * tags per job.

    • You can associate up to 50 tags with a job as * long as they have unique tag keys.

    • A tag key can be up to 128 * Unicode characters in length, and tag values can be up to 256 Unicode characters * in length.

    • The key and values are case sensitive.

    • *
    • For tagging-related restrictions related to characters and encodings, * see User-Defined * Tag Restrictions.

To use this * operation, you must have permission to perform the s3:PutJobTagging * action.

Related actions include:

See Also:

AWS * API Reference

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

Creates or modifies the PublicAccessBlock configuration for an * Amazon Web Services account.

See Also:

AWS * API Reference

*/ virtual Model::PutPublicAccessBlockOutcome PutPublicAccessBlock(const Model::PutPublicAccessBlockRequest& request) const; /** *

Creates or modifies the PublicAccessBlock configuration for an * Amazon Web Services 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::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const Model::PutPublicAccessBlockRequest& request) const; /** *

Creates or modifies the PublicAccessBlock configuration for an * Amazon Web Services account.

See Also:

AWS * API Reference

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

Updates an existing Amazon S3 Batch Operations job's priority. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::UpdateJobPriorityOutcome UpdateJobPriority(const Model::UpdateJobPriorityRequest& request) const; /** *

Updates an existing Amazon S3 Batch Operations job's priority. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Updates an existing Amazon S3 Batch Operations job's priority. For more * information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Updates the status for the specified job. Use this operation to confirm that * you want to run a job or to cancel an existing job. For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

*/ virtual Model::UpdateJobStatusOutcome UpdateJobStatus(const Model::UpdateJobStatusRequest& request) const; /** *

Updates the status for the specified job. Use this operation to confirm that * you want to run a job or to cancel an existing job. For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

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

Updates the status for the specified job. Use this operation to confirm that * you want to run a job or to cancel an existing job. For more information, see Amazon * S3 Batch Operations in the Amazon Simple Storage Service Developer * Guide.

Related actions include:

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateJobStatusAsync(const Model::UpdateJobStatusRequest& request, const UpdateJobStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Client::ClientConfiguration& clientConfiguration); Aws::String ComputeEndpointString(const Aws::String& accountId) const; Aws::String ComputeEndpointString() const; void CreateAccessPointAsyncHelper(const Model::CreateAccessPointRequest& request, const CreateAccessPointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateJobAsyncHelper(const Model::CreateJobRequest& request, const CreateJobResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteAccessPointAsyncHelper(const Model::DeleteAccessPointRequest& request, const DeleteAccessPointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteAccessPointPolicyAsyncHelper(const Model::DeleteAccessPointPolicyRequest& request, const DeleteAccessPointPolicyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteJobTaggingAsyncHelper(const Model::DeleteJobTaggingRequest& request, const DeleteJobTaggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeletePublicAccessBlockAsyncHelper(const Model::DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeJobAsyncHelper(const Model::DescribeJobRequest& request, const DescribeJobResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetAccessPointAsyncHelper(const Model::GetAccessPointRequest& request, const GetAccessPointResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetAccessPointPolicyAsyncHelper(const Model::GetAccessPointPolicyRequest& request, const GetAccessPointPolicyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetAccessPointPolicyStatusAsyncHelper(const Model::GetAccessPointPolicyStatusRequest& request, const GetAccessPointPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetJobTaggingAsyncHelper(const Model::GetJobTaggingRequest& request, const GetJobTaggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetPublicAccessBlockAsyncHelper(const Model::GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListAccessPointsAsyncHelper(const Model::ListAccessPointsRequest& request, const ListAccessPointsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListJobsAsyncHelper(const Model::ListJobsRequest& request, const ListJobsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PutAccessPointPolicyAsyncHelper(const Model::PutAccessPointPolicyRequest& request, const PutAccessPointPolicyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PutJobTaggingAsyncHelper(const Model::PutJobTaggingRequest& request, const PutJobTaggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PutPublicAccessBlockAsyncHelper(const Model::PutPublicAccessBlockRequest& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateJobPriorityAsyncHelper(const Model::UpdateJobPriorityRequest& request, const UpdateJobPriorityResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateJobStatusAsyncHelper(const Model::UpdateJobStatusRequest& request, const UpdateJobStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_baseUri; Aws::String m_scheme; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace S3Control } // namespace Aws