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