430 lines
20 KiB
C++
430 lines
20 KiB
C++
|
|
/**
|
|||
|
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|||
|
|
* SPDX-License-Identifier: Apache-2.0.
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#include <aws/core/utils/Outcome.h>
|
|||
|
|
#include <aws/core/auth/AWSAuthSigner.h>
|
|||
|
|
#include <aws/core/client/CoreErrors.h>
|
|||
|
|
#include <aws/core/client/RetryStrategy.h>
|
|||
|
|
#include <aws/core/http/HttpClient.h>
|
|||
|
|
#include <aws/core/http/HttpResponse.h>
|
|||
|
|
#include <aws/core/http/HttpClientFactory.h>
|
|||
|
|
#include <aws/core/auth/AWSCredentialsProviderChain.h>
|
|||
|
|
#include <aws/core/utils/json/JsonSerializer.h>
|
|||
|
|
#include <aws/core/utils/memory/stl/AWSStringStream.h>
|
|||
|
|
#include <aws/core/utils/threading/Executor.h>
|
|||
|
|
#include <aws/core/utils/DNS.h>
|
|||
|
|
#include <aws/core/utils/logging/LogMacros.h>
|
|||
|
|
|
|||
|
|
#include <aws/detective/DetectiveClient.h>
|
|||
|
|
#include <aws/detective/DetectiveEndpoint.h>
|
|||
|
|
#include <aws/detective/DetectiveErrorMarshaller.h>
|
|||
|
|
#include <aws/detective/model/AcceptInvitationRequest.h>
|
|||
|
|
#include <aws/detective/model/CreateMembersRequest.h>
|
|||
|
|
#include <aws/detective/model/DeleteGraphRequest.h>
|
|||
|
|
#include <aws/detective/model/DeleteMembersRequest.h>
|
|||
|
|
#include <aws/detective/model/DisassociateMembershipRequest.h>
|
|||
|
|
#include <aws/detective/model/GetMembersRequest.h>
|
|||
|
|
#include <aws/detective/model/ListGraphsRequest.h>
|
|||
|
|
#include <aws/detective/model/ListInvitationsRequest.h>
|
|||
|
|
#include <aws/detective/model/ListMembersRequest.h>
|
|||
|
|
#include <aws/detective/model/RejectInvitationRequest.h>
|
|||
|
|
#include <aws/detective/model/StartMonitoringMemberRequest.h>
|
|||
|
|
|
|||
|
|
using namespace Aws;
|
|||
|
|
using namespace Aws::Auth;
|
|||
|
|
using namespace Aws::Client;
|
|||
|
|
using namespace Aws::Detective;
|
|||
|
|
using namespace Aws::Detective::Model;
|
|||
|
|
using namespace Aws::Http;
|
|||
|
|
using namespace Aws::Utils::Json;
|
|||
|
|
|
|||
|
|
static const char* SERVICE_NAME = "detective";
|
|||
|
|
static const char* ALLOCATION_TAG = "DetectiveClient";
|
|||
|
|
|
|||
|
|
|
|||
|
|
DetectiveClient::DetectiveClient(const Client::ClientConfiguration& clientConfiguration) :
|
|||
|
|
BASECLASS(clientConfiguration,
|
|||
|
|
Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
|
|||
|
|
SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
|
|||
|
|
Aws::MakeShared<DetectiveErrorMarshaller>(ALLOCATION_TAG)),
|
|||
|
|
m_executor(clientConfiguration.executor)
|
|||
|
|
{
|
|||
|
|
init(clientConfiguration);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DetectiveClient::DetectiveClient(const AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration) :
|
|||
|
|
BASECLASS(clientConfiguration,
|
|||
|
|
Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
|
|||
|
|
SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
|
|||
|
|
Aws::MakeShared<DetectiveErrorMarshaller>(ALLOCATION_TAG)),
|
|||
|
|
m_executor(clientConfiguration.executor)
|
|||
|
|
{
|
|||
|
|
init(clientConfiguration);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DetectiveClient::DetectiveClient(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
|
|||
|
|
const Client::ClientConfiguration& clientConfiguration) :
|
|||
|
|
BASECLASS(clientConfiguration,
|
|||
|
|
Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, credentialsProvider,
|
|||
|
|
SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region)),
|
|||
|
|
Aws::MakeShared<DetectiveErrorMarshaller>(ALLOCATION_TAG)),
|
|||
|
|
m_executor(clientConfiguration.executor)
|
|||
|
|
{
|
|||
|
|
init(clientConfiguration);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DetectiveClient::~DetectiveClient()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::init(const ClientConfiguration& config)
|
|||
|
|
{
|
|||
|
|
SetServiceClientName("Detective");
|
|||
|
|
m_configScheme = SchemeMapper::ToString(config.scheme);
|
|||
|
|
if (config.endpointOverride.empty())
|
|||
|
|
{
|
|||
|
|
m_uri = m_configScheme + "://" + DetectiveEndpoint::ForRegion(config.region, config.useDualStack);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
OverrideEndpoint(config.endpointOverride);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::OverrideEndpoint(const Aws::String& endpoint)
|
|||
|
|
{
|
|||
|
|
if (endpoint.compare(0, 7, "http://") == 0 || endpoint.compare(0, 8, "https://") == 0)
|
|||
|
|
{
|
|||
|
|
m_uri = endpoint;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
m_uri = m_configScheme + "://" + endpoint;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
AcceptInvitationOutcome DetectiveClient::AcceptInvitation(const AcceptInvitationRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/invitation";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return AcceptInvitationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
AcceptInvitationOutcomeCallable DetectiveClient::AcceptInvitationCallable(const AcceptInvitationRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< AcceptInvitationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->AcceptInvitation(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::AcceptInvitationAsync(const AcceptInvitationRequest& request, const AcceptInvitationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->AcceptInvitationAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::AcceptInvitationAsyncHelper(const AcceptInvitationRequest& request, const AcceptInvitationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, AcceptInvitation(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
CreateGraphOutcome DetectiveClient::CreateGraph() const
|
|||
|
|
{
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << m_uri << "/graph";
|
|||
|
|
return CreateGraphOutcome(MakeRequest(ss.str(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, "CreateGraph"));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
CreateGraphOutcomeCallable DetectiveClient::CreateGraphCallable() const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< CreateGraphOutcome() > >(ALLOCATION_TAG, [this](){ return this->CreateGraph(); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::CreateGraphAsync(const CreateGraphResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, handler, context](){ this->CreateGraphAsyncHelper( handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::CreateGraphAsyncHelper(const CreateGraphResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, CreateGraph(), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
CreateMembersOutcome DetectiveClient::CreateMembers(const CreateMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/members";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return CreateMembersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
CreateMembersOutcomeCallable DetectiveClient::CreateMembersCallable(const CreateMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< CreateMembersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateMembers(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::CreateMembersAsync(const CreateMembersRequest& request, const CreateMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->CreateMembersAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::CreateMembersAsyncHelper(const CreateMembersRequest& request, const CreateMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, CreateMembers(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DeleteGraphOutcome DetectiveClient::DeleteGraph(const DeleteGraphRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/removal";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return DeleteGraphOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DeleteGraphOutcomeCallable DetectiveClient::DeleteGraphCallable(const DeleteGraphRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< DeleteGraphOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteGraph(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DeleteGraphAsync(const DeleteGraphRequest& request, const DeleteGraphResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->DeleteGraphAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DeleteGraphAsyncHelper(const DeleteGraphRequest& request, const DeleteGraphResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, DeleteGraph(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DeleteMembersOutcome DetectiveClient::DeleteMembers(const DeleteMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/members/removal";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return DeleteMembersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DeleteMembersOutcomeCallable DetectiveClient::DeleteMembersCallable(const DeleteMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< DeleteMembersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteMembers(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DeleteMembersAsync(const DeleteMembersRequest& request, const DeleteMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->DeleteMembersAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DeleteMembersAsyncHelper(const DeleteMembersRequest& request, const DeleteMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, DeleteMembers(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DisassociateMembershipOutcome DetectiveClient::DisassociateMembership(const DisassociateMembershipRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/membership/removal";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return DisassociateMembershipOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DisassociateMembershipOutcomeCallable DetectiveClient::DisassociateMembershipCallable(const DisassociateMembershipRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< DisassociateMembershipOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DisassociateMembership(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DisassociateMembershipAsync(const DisassociateMembershipRequest& request, const DisassociateMembershipResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->DisassociateMembershipAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::DisassociateMembershipAsyncHelper(const DisassociateMembershipRequest& request, const DisassociateMembershipResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, DisassociateMembership(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
GetMembersOutcome DetectiveClient::GetMembers(const GetMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/members/get";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return GetMembersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
GetMembersOutcomeCallable DetectiveClient::GetMembersCallable(const GetMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< GetMembersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetMembers(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::GetMembersAsync(const GetMembersRequest& request, const GetMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->GetMembersAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::GetMembersAsyncHelper(const GetMembersRequest& request, const GetMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, GetMembers(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListGraphsOutcome DetectiveClient::ListGraphs(const ListGraphsRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graphs/list";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return ListGraphsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListGraphsOutcomeCallable DetectiveClient::ListGraphsCallable(const ListGraphsRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< ListGraphsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListGraphs(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListGraphsAsync(const ListGraphsRequest& request, const ListGraphsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->ListGraphsAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListGraphsAsyncHelper(const ListGraphsRequest& request, const ListGraphsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, ListGraphs(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListInvitationsOutcome DetectiveClient::ListInvitations(const ListInvitationsRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/invitations/list";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return ListInvitationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListInvitationsOutcomeCallable DetectiveClient::ListInvitationsCallable(const ListInvitationsRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< ListInvitationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListInvitations(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListInvitationsAsync(const ListInvitationsRequest& request, const ListInvitationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->ListInvitationsAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListInvitationsAsyncHelper(const ListInvitationsRequest& request, const ListInvitationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, ListInvitations(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListMembersOutcome DetectiveClient::ListMembers(const ListMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/members/list";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return ListMembersOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ListMembersOutcomeCallable DetectiveClient::ListMembersCallable(const ListMembersRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< ListMembersOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListMembers(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListMembersAsync(const ListMembersRequest& request, const ListMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->ListMembersAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::ListMembersAsyncHelper(const ListMembersRequest& request, const ListMembersResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, ListMembers(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
RejectInvitationOutcome DetectiveClient::RejectInvitation(const RejectInvitationRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/invitation/removal";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return RejectInvitationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
RejectInvitationOutcomeCallable DetectiveClient::RejectInvitationCallable(const RejectInvitationRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< RejectInvitationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RejectInvitation(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::RejectInvitationAsync(const RejectInvitationRequest& request, const RejectInvitationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->RejectInvitationAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::RejectInvitationAsyncHelper(const RejectInvitationRequest& request, const RejectInvitationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, RejectInvitation(request), context);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
StartMonitoringMemberOutcome DetectiveClient::StartMonitoringMember(const StartMonitoringMemberRequest& request) const
|
|||
|
|
{
|
|||
|
|
Aws::Http::URI uri = m_uri;
|
|||
|
|
Aws::StringStream ss;
|
|||
|
|
ss << "/graph/member/monitoringstate";
|
|||
|
|
uri.SetPath(uri.GetPath() + ss.str());
|
|||
|
|
return StartMonitoringMemberOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
StartMonitoringMemberOutcomeCallable DetectiveClient::StartMonitoringMemberCallable(const StartMonitoringMemberRequest& request) const
|
|||
|
|
{
|
|||
|
|
auto task = Aws::MakeShared< std::packaged_task< StartMonitoringMemberOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->StartMonitoringMember(request); } );
|
|||
|
|
auto packagedFunction = [task]() { (*task)(); };
|
|||
|
|
m_executor->Submit(packagedFunction);
|
|||
|
|
return task->get_future();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::StartMonitoringMemberAsync(const StartMonitoringMemberRequest& request, const StartMonitoringMemberResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
m_executor->Submit( [this, request, handler, context](){ this->StartMonitoringMemberAsyncHelper( request, handler, context ); } );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void DetectiveClient::StartMonitoringMemberAsyncHelper(const StartMonitoringMemberRequest& request, const StartMonitoringMemberResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
|
|||
|
|
{
|
|||
|
|
handler(this, request, StartMonitoringMember(request), context);
|
|||
|
|
}
|
|||
|
|
|