7#include <aws/core/client/AWSClient.h>
8#include <aws/core/client/AWSClientAsyncCRTP.h>
9#include <aws/core/client/ClientConfiguration.h>
10#include <aws/core/utils/json/JsonSerializer.h>
11#include <aws/geo-routes/GeoRoutesPaginationBase.h>
12#include <aws/geo-routes/GeoRoutesServiceClientModel.h>
13#include <aws/geo-routes/GeoRoutesWaiter.h>
14#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
53 std::shared_ptr<GeoRoutesEndpointProviderBase> endpointProvider =
nullptr);
66 GeoRoutesClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
67 std::shared_ptr<GeoRoutesEndpointProviderBase> endpointProvider =
nullptr,
87 GeoRoutesClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
120 template <
typename CalculateIsolinesRequestT = Model::CalculateIsolinesRequest>
122 return SubmitCallable(&GeoRoutesClient::CalculateIsolines, request);
129 template <
typename CalculateIsolinesRequestT = Model::CalculateIsolinesRequest>
131 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
132 return SubmitAsync(&GeoRoutesClient::CalculateIsolines, request, handler, context);
152 template <
typename CalculateRouteMatrixRequestT = Model::CalculateRouteMatrixRequest>
154 return SubmitCallable(&GeoRoutesClient::CalculateRouteMatrix, request);
161 template <
typename CalculateRouteMatrixRequestT = Model::CalculateRouteMatrixRequest>
163 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
164 return SubmitAsync(&GeoRoutesClient::CalculateRouteMatrix, request, handler, context);
182 template <
typename CalculateRoutesRequestT = Model::CalculateRoutesRequest>
184 return SubmitCallable(&GeoRoutesClient::CalculateRoutes, request);
191 template <
typename CalculateRoutesRequestT = Model::CalculateRoutesRequest>
193 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
194 return SubmitAsync(&GeoRoutesClient::CalculateRoutes, request, handler, context);
214 template <
typename OptimizeWaypo
intsRequestT = Model::OptimizeWaypo
intsRequest>
216 return SubmitCallable(&GeoRoutesClient::OptimizeWaypoints, request);
223 template <
typename OptimizeWaypo
intsRequestT = Model::OptimizeWaypo
intsRequest>
225 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
226 return SubmitAsync(&GeoRoutesClient::OptimizeWaypoints, request, handler, context);
243 template <
typename SnapToRoadsRequestT = Model::SnapToRoadsRequest>
245 return SubmitCallable(&GeoRoutesClient::SnapToRoads, request);
252 template <
typename SnapToRoadsRequestT = Model::SnapToRoadsRequest>
254 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
255 return SubmitAsync(&GeoRoutesClient::SnapToRoads, request, handler, context);
272 std::shared_ptr<GeoRoutesEndpointProviderBase> m_endpointProvider;
static const char * GetServiceName()
Aws::Client::AWSJsonClient BASECLASS
Model::CalculateRouteMatrixOutcomeCallable CalculateRouteMatrixCallable(const CalculateRouteMatrixRequestT &request) const
virtual Model::OptimizeWaypointsOutcome OptimizeWaypoints(const Model::OptimizeWaypointsRequest &request) const
Model::OptimizeWaypointsOutcomeCallable OptimizeWaypointsCallable(const OptimizeWaypointsRequestT &request) const
GeoRoutesClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< GeoRoutesEndpointProviderBase > endpointProvider=nullptr, const Aws::GeoRoutes::GeoRoutesClientConfiguration &clientConfiguration=Aws::GeoRoutes::GeoRoutesClientConfiguration())
GeoRoutesClient(const Aws::GeoRoutes::GeoRoutesClientConfiguration &clientConfiguration=Aws::GeoRoutes::GeoRoutesClientConfiguration(), std::shared_ptr< GeoRoutesEndpointProviderBase > endpointProvider=nullptr)
virtual Model::CalculateIsolinesOutcome CalculateIsolines(const Model::CalculateIsolinesRequest &request) const
void CalculateRouteMatrixAsync(const CalculateRouteMatrixRequestT &request, const CalculateRouteMatrixResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CalculateRoutesOutcome CalculateRoutes(const Model::CalculateRoutesRequest &request) const
Model::CalculateRoutesOutcomeCallable CalculateRoutesCallable(const CalculateRoutesRequestT &request) const
Model::CalculateIsolinesOutcomeCallable CalculateIsolinesCallable(const CalculateIsolinesRequestT &request) const
void CalculateRoutesAsync(const CalculateRoutesRequestT &request, const CalculateRoutesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void OptimizeWaypointsAsync(const OptimizeWaypointsRequestT &request, const OptimizeWaypointsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::SnapToRoadsOutcome SnapToRoads(const Model::SnapToRoadsRequest &request) const
virtual Model::CalculateRouteMatrixOutcome CalculateRouteMatrix(const Model::CalculateRouteMatrixRequest &request) const
GeoRoutesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
static const char * GetAllocationTag()
virtual ~GeoRoutesClient()
GeoRoutesClientConfiguration ClientConfigurationType
Model::SnapToRoadsOutcomeCallable SnapToRoadsCallable(const SnapToRoadsRequestT &request) const
virtual void OverrideEndpoint(const Aws::String &endpoint)
GeoRoutesClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void CalculateIsolinesAsync(const CalculateIsolinesRequestT &request, const CalculateIsolinesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
GeoRoutesEndpointProvider EndpointProviderType
GeoRoutesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< GeoRoutesEndpointProviderBase > endpointProvider=nullptr, const Aws::GeoRoutes::GeoRoutesClientConfiguration &clientConfiguration=Aws::GeoRoutes::GeoRoutesClientConfiguration())
GeoRoutesClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual std::shared_ptr< GeoRoutesEndpointProviderBase > & accessEndpointProvider()
void SnapToRoadsAsync(const SnapToRoadsRequestT &request, const SnapToRoadsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::future< CalculateRoutesOutcome > CalculateRoutesOutcomeCallable
std::future< CalculateRouteMatrixOutcome > CalculateRouteMatrixOutcomeCallable
std::future< OptimizeWaypointsOutcome > OptimizeWaypointsOutcomeCallable
std::future< SnapToRoadsOutcome > SnapToRoadsOutcomeCallable
std::future< CalculateIsolinesOutcome > CalculateIsolinesOutcomeCallable
std::function< void(const GeoRoutesClient *, const Model::SnapToRoadsRequest &, const Model::SnapToRoadsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> SnapToRoadsResponseReceivedHandler
std::function< void(const GeoRoutesClient *, const Model::OptimizeWaypointsRequest &, const Model::OptimizeWaypointsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> OptimizeWaypointsResponseReceivedHandler
std::function< void(const GeoRoutesClient *, const Model::CalculateIsolinesRequest &, const Model::CalculateIsolinesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CalculateIsolinesResponseReceivedHandler
std::function< void(const GeoRoutesClient *, const Model::CalculateRouteMatrixRequest &, const Model::CalculateRouteMatrixOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CalculateRouteMatrixResponseReceivedHandler
std::function< void(const GeoRoutesClient *, const Model::CalculateRoutesRequest &, const Model::CalculateRoutesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CalculateRoutesResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String