/** * 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 CleanRooms { /** *

Welcome to the Clean Rooms API Reference.

Clean Rooms is an * Amazon Web Services service that helps multiple parties to join their data * together in a secure collaboration workspace. In the collaboration, members who * can query and receive results can get insights into the collective datasets * without either party getting access to the other party's raw data.

To * learn more about Clean Rooms concepts, procedures, and best practices, see the * Clean * Rooms User Guide.

*/ class AWS_CLEANROOMS_API CleanRoomsClient : 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 CleanRoomsClientConfiguration ClientConfigurationType; typedef CleanRoomsEndpointProvider 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. */ CleanRoomsClient(const Aws::CleanRooms::CleanRoomsClientConfiguration& clientConfiguration = Aws::CleanRooms::CleanRoomsClientConfiguration(), 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. */ CleanRoomsClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::CleanRooms::CleanRoomsClientConfiguration& clientConfiguration = Aws::CleanRooms::CleanRoomsClientConfiguration()); /** * 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 */ CleanRoomsClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::CleanRooms::CleanRoomsClientConfiguration& clientConfiguration = Aws::CleanRooms::CleanRoomsClientConfiguration()); /* 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. */ CleanRoomsClient(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. */ CleanRoomsClient(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 */ CleanRoomsClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~CleanRoomsClient(); /** *

Retrieves multiple schemas by their identifiers.

See Also:

* AWS * API Reference

*/ virtual Model::BatchGetSchemaOutcome BatchGetSchema(const Model::BatchGetSchemaRequest& request) const; /** * A Callable wrapper for BatchGetSchema that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::BatchGetSchemaOutcomeCallable BatchGetSchemaCallable(const BatchGetSchemaRequestT& request) const { return SubmitCallable(&CleanRoomsClient::BatchGetSchema, request); } /** * An Async wrapper for BatchGetSchema that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void BatchGetSchemaAsync(const BatchGetSchemaRequestT& request, const BatchGetSchemaResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::BatchGetSchema, request, handler, context); } /** *

Creates a new collaboration.

See Also:

AWS * API Reference

*/ virtual Model::CreateCollaborationOutcome CreateCollaboration(const Model::CreateCollaborationRequest& request) const; /** * A Callable wrapper for CreateCollaboration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateCollaborationOutcomeCallable CreateCollaborationCallable(const CreateCollaborationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::CreateCollaboration, request); } /** * An Async wrapper for CreateCollaboration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateCollaborationAsync(const CreateCollaborationRequestT& request, const CreateCollaborationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::CreateCollaboration, request, handler, context); } /** *

Creates a new configured table resource.

See Also:

AWS * API Reference

*/ virtual Model::CreateConfiguredTableOutcome CreateConfiguredTable(const Model::CreateConfiguredTableRequest& request) const; /** * A Callable wrapper for CreateConfiguredTable that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateConfiguredTableOutcomeCallable CreateConfiguredTableCallable(const CreateConfiguredTableRequestT& request) const { return SubmitCallable(&CleanRoomsClient::CreateConfiguredTable, request); } /** * An Async wrapper for CreateConfiguredTable that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateConfiguredTableAsync(const CreateConfiguredTableRequestT& request, const CreateConfiguredTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::CreateConfiguredTable, request, handler, context); } /** *

Creates a new analysis rule for a configured table. Currently, only one * analysis rule can be created for a given configured table.

See * Also:

AWS * API Reference

*/ virtual Model::CreateConfiguredTableAnalysisRuleOutcome CreateConfiguredTableAnalysisRule(const Model::CreateConfiguredTableAnalysisRuleRequest& request) const; /** * A Callable wrapper for CreateConfiguredTableAnalysisRule that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateConfiguredTableAnalysisRuleOutcomeCallable CreateConfiguredTableAnalysisRuleCallable(const CreateConfiguredTableAnalysisRuleRequestT& request) const { return SubmitCallable(&CleanRoomsClient::CreateConfiguredTableAnalysisRule, request); } /** * An Async wrapper for CreateConfiguredTableAnalysisRule that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateConfiguredTableAnalysisRuleAsync(const CreateConfiguredTableAnalysisRuleRequestT& request, const CreateConfiguredTableAnalysisRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::CreateConfiguredTableAnalysisRule, request, handler, context); } /** *

Creates a configured table association. A configured table association links * a configured table with a collaboration.

See Also:

AWS * API Reference

*/ virtual Model::CreateConfiguredTableAssociationOutcome CreateConfiguredTableAssociation(const Model::CreateConfiguredTableAssociationRequest& request) const; /** * A Callable wrapper for CreateConfiguredTableAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateConfiguredTableAssociationOutcomeCallable CreateConfiguredTableAssociationCallable(const CreateConfiguredTableAssociationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::CreateConfiguredTableAssociation, request); } /** * An Async wrapper for CreateConfiguredTableAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateConfiguredTableAssociationAsync(const CreateConfiguredTableAssociationRequestT& request, const CreateConfiguredTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::CreateConfiguredTableAssociation, request, handler, context); } /** *

Creates a membership for a specific collaboration identifier and joins the * collaboration.

See Also:

AWS * API Reference

*/ virtual Model::CreateMembershipOutcome CreateMembership(const Model::CreateMembershipRequest& request) const; /** * A Callable wrapper for CreateMembership that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateMembershipOutcomeCallable CreateMembershipCallable(const CreateMembershipRequestT& request) const { return SubmitCallable(&CleanRoomsClient::CreateMembership, request); } /** * An Async wrapper for CreateMembership that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateMembershipAsync(const CreateMembershipRequestT& request, const CreateMembershipResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::CreateMembership, request, handler, context); } /** *

Deletes a collaboration. It can only be called by the collaboration * owner.

See Also:

AWS * API Reference

*/ virtual Model::DeleteCollaborationOutcome DeleteCollaboration(const Model::DeleteCollaborationRequest& request) const; /** * A Callable wrapper for DeleteCollaboration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteCollaborationOutcomeCallable DeleteCollaborationCallable(const DeleteCollaborationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteCollaboration, request); } /** * An Async wrapper for DeleteCollaboration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteCollaborationAsync(const DeleteCollaborationRequestT& request, const DeleteCollaborationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteCollaboration, request, handler, context); } /** *

Deletes a configured table.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConfiguredTableOutcome DeleteConfiguredTable(const Model::DeleteConfiguredTableRequest& request) const; /** * A Callable wrapper for DeleteConfiguredTable that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteConfiguredTableOutcomeCallable DeleteConfiguredTableCallable(const DeleteConfiguredTableRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteConfiguredTable, request); } /** * An Async wrapper for DeleteConfiguredTable that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteConfiguredTableAsync(const DeleteConfiguredTableRequestT& request, const DeleteConfiguredTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteConfiguredTable, request, handler, context); } /** *

Deletes a configured table analysis rule.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConfiguredTableAnalysisRuleOutcome DeleteConfiguredTableAnalysisRule(const Model::DeleteConfiguredTableAnalysisRuleRequest& request) const; /** * A Callable wrapper for DeleteConfiguredTableAnalysisRule that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteConfiguredTableAnalysisRuleOutcomeCallable DeleteConfiguredTableAnalysisRuleCallable(const DeleteConfiguredTableAnalysisRuleRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteConfiguredTableAnalysisRule, request); } /** * An Async wrapper for DeleteConfiguredTableAnalysisRule that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteConfiguredTableAnalysisRuleAsync(const DeleteConfiguredTableAnalysisRuleRequestT& request, const DeleteConfiguredTableAnalysisRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteConfiguredTableAnalysisRule, request, handler, context); } /** *

Deletes a configured table association.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConfiguredTableAssociationOutcome DeleteConfiguredTableAssociation(const Model::DeleteConfiguredTableAssociationRequest& request) const; /** * A Callable wrapper for DeleteConfiguredTableAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteConfiguredTableAssociationOutcomeCallable DeleteConfiguredTableAssociationCallable(const DeleteConfiguredTableAssociationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteConfiguredTableAssociation, request); } /** * An Async wrapper for DeleteConfiguredTableAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteConfiguredTableAssociationAsync(const DeleteConfiguredTableAssociationRequestT& request, const DeleteConfiguredTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteConfiguredTableAssociation, request, handler, context); } /** *

Removes the specified member from a collaboration. The removed member is * placed in the Removed status and can't interact with the collaboration. The * removed member's data is inaccessible to active members of the * collaboration.

See Also:

AWS * API Reference

*/ virtual Model::DeleteMemberOutcome DeleteMember(const Model::DeleteMemberRequest& request) const; /** * A Callable wrapper for DeleteMember that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteMemberOutcomeCallable DeleteMemberCallable(const DeleteMemberRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteMember, request); } /** * An Async wrapper for DeleteMember that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteMemberAsync(const DeleteMemberRequestT& request, const DeleteMemberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteMember, request, handler, context); } /** *

Deletes a specified membership. All resources under a membership must be * deleted.

See Also:

AWS * API Reference

*/ virtual Model::DeleteMembershipOutcome DeleteMembership(const Model::DeleteMembershipRequest& request) const; /** * A Callable wrapper for DeleteMembership that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteMembershipOutcomeCallable DeleteMembershipCallable(const DeleteMembershipRequestT& request) const { return SubmitCallable(&CleanRoomsClient::DeleteMembership, request); } /** * An Async wrapper for DeleteMembership that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteMembershipAsync(const DeleteMembershipRequestT& request, const DeleteMembershipResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::DeleteMembership, request, handler, context); } /** *

Returns metadata about a collaboration.

See Also:

AWS * API Reference

*/ virtual Model::GetCollaborationOutcome GetCollaboration(const Model::GetCollaborationRequest& request) const; /** * A Callable wrapper for GetCollaboration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetCollaborationOutcomeCallable GetCollaborationCallable(const GetCollaborationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetCollaboration, request); } /** * An Async wrapper for GetCollaboration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetCollaborationAsync(const GetCollaborationRequestT& request, const GetCollaborationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetCollaboration, request, handler, context); } /** *

Retrieves a configured table.

See Also:

AWS * API Reference

*/ virtual Model::GetConfiguredTableOutcome GetConfiguredTable(const Model::GetConfiguredTableRequest& request) const; /** * A Callable wrapper for GetConfiguredTable that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetConfiguredTableOutcomeCallable GetConfiguredTableCallable(const GetConfiguredTableRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetConfiguredTable, request); } /** * An Async wrapper for GetConfiguredTable that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetConfiguredTableAsync(const GetConfiguredTableRequestT& request, const GetConfiguredTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetConfiguredTable, request, handler, context); } /** *

Retrieves a configured table analysis rule.

See Also:

AWS * API Reference

*/ virtual Model::GetConfiguredTableAnalysisRuleOutcome GetConfiguredTableAnalysisRule(const Model::GetConfiguredTableAnalysisRuleRequest& request) const; /** * A Callable wrapper for GetConfiguredTableAnalysisRule that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetConfiguredTableAnalysisRuleOutcomeCallable GetConfiguredTableAnalysisRuleCallable(const GetConfiguredTableAnalysisRuleRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetConfiguredTableAnalysisRule, request); } /** * An Async wrapper for GetConfiguredTableAnalysisRule that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetConfiguredTableAnalysisRuleAsync(const GetConfiguredTableAnalysisRuleRequestT& request, const GetConfiguredTableAnalysisRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetConfiguredTableAnalysisRule, request, handler, context); } /** *

Retrieves a configured table association.

See Also:

AWS * API Reference

*/ virtual Model::GetConfiguredTableAssociationOutcome GetConfiguredTableAssociation(const Model::GetConfiguredTableAssociationRequest& request) const; /** * A Callable wrapper for GetConfiguredTableAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetConfiguredTableAssociationOutcomeCallable GetConfiguredTableAssociationCallable(const GetConfiguredTableAssociationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetConfiguredTableAssociation, request); } /** * An Async wrapper for GetConfiguredTableAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetConfiguredTableAssociationAsync(const GetConfiguredTableAssociationRequestT& request, const GetConfiguredTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetConfiguredTableAssociation, request, handler, context); } /** *

Retrieves a specified membership for an identifier.

See Also:

* AWS * API Reference

*/ virtual Model::GetMembershipOutcome GetMembership(const Model::GetMembershipRequest& request) const; /** * A Callable wrapper for GetMembership that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetMembershipOutcomeCallable GetMembershipCallable(const GetMembershipRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetMembership, request); } /** * An Async wrapper for GetMembership that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetMembershipAsync(const GetMembershipRequestT& request, const GetMembershipResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetMembership, request, handler, context); } /** *

Returns query processing metadata.

See Also:

AWS * API Reference

*/ virtual Model::GetProtectedQueryOutcome GetProtectedQuery(const Model::GetProtectedQueryRequest& request) const; /** * A Callable wrapper for GetProtectedQuery that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetProtectedQueryOutcomeCallable GetProtectedQueryCallable(const GetProtectedQueryRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetProtectedQuery, request); } /** * An Async wrapper for GetProtectedQuery that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetProtectedQueryAsync(const GetProtectedQueryRequestT& request, const GetProtectedQueryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetProtectedQuery, request, handler, context); } /** *

Retrieves the schema for a relation within a collaboration.

See * Also:

AWS * API Reference

*/ virtual Model::GetSchemaOutcome GetSchema(const Model::GetSchemaRequest& request) const; /** * A Callable wrapper for GetSchema that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetSchemaOutcomeCallable GetSchemaCallable(const GetSchemaRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetSchema, request); } /** * An Async wrapper for GetSchema that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetSchemaAsync(const GetSchemaRequestT& request, const GetSchemaResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetSchema, request, handler, context); } /** *

Retrieves a schema analysis rule.

See Also:

AWS * API Reference

*/ virtual Model::GetSchemaAnalysisRuleOutcome GetSchemaAnalysisRule(const Model::GetSchemaAnalysisRuleRequest& request) const; /** * A Callable wrapper for GetSchemaAnalysisRule that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetSchemaAnalysisRuleOutcomeCallable GetSchemaAnalysisRuleCallable(const GetSchemaAnalysisRuleRequestT& request) const { return SubmitCallable(&CleanRoomsClient::GetSchemaAnalysisRule, request); } /** * An Async wrapper for GetSchemaAnalysisRule that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetSchemaAnalysisRuleAsync(const GetSchemaAnalysisRuleRequestT& request, const GetSchemaAnalysisRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::GetSchemaAnalysisRule, request, handler, context); } /** *

Lists collaborations the caller owns, is active in, or has been invited * to.

See Also:

AWS * API Reference

*/ virtual Model::ListCollaborationsOutcome ListCollaborations(const Model::ListCollaborationsRequest& request) const; /** * A Callable wrapper for ListCollaborations that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListCollaborationsOutcomeCallable ListCollaborationsCallable(const ListCollaborationsRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListCollaborations, request); } /** * An Async wrapper for ListCollaborations that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListCollaborationsAsync(const ListCollaborationsRequestT& request, const ListCollaborationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListCollaborations, request, handler, context); } /** *

Lists configured table associations for a membership.

See * Also:

AWS * API Reference

*/ virtual Model::ListConfiguredTableAssociationsOutcome ListConfiguredTableAssociations(const Model::ListConfiguredTableAssociationsRequest& request) const; /** * A Callable wrapper for ListConfiguredTableAssociations that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListConfiguredTableAssociationsOutcomeCallable ListConfiguredTableAssociationsCallable(const ListConfiguredTableAssociationsRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListConfiguredTableAssociations, request); } /** * An Async wrapper for ListConfiguredTableAssociations that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListConfiguredTableAssociationsAsync(const ListConfiguredTableAssociationsRequestT& request, const ListConfiguredTableAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListConfiguredTableAssociations, request, handler, context); } /** *

Lists configured tables.

See Also:

AWS * API Reference

*/ virtual Model::ListConfiguredTablesOutcome ListConfiguredTables(const Model::ListConfiguredTablesRequest& request) const; /** * A Callable wrapper for ListConfiguredTables that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListConfiguredTablesOutcomeCallable ListConfiguredTablesCallable(const ListConfiguredTablesRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListConfiguredTables, request); } /** * An Async wrapper for ListConfiguredTables that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListConfiguredTablesAsync(const ListConfiguredTablesRequestT& request, const ListConfiguredTablesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListConfiguredTables, request, handler, context); } /** *

Lists all members within a collaboration.

See Also:

AWS * API Reference

*/ virtual Model::ListMembersOutcome ListMembers(const Model::ListMembersRequest& request) const; /** * A Callable wrapper for ListMembers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListMembersOutcomeCallable ListMembersCallable(const ListMembersRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListMembers, request); } /** * An Async wrapper for ListMembers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListMembersAsync(const ListMembersRequestT& request, const ListMembersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListMembers, request, handler, context); } /** *

Lists all memberships resources within the caller's account.

See * Also:

AWS * API Reference

*/ virtual Model::ListMembershipsOutcome ListMemberships(const Model::ListMembershipsRequest& request) const; /** * A Callable wrapper for ListMemberships that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListMembershipsOutcomeCallable ListMembershipsCallable(const ListMembershipsRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListMemberships, request); } /** * An Async wrapper for ListMemberships that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListMembershipsAsync(const ListMembershipsRequestT& request, const ListMembershipsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListMemberships, request, handler, context); } /** *

Lists protected queries, sorted by the most recent query.

See * Also:

AWS * API Reference

*/ virtual Model::ListProtectedQueriesOutcome ListProtectedQueries(const Model::ListProtectedQueriesRequest& request) const; /** * A Callable wrapper for ListProtectedQueries that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListProtectedQueriesOutcomeCallable ListProtectedQueriesCallable(const ListProtectedQueriesRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListProtectedQueries, request); } /** * An Async wrapper for ListProtectedQueries that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListProtectedQueriesAsync(const ListProtectedQueriesRequestT& request, const ListProtectedQueriesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListProtectedQueries, request, handler, context); } /** *

Lists the schemas for relations within a collaboration.

See * Also:

AWS * API Reference

*/ virtual Model::ListSchemasOutcome ListSchemas(const Model::ListSchemasRequest& request) const; /** * A Callable wrapper for ListSchemas that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListSchemasOutcomeCallable ListSchemasCallable(const ListSchemasRequestT& request) const { return SubmitCallable(&CleanRoomsClient::ListSchemas, request); } /** * An Async wrapper for ListSchemas that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListSchemasAsync(const ListSchemasRequestT& request, const ListSchemasResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::ListSchemas, request, handler, context); } /** *

Lists all of the tags that have been added to a resource.

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(&CleanRoomsClient::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(&CleanRoomsClient::ListTagsForResource, request, handler, context); } /** *

Creates a protected query that is started by Clean Rooms .

See * Also:

AWS * API Reference

*/ virtual Model::StartProtectedQueryOutcome StartProtectedQuery(const Model::StartProtectedQueryRequest& request) const; /** * A Callable wrapper for StartProtectedQuery that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartProtectedQueryOutcomeCallable StartProtectedQueryCallable(const StartProtectedQueryRequestT& request) const { return SubmitCallable(&CleanRoomsClient::StartProtectedQuery, request); } /** * An Async wrapper for StartProtectedQuery that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartProtectedQueryAsync(const StartProtectedQueryRequestT& request, const StartProtectedQueryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::StartProtectedQuery, request, handler, context); } /** *

Tags a resource.

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(&CleanRoomsClient::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(&CleanRoomsClient::TagResource, request, handler, context); } /** *

Removes a tag or list of tags from a resource.

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(&CleanRoomsClient::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(&CleanRoomsClient::UntagResource, request, handler, context); } /** *

Updates collaboration metadata and can only be called by the collaboration * owner.

See Also:

AWS * API Reference

*/ virtual Model::UpdateCollaborationOutcome UpdateCollaboration(const Model::UpdateCollaborationRequest& request) const; /** * A Callable wrapper for UpdateCollaboration that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateCollaborationOutcomeCallable UpdateCollaborationCallable(const UpdateCollaborationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateCollaboration, request); } /** * An Async wrapper for UpdateCollaboration that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateCollaborationAsync(const UpdateCollaborationRequestT& request, const UpdateCollaborationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateCollaboration, request, handler, context); } /** *

Updates a configured table.

See Also:

AWS * API Reference

*/ virtual Model::UpdateConfiguredTableOutcome UpdateConfiguredTable(const Model::UpdateConfiguredTableRequest& request) const; /** * A Callable wrapper for UpdateConfiguredTable that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateConfiguredTableOutcomeCallable UpdateConfiguredTableCallable(const UpdateConfiguredTableRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateConfiguredTable, request); } /** * An Async wrapper for UpdateConfiguredTable that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateConfiguredTableAsync(const UpdateConfiguredTableRequestT& request, const UpdateConfiguredTableResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateConfiguredTable, request, handler, context); } /** *

Updates a configured table analysis rule.

See Also:

AWS * API Reference

*/ virtual Model::UpdateConfiguredTableAnalysisRuleOutcome UpdateConfiguredTableAnalysisRule(const Model::UpdateConfiguredTableAnalysisRuleRequest& request) const; /** * A Callable wrapper for UpdateConfiguredTableAnalysisRule that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateConfiguredTableAnalysisRuleOutcomeCallable UpdateConfiguredTableAnalysisRuleCallable(const UpdateConfiguredTableAnalysisRuleRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateConfiguredTableAnalysisRule, request); } /** * An Async wrapper for UpdateConfiguredTableAnalysisRule that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateConfiguredTableAnalysisRuleAsync(const UpdateConfiguredTableAnalysisRuleRequestT& request, const UpdateConfiguredTableAnalysisRuleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateConfiguredTableAnalysisRule, request, handler, context); } /** *

Updates a configured table association.

See Also:

AWS * API Reference

*/ virtual Model::UpdateConfiguredTableAssociationOutcome UpdateConfiguredTableAssociation(const Model::UpdateConfiguredTableAssociationRequest& request) const; /** * A Callable wrapper for UpdateConfiguredTableAssociation that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateConfiguredTableAssociationOutcomeCallable UpdateConfiguredTableAssociationCallable(const UpdateConfiguredTableAssociationRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateConfiguredTableAssociation, request); } /** * An Async wrapper for UpdateConfiguredTableAssociation that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateConfiguredTableAssociationAsync(const UpdateConfiguredTableAssociationRequestT& request, const UpdateConfiguredTableAssociationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateConfiguredTableAssociation, request, handler, context); } /** *

Updates a membership.

See Also:

AWS * API Reference

*/ virtual Model::UpdateMembershipOutcome UpdateMembership(const Model::UpdateMembershipRequest& request) const; /** * A Callable wrapper for UpdateMembership that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateMembershipOutcomeCallable UpdateMembershipCallable(const UpdateMembershipRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateMembership, request); } /** * An Async wrapper for UpdateMembership that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateMembershipAsync(const UpdateMembershipRequestT& request, const UpdateMembershipResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateMembership, request, handler, context); } /** *

Updates the processing of a currently running query.

See Also:

* AWS * API Reference

*/ virtual Model::UpdateProtectedQueryOutcome UpdateProtectedQuery(const Model::UpdateProtectedQueryRequest& request) const; /** * A Callable wrapper for UpdateProtectedQuery that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateProtectedQueryOutcomeCallable UpdateProtectedQueryCallable(const UpdateProtectedQueryRequestT& request) const { return SubmitCallable(&CleanRoomsClient::UpdateProtectedQuery, request); } /** * An Async wrapper for UpdateProtectedQuery that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateProtectedQueryAsync(const UpdateProtectedQueryRequestT& request, const UpdateProtectedQueryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CleanRoomsClient::UpdateProtectedQuery, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const CleanRoomsClientConfiguration& clientConfiguration); CleanRoomsClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace CleanRooms } // namespace Aws