/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
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 Utils
namespace Auth
{
class AWSCredentials;
class AWSCredentialsProvider;
} // namespace Auth
namespace Client
{
class RetryStrategy;
} // namespace Client
namespace ManagedBlockchain
{
namespace Model
{
class CreateMemberRequest;
class CreateNetworkRequest;
class CreateNodeRequest;
class CreateProposalRequest;
class DeleteMemberRequest;
class DeleteNodeRequest;
class GetMemberRequest;
class GetNetworkRequest;
class GetNodeRequest;
class GetProposalRequest;
class ListInvitationsRequest;
class ListMembersRequest;
class ListNetworksRequest;
class ListNodesRequest;
class ListProposalVotesRequest;
class ListProposalsRequest;
class RejectInvitationRequest;
class UpdateMemberRequest;
class UpdateNodeRequest;
class VoteOnProposalRequest;
typedef Aws::Utils::Outcome CreateMemberOutcome;
typedef Aws::Utils::Outcome CreateNetworkOutcome;
typedef Aws::Utils::Outcome CreateNodeOutcome;
typedef Aws::Utils::Outcome CreateProposalOutcome;
typedef Aws::Utils::Outcome DeleteMemberOutcome;
typedef Aws::Utils::Outcome DeleteNodeOutcome;
typedef Aws::Utils::Outcome GetMemberOutcome;
typedef Aws::Utils::Outcome GetNetworkOutcome;
typedef Aws::Utils::Outcome GetNodeOutcome;
typedef Aws::Utils::Outcome GetProposalOutcome;
typedef Aws::Utils::Outcome ListInvitationsOutcome;
typedef Aws::Utils::Outcome ListMembersOutcome;
typedef Aws::Utils::Outcome ListNetworksOutcome;
typedef Aws::Utils::Outcome ListNodesOutcome;
typedef Aws::Utils::Outcome ListProposalVotesOutcome;
typedef Aws::Utils::Outcome ListProposalsOutcome;
typedef Aws::Utils::Outcome RejectInvitationOutcome;
typedef Aws::Utils::Outcome UpdateMemberOutcome;
typedef Aws::Utils::Outcome UpdateNodeOutcome;
typedef Aws::Utils::Outcome VoteOnProposalOutcome;
typedef std::future CreateMemberOutcomeCallable;
typedef std::future CreateNetworkOutcomeCallable;
typedef std::future CreateNodeOutcomeCallable;
typedef std::future CreateProposalOutcomeCallable;
typedef std::future DeleteMemberOutcomeCallable;
typedef std::future DeleteNodeOutcomeCallable;
typedef std::future GetMemberOutcomeCallable;
typedef std::future GetNetworkOutcomeCallable;
typedef std::future GetNodeOutcomeCallable;
typedef std::future GetProposalOutcomeCallable;
typedef std::future ListInvitationsOutcomeCallable;
typedef std::future ListMembersOutcomeCallable;
typedef std::future ListNetworksOutcomeCallable;
typedef std::future ListNodesOutcomeCallable;
typedef std::future ListProposalVotesOutcomeCallable;
typedef std::future ListProposalsOutcomeCallable;
typedef std::future RejectInvitationOutcomeCallable;
typedef std::future UpdateMemberOutcomeCallable;
typedef std::future UpdateNodeOutcomeCallable;
typedef std::future VoteOnProposalOutcomeCallable;
} // namespace Model
class ManagedBlockchainClient;
typedef std::function&) > CreateMemberResponseReceivedHandler;
typedef std::function&) > CreateNetworkResponseReceivedHandler;
typedef std::function&) > CreateNodeResponseReceivedHandler;
typedef std::function&) > CreateProposalResponseReceivedHandler;
typedef std::function&) > DeleteMemberResponseReceivedHandler;
typedef std::function&) > DeleteNodeResponseReceivedHandler;
typedef std::function&) > GetMemberResponseReceivedHandler;
typedef std::function&) > GetNetworkResponseReceivedHandler;
typedef std::function&) > GetNodeResponseReceivedHandler;
typedef std::function&) > GetProposalResponseReceivedHandler;
typedef std::function&) > ListInvitationsResponseReceivedHandler;
typedef std::function&) > ListMembersResponseReceivedHandler;
typedef std::function&) > ListNetworksResponseReceivedHandler;
typedef std::function&) > ListNodesResponseReceivedHandler;
typedef std::function&) > ListProposalVotesResponseReceivedHandler;
typedef std::function&) > ListProposalsResponseReceivedHandler;
typedef std::function&) > RejectInvitationResponseReceivedHandler;
typedef std::function&) > UpdateMemberResponseReceivedHandler;
typedef std::function&) > UpdateNodeResponseReceivedHandler;
typedef std::function&) > VoteOnProposalResponseReceivedHandler;
/**
* Amazon Managed Blockchain is a fully managed service for creating and
* managing blockchain networks using open source frameworks. Blockchain allows you
* to build applications where multiple parties can securely and transparently run
* transactions and share data without the need for a trusted, central authority.
* Currently, Managed Blockchain supports the Hyperledger Fabric open source
* framework.
*/
class AWS_MANAGEDBLOCKCHAIN_API ManagedBlockchainClient : public Aws::Client::AWSJsonClient
{
public:
typedef Aws::Client::AWSJsonClient 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.
*/
ManagedBlockchainClient(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.
*/
ManagedBlockchainClient(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
*/
ManagedBlockchainClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
virtual ~ManagedBlockchainClient();
/**
* Creates a member within a Managed Blockchain network.
See
* Also:
AWS
* API Reference
*/
virtual Model::CreateMemberOutcome CreateMember(const Model::CreateMemberRequest& request) const;
/**
* Creates a member within a Managed Blockchain network.
See
* Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateMemberOutcomeCallable CreateMemberCallable(const Model::CreateMemberRequest& request) const;
/**
* Creates a member within a Managed Blockchain network.
See
* Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateMemberAsync(const Model::CreateMemberRequest& request, const CreateMemberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates a new blockchain network using Amazon Managed
* Blockchain.
See Also:
AWS
* API Reference
*/
virtual Model::CreateNetworkOutcome CreateNetwork(const Model::CreateNetworkRequest& request) const;
/**
* Creates a new blockchain network using Amazon Managed
* Blockchain.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateNetworkOutcomeCallable CreateNetworkCallable(const Model::CreateNetworkRequest& request) const;
/**
* Creates a new blockchain network using Amazon Managed
* Blockchain.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateNetworkAsync(const Model::CreateNetworkRequest& request, const CreateNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates a peer node in a member.
See Also:
AWS
* API Reference
*/
virtual Model::CreateNodeOutcome CreateNode(const Model::CreateNodeRequest& request) const;
/**
* Creates a peer node in a member.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateNodeOutcomeCallable CreateNodeCallable(const Model::CreateNodeRequest& request) const;
/**
* Creates a peer node in a member.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateNodeAsync(const Model::CreateNodeRequest& request, const CreateNodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates a proposal for a change to the network that other members of the
* network can vote on, for example, a proposal to add a new member to the network.
* Any member can create a proposal.
See Also:
AWS
* API Reference
*/
virtual Model::CreateProposalOutcome CreateProposal(const Model::CreateProposalRequest& request) const;
/**
* Creates a proposal for a change to the network that other members of the
* network can vote on, for example, a proposal to add a new member to the network.
* Any member can create a proposal.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateProposalOutcomeCallable CreateProposalCallable(const Model::CreateProposalRequest& request) const;
/**
* Creates a proposal for a change to the network that other members of the
* network can vote on, for example, a proposal to add a new member to the network.
* Any member can create a proposal.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateProposalAsync(const Model::CreateProposalRequest& request, const CreateProposalResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Deletes a member. Deleting a member removes the member and all associated
* resources from the network. DeleteMember can only be called for a
* specified MemberId if the principal performing the action is
* associated with the AWS account that owns the member. In all other cases, the
* DeleteMember action is carried out as the result of an approved
* proposal to remove a member. If MemberId is the last member in a
* network specified by the last AWS account, the network is deleted
* also.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteMemberOutcome DeleteMember(const Model::DeleteMemberRequest& request) const;
/**
* Deletes a member. Deleting a member removes the member and all associated
* resources from the network. DeleteMember can only be called for a
* specified MemberId if the principal performing the action is
* associated with the AWS account that owns the member. In all other cases, the
* DeleteMember action is carried out as the result of an approved
* proposal to remove a member. If MemberId is the last member in a
* network specified by the last AWS account, the network is deleted
* also.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteMemberOutcomeCallable DeleteMemberCallable(const Model::DeleteMemberRequest& request) const;
/**
* Deletes a member. Deleting a member removes the member and all associated
* resources from the network. DeleteMember can only be called for a
* specified MemberId if the principal performing the action is
* associated with the AWS account that owns the member. In all other cases, the
* DeleteMember action is carried out as the result of an approved
* proposal to remove a member. If MemberId is the last member in a
* network specified by the last AWS account, the network is deleted
* also.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteMemberAsync(const Model::DeleteMemberRequest& request, const DeleteMemberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Deletes a peer node from a member that your AWS account owns. All data on the
* node is lost and cannot be recovered.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteNodeOutcome DeleteNode(const Model::DeleteNodeRequest& request) const;
/**
* Deletes a peer node from a member that your AWS account owns. All data on the
* node is lost and cannot be recovered.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteNodeOutcomeCallable DeleteNodeCallable(const Model::DeleteNodeRequest& request) const;
/**
* Deletes a peer node from a member that your AWS account owns. All data on the
* node is lost and cannot be recovered.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteNodeAsync(const Model::DeleteNodeRequest& request, const DeleteNodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns detailed information about a member.
See Also:
AWS
* API Reference
*/
virtual Model::GetMemberOutcome GetMember(const Model::GetMemberRequest& request) const;
/**
* Returns detailed information about a member.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetMemberOutcomeCallable GetMemberCallable(const Model::GetMemberRequest& request) const;
/**
* Returns detailed information about a member.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetMemberAsync(const Model::GetMemberRequest& request, const GetMemberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns detailed information about a network.
See Also:
AWS
* API Reference
*/
virtual Model::GetNetworkOutcome GetNetwork(const Model::GetNetworkRequest& request) const;
/**
* Returns detailed information about a network.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetNetworkOutcomeCallable GetNetworkCallable(const Model::GetNetworkRequest& request) const;
/**
* Returns detailed information about a network.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetNetworkAsync(const Model::GetNetworkRequest& request, const GetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns detailed information about a peer node.
See Also:
AWS
* API Reference
*/
virtual Model::GetNodeOutcome GetNode(const Model::GetNodeRequest& request) const;
/**
* Returns detailed information about a peer node.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetNodeOutcomeCallable GetNodeCallable(const Model::GetNodeRequest& request) const;
/**
* Returns detailed information about a peer node.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetNodeAsync(const Model::GetNodeRequest& request, const GetNodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns detailed information about a proposal.
See Also:
AWS
* API Reference
*/
virtual Model::GetProposalOutcome GetProposal(const Model::GetProposalRequest& request) const;
/**
* Returns detailed information about a proposal.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetProposalOutcomeCallable GetProposalCallable(const Model::GetProposalRequest& request) const;
/**
* Returns detailed information about a proposal.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetProposalAsync(const Model::GetProposalRequest& request, const GetProposalResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns a listing of all invitations made on the specified
* network.
See Also:
AWS
* API Reference
*/
virtual Model::ListInvitationsOutcome ListInvitations(const Model::ListInvitationsRequest& request) const;
/**
* Returns a listing of all invitations made on the specified
* network.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListInvitationsOutcomeCallable ListInvitationsCallable(const Model::ListInvitationsRequest& request) const;
/**
* Returns a listing of all invitations made on the specified
* network.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListInvitationsAsync(const Model::ListInvitationsRequest& request, const ListInvitationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns a listing of the members in a network and properties of their
* configurations.
See Also:
AWS
* API Reference
*/
virtual Model::ListMembersOutcome ListMembers(const Model::ListMembersRequest& request) const;
/**
* Returns a listing of the members in a network and properties of their
* configurations.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListMembersOutcomeCallable ListMembersCallable(const Model::ListMembersRequest& request) const;
/**
* Returns a listing of the members in a network and properties of their
* configurations.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListMembersAsync(const Model::ListMembersRequest& request, const ListMembersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns information about the networks in which the current AWS account has
* members.
See Also:
AWS
* API Reference
*/
virtual Model::ListNetworksOutcome ListNetworks(const Model::ListNetworksRequest& request) const;
/**
* Returns information about the networks in which the current AWS account has
* members.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListNetworksOutcomeCallable ListNetworksCallable(const Model::ListNetworksRequest& request) const;
/**
* Returns information about the networks in which the current AWS account has
* members.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListNetworksAsync(const Model::ListNetworksRequest& request, const ListNetworksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns information about the nodes within a network.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListNodesOutcome ListNodes(const Model::ListNodesRequest& request) const;
/**
* Returns information about the nodes within a network.
See
* Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListNodesOutcomeCallable ListNodesCallable(const Model::ListNodesRequest& request) const;
/**
* Returns information about the nodes within a network.
See
* Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListNodesAsync(const Model::ListNodesRequest& request, const ListNodesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns the listing of votes for a specified proposal, including the value of
* each vote and the unique identifier of the member that cast the
* vote.
See Also:
AWS
* API Reference
*/
virtual Model::ListProposalVotesOutcome ListProposalVotes(const Model::ListProposalVotesRequest& request) const;
/**
* Returns the listing of votes for a specified proposal, including the value of
* each vote and the unique identifier of the member that cast the
* vote.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListProposalVotesOutcomeCallable ListProposalVotesCallable(const Model::ListProposalVotesRequest& request) const;
/**
* Returns the listing of votes for a specified proposal, including the value of
* each vote and the unique identifier of the member that cast the
* vote.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListProposalVotesAsync(const Model::ListProposalVotesRequest& request, const ListProposalVotesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Returns a listing of proposals for the network.
See Also:
AWS
* API Reference
*/
virtual Model::ListProposalsOutcome ListProposals(const Model::ListProposalsRequest& request) const;
/**
* Returns a listing of proposals for the network.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListProposalsOutcomeCallable ListProposalsCallable(const Model::ListProposalsRequest& request) const;
/**
* Returns a listing of proposals for the network.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListProposalsAsync(const Model::ListProposalsRequest& request, const ListProposalsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Rejects an invitation to join a network. This action can be called by a
* principal in an AWS account that has received an invitation to create a member
* and join a network.
See Also:
AWS
* API Reference
*/
virtual Model::RejectInvitationOutcome RejectInvitation(const Model::RejectInvitationRequest& request) const;
/**
* Rejects an invitation to join a network. This action can be called by a
* principal in an AWS account that has received an invitation to create a member
* and join a network.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::RejectInvitationOutcomeCallable RejectInvitationCallable(const Model::RejectInvitationRequest& request) const;
/**
* Rejects an invitation to join a network. This action can be called by a
* principal in an AWS account that has received an invitation to create a member
* and join a network.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void RejectInvitationAsync(const Model::RejectInvitationRequest& request, const RejectInvitationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Updates a member configuration with new parameters.
See Also:
* AWS
* API Reference
*/
virtual Model::UpdateMemberOutcome UpdateMember(const Model::UpdateMemberRequest& request) const;
/**
* Updates a member configuration with new parameters.
See Also:
* AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateMemberOutcomeCallable UpdateMemberCallable(const Model::UpdateMemberRequest& request) const;
/**
* Updates a member configuration with new parameters.
See Also:
* AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateMemberAsync(const Model::UpdateMemberRequest& request, const UpdateMemberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Updates a node configuration with new parameters.
See Also:
* AWS
* API Reference
*/
virtual Model::UpdateNodeOutcome UpdateNode(const Model::UpdateNodeRequest& request) const;
/**
* Updates a node configuration with new parameters.
See Also:
* AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateNodeOutcomeCallable UpdateNodeCallable(const Model::UpdateNodeRequest& request) const;
/**
* Updates a node configuration with new parameters.
See Also:
* AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateNodeAsync(const Model::UpdateNodeRequest& request, const UpdateNodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Casts a vote for a specified ProposalId on behalf of a member.
* The member to vote as, specified by VoterMemberId, must be in the
* same AWS account as the principal that calls the action.
See
* Also:
AWS
* API Reference
*/
virtual Model::VoteOnProposalOutcome VoteOnProposal(const Model::VoteOnProposalRequest& request) const;
/**
* Casts a vote for a specified ProposalId on behalf of a member.
* The member to vote as, specified by VoterMemberId, must be in the
* same AWS account as the principal that calls the action.
See
* Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::VoteOnProposalOutcomeCallable VoteOnProposalCallable(const Model::VoteOnProposalRequest& request) const;
/**
* Casts a vote for a specified ProposalId on behalf of a member.
* The member to vote as, specified by VoterMemberId, must be in the
* same AWS account as the principal that calls the action.
See
* Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void VoteOnProposalAsync(const Model::VoteOnProposalRequest& request, const VoteOnProposalResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
void OverrideEndpoint(const Aws::String& endpoint);
private:
void init(const Aws::Client::ClientConfiguration& clientConfiguration);
void CreateMemberAsyncHelper(const Model::CreateMemberRequest& request, const CreateMemberResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateNetworkAsyncHelper(const Model::CreateNetworkRequest& request, const CreateNetworkResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateNodeAsyncHelper(const Model::CreateNodeRequest& request, const CreateNodeResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateProposalAsyncHelper(const Model::CreateProposalRequest& request, const CreateProposalResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DeleteMemberAsyncHelper(const Model::DeleteMemberRequest& request, const DeleteMemberResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DeleteNodeAsyncHelper(const Model::DeleteNodeRequest& request, const DeleteNodeResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void GetMemberAsyncHelper(const Model::GetMemberRequest& request, const GetMemberResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void GetNetworkAsyncHelper(const Model::GetNetworkRequest& request, const GetNetworkResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void GetNodeAsyncHelper(const Model::GetNodeRequest& request, const GetNodeResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void GetProposalAsyncHelper(const Model::GetProposalRequest& request, const GetProposalResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListInvitationsAsyncHelper(const Model::ListInvitationsRequest& request, const ListInvitationsResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListMembersAsyncHelper(const Model::ListMembersRequest& request, const ListMembersResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListNetworksAsyncHelper(const Model::ListNetworksRequest& request, const ListNetworksResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListNodesAsyncHelper(const Model::ListNodesRequest& request, const ListNodesResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListProposalVotesAsyncHelper(const Model::ListProposalVotesRequest& request, const ListProposalVotesResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListProposalsAsyncHelper(const Model::ListProposalsRequest& request, const ListProposalsResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void RejectInvitationAsyncHelper(const Model::RejectInvitationRequest& request, const RejectInvitationResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void UpdateMemberAsyncHelper(const Model::UpdateMemberRequest& request, const UpdateMemberResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void UpdateNodeAsyncHelper(const Model::UpdateNodeRequest& request, const UpdateNodeResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void VoteOnProposalAsyncHelper(const Model::VoteOnProposalRequest& request, const VoteOnProposalResponseReceivedHandler& handler, const std::shared_ptr& context) const;
Aws::String m_uri;
Aws::String m_configScheme;
std::shared_ptr m_executor;
};
} // namespace ManagedBlockchain
} // namespace Aws