/* * Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.geo; import com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.geo.model.*; /** * Interface for accessing AWS Location service *
* "Suite of geospatial services including Maps, Places, Routes, Tracking, and Geofencing" *
**/ public interface AmazonLocation { /** * Overrides the default endpoint for this client * ("https://geo.us-east-1.amazonaws.com"). Callers can use this method to * control which AWS region they want to work with. ** Callers can pass in just the endpoint (ex: "geo.us-east-1.amazonaws.com") * or a full URL, including the protocol (ex: * "https://geo.us-east-1.amazonaws.com"). If the protocol is not specified * here, the default protocol from this client's {@link ClientConfiguration} * will be used, which by default is HTTPS. *
* For more information on using AWS regions with the AWS SDK for Java, and * a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= * 3912 *
* This method is not threadsafe. An endpoint should be configured when * the client is created and before any service requests are made. Changing * it afterwards creates inevitable race conditions for any service requests * in transit or retrying. * * @param endpoint The endpoint (ex: "geo.us-east-1.amazonaws.com") or a * full URL, including the protocol (ex: * "https://geo.us-east-1.amazonaws.com") of the region specific * AWS endpoint this client will communicate with. * @throws IllegalArgumentException If any problems are detected with the * specified endpoint. */ public void setEndpoint(String endpoint) throws java.lang.IllegalArgumentException; /** * An alternative to {@link AmazonLocation#setEndpoint(String)}, sets the * regional endpoint for this client's service calls. Callers can use this * method to control which AWS region they want to work with. *
* By default, all service endpoints in all regions use the https protocol. * To use http instead, specify it in the {@link ClientConfiguration} * supplied at construction. *
* This method is not threadsafe. A region should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param region The region this client will communicate with. See * {@link Region#getRegion(com.amazonaws.regions.Regions)} for * accessing a given region. * @throws java.lang.IllegalArgumentException If the given region is null, * or if this service isn't available in the given region. See * {@link Region#isServiceSupported(String)} * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, * com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) */ public void setRegion(Region region) throws java.lang.IllegalArgumentException; /** *
* Creates an association between a geofence collection and a tracker * resource. This allows the tracker resource to communicate location data * to the linked geofence collection. *
** You can associate up to five geofence collections to each tracker * resource. *
** Currently not supported — Cross-account configurations, such as creating * associations between a tracker resource in one account and a geofence * collection in another account. *
** Deletes the position history of one or more devices from a tracker * resource. *
* * @param batchDeleteDevicePositionHistoryRequest * @return batchDeleteDevicePositionHistoryResult The response from the * BatchDeleteDevicePositionHistory service method, as returned by * AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ BatchDeleteDevicePositionHistoryResult batchDeleteDevicePositionHistory( BatchDeleteDevicePositionHistoryRequest batchDeleteDevicePositionHistoryRequest) throws AmazonClientException, AmazonServiceException; /** ** Deletes a batch of geofences from a geofence collection. *
** This operation deletes the resource permanently. *
** Evaluates device positions against the geofence geometries from a given * geofence collection. *
** This operation always returns an empty response because geofences are * asynchronously evaluated. The evaluation determines if the device has * entered or exited a geofenced area, and then publishes one of the * following events to Amazon EventBridge: *
*
* ENTER
if Amazon Location determines that the tracked device
* has entered a geofenced area.
*
* EXIT
if Amazon Location determines that the tracked device
* has exited a geofenced area.
*
* The last geofence that a device was observed within is tracked for 30 * days after the most recent device position update. *
*
* Geofence evaluation uses the given device position. It does not account
* for the optional Accuracy
of a
* DevicePositionUpdate
.
*
* The DeviceID
is used as a string to represent the device.
* You do not need to have a Tracker
associated with the
* DeviceID
.
*
* Lists the latest device positions for requested devices. *
* * @param batchGetDevicePositionRequest * @return batchGetDevicePositionResult The response from the * BatchGetDevicePosition service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ BatchGetDevicePositionResult batchGetDevicePosition( BatchGetDevicePositionRequest batchGetDevicePositionRequest) throws AmazonClientException, AmazonServiceException; /** ** A batch request for storing geofence geometries into a given geofence * collection, or updates the geometry of an existing geofence if a geofence * ID is included in the request. *
* * @param batchPutGeofenceRequest * @return batchPutGeofenceResult The response from the BatchPutGeofence * service method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ BatchPutGeofenceResult batchPutGeofence(BatchPutGeofenceRequest batchPutGeofenceRequest) throws AmazonClientException, AmazonServiceException; /** ** Uploads position update data for one or more devices to a tracker * resource (up to 10 devices per batch). Amazon Location uses the data when * it reports the last known device position and position history. Amazon * Location retains location data for 30 days. *
*
* Position updates are handled based on the PositionFiltering
* property of the tracker. When PositionFiltering
is set to
* TimeBased
, updates are evaluated against linked geofence
* collections, and location data is stored at a maximum of one position per
* 30 second interval. If your update frequency is more often than every 30
* seconds, only one update per 30 seconds is stored for each unique device
* ID.
*
* When PositionFiltering
is set to DistanceBased
* filtering, location data is stored and evaluated against linked geofence
* collections only if the device has moved more than 30 m (98.4 ft).
*
* When PositionFiltering
is set to AccuracyBased
* filtering, location data is stored and evaluated against linked geofence
* collections only if the device has moved more than the measured accuracy.
* For example, if two consecutive updates from a device have a horizontal
* accuracy of 5 m and 10 m, the second update is neither stored or
* evaluated if the device has moved less than 15 m. If
* PositionFiltering
is set to AccuracyBased
* filtering, Amazon Location uses the default value
* { "Horizontal": 0}
when accuracy is not provided on a
* DevicePositionUpdate
.
*
* Calculates a route given the following required parameters:
* DeparturePosition
and DestinationPosition
.
* Requires that you first create a route calculator resource.
*
* By default, a request that doesn't specify a departure time uses the best * time of day to travel with the best traffic conditions when calculating * the route. *
** Additional options include: *
*
* Specifying a departure time using either DepartureTime
* or DepartNow
. This calculates a route based on predictive
* traffic data at the given time.
*
* You can't specify both DepartureTime
and
* DepartNow
in a single request. Specifying both parameters
* returns a validation error.
*
* Specifying a travel mode using TravelMode sets the transportation
* mode used to calculate the routes. This also lets you specify additional
* route preferences in CarModeOptions
if traveling by
* Car
, or TruckModeOptions
if traveling by
* Truck
.
*
* If you specify walking
for the travel mode and your data
* provider is Esri, the start and destination must be within 40km.
*
* Calculates a route matrix given the following required parameters:
* DeparturePositions
and DestinationPositions
.
* CalculateRouteMatrix
calculates routes and returns the
* travel time and travel distance from each departure position to each
* destination position in the request. For example, given departure
* positions A and B, and destination positions X and Y,
* CalculateRouteMatrix
will return time and distance for
* routes from A to X, A to Y, B to X, and B to Y (in that order). The
* number of results returned (and routes calculated) will be the number of
* DeparturePositions
times the number of
* DestinationPositions
.
*
* Your account is charged for each route calculated, not the number of * requests. *
** Requires that you first create a route calculator resource. *
** By default, a request that doesn't specify a departure time uses the best * time of day to travel with the best traffic conditions when calculating * routes. *
** Additional options include: *
*
* Specifying a departure time using either DepartureTime
* or DepartNow
. This calculates routes based on predictive
* traffic data at the given time.
*
* You can't specify both DepartureTime
and
* DepartNow
in a single request. Specifying both parameters
* returns a validation error.
*
* Specifying a travel mode using TravelMode sets the transportation
* mode used to calculate the routes. This also lets you specify additional
* route preferences in CarModeOptions
if traveling by
* Car
, or TruckModeOptions
if traveling by
* Truck
.
*
* Creates a geofence collection, which manages and stores geofences. *
* * @param createGeofenceCollectionRequest * @return createGeofenceCollectionResult The response from the * CreateGeofenceCollection service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ConflictException * @throws AccessDeniedException * @throws ValidationException * @throws ServiceQuotaExceededException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ CreateGeofenceCollectionResult createGeofenceCollection( CreateGeofenceCollectionRequest createGeofenceCollectionRequest) throws AmazonClientException, AmazonServiceException; /** *
* Creates an API key resource in your Amazon Web Services account, which
* lets you grant geo:GetMap*
actions for Amazon Location Map
* resources to the API key bearer.
*
* The API keys feature is in preview. We may add, change, or remove * features before announcing general availability. For more information, * see Using API keys. *
** Creates a map resource in your Amazon Web Services account, which * provides map tiles of different styles sourced from global location data * providers. *
** If your application is tracking or routing assets you use in your * business, such as delivery vehicles or employees, you must not use Esri * as your geolocation provider. See section 82 of the Amazon Web Services service * terms for more details. *
*
* Creates a place index resource in your Amazon Web Services account. Use a
* place index resource to geocode addresses and other text queries by using
* the SearchPlaceIndexForText
operation, and reverse geocode
* coordinates by using the SearchPlaceIndexForPosition
* operation, and enable autosuggestions by using the
* SearchPlaceIndexForSuggestions
operation.
*
* If your application is tracking or routing assets you use in your * business, such as delivery vehicles or employees, you must not use Esri * as your geolocation provider. See section 82 of the Amazon Web Services service * terms for more details. *
** Creates a route calculator resource in your Amazon Web Services account. *
** You can send requests to a route calculator resource to estimate travel * time, distance, and get directions. A route calculator sources traffic * and road network data from your chosen data provider. *
** If your application is tracking or routing assets you use in your * business, such as delivery vehicles or employees, you must not use Esri * as your geolocation provider. See section 82 of the Amazon Web Services service * terms for more details. *
** Creates a tracker resource in your Amazon Web Services account, which * lets you retrieve current and historical location of devices. *
* * @param createTrackerRequest * @return createTrackerResult The response from the CreateTracker service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ConflictException * @throws AccessDeniedException * @throws ValidationException * @throws ServiceQuotaExceededException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ CreateTrackerResult createTracker(CreateTrackerRequest createTrackerRequest) throws AmazonClientException, AmazonServiceException; /** ** Deletes a geofence collection from your Amazon Web Services account. *
** This operation deletes the resource permanently. If the geofence * collection is the target of a tracker resource, the devices will no * longer be monitored. *
** Deletes the specified API key. The API key must have been deactivated * more than 90 days previously. *
* * @param deleteKeyRequest * @return deleteKeyResult The response from the DeleteKey service method, * as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DeleteKeyResult deleteKey(DeleteKeyRequest deleteKeyRequest) throws AmazonClientException, AmazonServiceException; /** ** Deletes a map resource from your Amazon Web Services account. *
** This operation deletes the resource permanently. If the map is being used * in an application, the map may not render. *
** Deletes a place index resource from your Amazon Web Services account. *
** This operation deletes the resource permanently. *
** Deletes a route calculator resource from your Amazon Web Services * account. *
** This operation deletes the resource permanently. *
** Deletes a tracker resource from your Amazon Web Services account. *
** This operation deletes the resource permanently. If the tracker resource * is in use, you may encounter an error. Make sure that the target resource * isn't a dependency for your applications. *
** Retrieves the geofence collection details. *
* * @param describeGeofenceCollectionRequest * @return describeGeofenceCollectionResult The response from the * DescribeGeofenceCollection service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DescribeGeofenceCollectionResult describeGeofenceCollection( DescribeGeofenceCollectionRequest describeGeofenceCollectionRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the API key resource details. *
** The API keys feature is in preview. We may add, change, or remove * features before announcing general availability. For more information, * see Using API keys. *
** Retrieves the map resource details. *
* * @param describeMapRequest * @return describeMapResult The response from the DescribeMap service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DescribeMapResult describeMap(DescribeMapRequest describeMapRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the place index resource details. *
* * @param describePlaceIndexRequest * @return describePlaceIndexResult The response from the DescribePlaceIndex * service method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DescribePlaceIndexResult describePlaceIndex(DescribePlaceIndexRequest describePlaceIndexRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the route calculator resource details. *
* * @param describeRouteCalculatorRequest * @return describeRouteCalculatorResult The response from the * DescribeRouteCalculator service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DescribeRouteCalculatorResult describeRouteCalculator( DescribeRouteCalculatorRequest describeRouteCalculatorRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the tracker resource details. *
* * @param describeTrackerRequest * @return describeTrackerResult The response from the DescribeTracker * service method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ DescribeTrackerResult describeTracker(DescribeTrackerRequest describeTrackerRequest) throws AmazonClientException, AmazonServiceException; /** ** Removes the association between a tracker resource and a geofence * collection. *
** Once you unlink a tracker resource from a geofence collection, the * tracker positions will no longer be automatically evaluated against * geofences. *
** Retrieves a device's most recent position according to its sample time. *
** Device positions are deleted after 30 days. *
** Retrieves the device position history from a tracker resource within a * specified range of time. *
** Device positions are deleted after 30 days. *
** Retrieves the geofence details from a geofence collection. *
* * @param getGeofenceRequest * @return getGeofenceResult The response from the GetGeofence service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ GetGeofenceResult getGeofence(GetGeofenceRequest getGeofenceRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves glyphs used to display labels on a map. *
* * @param getMapGlyphsRequest * @return getMapGlyphsResult The response from the GetMapGlyphs service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ GetMapGlyphsResult getMapGlyphs(GetMapGlyphsRequest getMapGlyphsRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the sprite sheet corresponding to a map resource. The sprite * sheet is a PNG image paired with a JSON document describing the offsets * of individual icons that will be displayed on a rendered map. *
* * @param getMapSpritesRequest * @return getMapSpritesResult The response from the GetMapSprites service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ GetMapSpritesResult getMapSprites(GetMapSpritesRequest getMapSpritesRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves the map style descriptor from a map resource. *
** The style descriptor contains specifications on how features render on a * map. For example, what data to display, what order to display the data * in, and the style for the data. Style descriptors follow the Mapbox Style * Specification. *
* * @param getMapStyleDescriptorRequest * @return getMapStyleDescriptorResult The response from the * GetMapStyleDescriptor service method, as returned by AWS Location * service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ GetMapStyleDescriptorResult getMapStyleDescriptor( GetMapStyleDescriptorRequest getMapStyleDescriptorRequest) throws AmazonClientException, AmazonServiceException; /** ** Retrieves a vector data tile from the map resource. Map tiles are used by * clients to render a map. they're addressed using a grid arrangement with * an X coordinate, Y coordinate, and Z (zoom) level. *
** The origin (0, 0) is the top left of the map. Increasing the zoom level * by 1 doubles both the X and Y dimensions, so a tile containing data for * the entire world at (0/0/0) will be split into 4 tiles at zoom 1 (1/0/0, * 1/0/1, 1/1/0, 1/1/1). *
* * @param getMapTileRequest * @return getMapTileResult The response from the GetMapTile service method, * as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ GetMapTileResult getMapTile(GetMapTileRequest getMapTileRequest) throws AmazonClientException, AmazonServiceException; /** *
* Finds a place by its unique ID. A PlaceId
is returned by
* other search operations.
*
* A PlaceId is valid only if all of the following are the same in the
* original search request and the call to GetPlace
.
*
* Customer Amazon Web Services account *
** Amazon Web Services Region *
** Data provider specified in the place index resource *
** A batch request to retrieve all device positions. *
* * @param listDevicePositionsRequest * @return listDevicePositionsResult The response from the * ListDevicePositions service method, as returned by AWS Location * service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListDevicePositionsResult listDevicePositions( ListDevicePositionsRequest listDevicePositionsRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists geofence collections in your Amazon Web Services account. *
* * @param listGeofenceCollectionsRequest * @return listGeofenceCollectionsResult The response from the * ListGeofenceCollections service method, as returned by AWS * Location service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListGeofenceCollectionsResult listGeofenceCollections( ListGeofenceCollectionsRequest listGeofenceCollectionsRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists geofences stored in a given geofence collection. *
* * @param listGeofencesRequest * @return listGeofencesResult The response from the ListGeofences service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListGeofencesResult listGeofences(ListGeofencesRequest listGeofencesRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists API key resources in your Amazon Web Services account. *
** The API keys feature is in preview. We may add, change, or remove * features before announcing general availability. For more information, * see Using API keys. *
** Lists map resources in your Amazon Web Services account. *
* * @param listMapsRequest * @return listMapsResult The response from the ListMaps service method, as * returned by AWS Location service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListMapsResult listMaps(ListMapsRequest listMapsRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists place index resources in your Amazon Web Services account. *
* * @param listPlaceIndexesRequest * @return listPlaceIndexesResult The response from the ListPlaceIndexes * service method, as returned by AWS Location service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListPlaceIndexesResult listPlaceIndexes(ListPlaceIndexesRequest listPlaceIndexesRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists route calculator resources in your Amazon Web Services account. *
* * @param listRouteCalculatorsRequest * @return listRouteCalculatorsResult The response from the * ListRouteCalculators service method, as returned by AWS Location * service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListRouteCalculatorsResult listRouteCalculators( ListRouteCalculatorsRequest listRouteCalculatorsRequest) throws AmazonClientException, AmazonServiceException; /** ** Returns a list of tags that are applied to the specified Amazon Location * resource. *
* * @param listTagsForResourceRequest * @return listTagsForResourceResult The response from the * ListTagsForResource service method, as returned by AWS Location * service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListTagsForResourceResult listTagsForResource( ListTagsForResourceRequest listTagsForResourceRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists geofence collections currently associated to the given tracker * resource. *
* * @param listTrackerConsumersRequest * @return listTrackerConsumersResult The response from the * ListTrackerConsumers service method, as returned by AWS Location * service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListTrackerConsumersResult listTrackerConsumers( ListTrackerConsumersRequest listTrackerConsumersRequest) throws AmazonClientException, AmazonServiceException; /** ** Lists tracker resources in your Amazon Web Services account. *
* * @param listTrackersRequest * @return listTrackersResult The response from the ListTrackers service * method, as returned by AWS Location service. * @throws InternalServerException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ ListTrackersResult listTrackers(ListTrackersRequest listTrackersRequest) throws AmazonClientException, AmazonServiceException; /** ** Stores a geofence geometry in a given geofence collection, or updates the * geometry of an existing geofence if a geofence ID is included in the * request. *
* * @param putGeofenceRequest * @return putGeofenceResult The response from the PutGeofence service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws ConflictException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ PutGeofenceResult putGeofence(PutGeofenceRequest putGeofenceRequest) throws AmazonClientException, AmazonServiceException; /** ** Reverse geocodes a given coordinate and returns a legible address. Allows * you to search for Places or points of interest near a given position. *
* * @param searchPlaceIndexForPositionRequest * @return searchPlaceIndexForPositionResult The response from the * SearchPlaceIndexForPosition service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ SearchPlaceIndexForPositionResult searchPlaceIndexForPosition( SearchPlaceIndexForPositionRequest searchPlaceIndexForPositionRequest) throws AmazonClientException, AmazonServiceException; /** ** Generates suggestions for addresses and points of interest based on * partial or misspelled free-form text. This operation is also known as * autocomplete, autosuggest, or fuzzy matching. *
** Optional parameters let you narrow your search results by bounding box or * country, or bias your search toward a specific position on the globe. *
*
* You can search for suggested place names near a specified position by
* using BiasPosition
, or filter results within a bounding box
* by using FilterBBox
. These parameters are mutually
* exclusive; using both BiasPosition
and
* FilterBBox
in the same command returns an error.
*
* Geocodes free-form text, such as an address, name, city, or region to * allow you to search for Places or points of interest. *
** Optional parameters let you narrow your search results by bounding box or * country, or bias your search toward a specific position on the globe. *
*
* You can search for places near a given position using
* BiasPosition
, or filter results within a bounding box using
* FilterBBox
. Providing both parameters simultaneously returns
* an error.
*
* Search results are returned in order of highest to lowest relevance. *
* * @param searchPlaceIndexForTextRequest * @return searchPlaceIndexForTextResult The response from the * SearchPlaceIndexForText service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ SearchPlaceIndexForTextResult searchPlaceIndexForText( SearchPlaceIndexForTextRequest searchPlaceIndexForTextRequest) throws AmazonClientException, AmazonServiceException; /** ** Assigns one or more tags (key-value pairs) to the specified Amazon * Location Service resource. *
** Tags can help you organize and categorize your resources. You can also * use them to scope user permissions, by granting a user permission to * access or change only resources with certain tag values. *
*
* You can use the TagResource
operation with an Amazon
* Location Service resource that already has tags. If you specify a new tag
* key for the resource, this tag is appended to the tags already associated
* with the resource. If you specify a tag key that's already associated
* with the resource, the new tag value that you specify replaces the
* previous value for that tag.
*
* You can associate up to 50 tags with a resource. *
* * @param tagResourceRequest * @return tagResourceResult The response from the TagResource service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest) throws AmazonClientException, AmazonServiceException; /** ** Removes one or more tags from the specified Amazon Location resource. *
* * @param untagResourceRequest * @return untagResourceResult The response from the UntagResource service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest) throws AmazonClientException, AmazonServiceException; /** ** Updates the specified properties of a given geofence collection. *
* * @param updateGeofenceCollectionRequest * @return updateGeofenceCollectionResult The response from the * UpdateGeofenceCollection service method, as returned by AWS * Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UpdateGeofenceCollectionResult updateGeofenceCollection( UpdateGeofenceCollectionRequest updateGeofenceCollectionRequest) throws AmazonClientException, AmazonServiceException; /** ** Updates the specified properties of a given API key resource. *
** The API keys feature is in preview. We may add, change, or remove * features before announcing general availability. For more information, * see Using API keys. *
** Updates the specified properties of a given map resource. *
* * @param updateMapRequest * @return updateMapResult The response from the UpdateMap service method, * as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UpdateMapResult updateMap(UpdateMapRequest updateMapRequest) throws AmazonClientException, AmazonServiceException; /** ** Updates the specified properties of a given place index resource. *
* * @param updatePlaceIndexRequest * @return updatePlaceIndexResult The response from the UpdatePlaceIndex * service method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UpdatePlaceIndexResult updatePlaceIndex(UpdatePlaceIndexRequest updatePlaceIndexRequest) throws AmazonClientException, AmazonServiceException; /** ** Updates the specified properties for a given route calculator resource. *
* * @param updateRouteCalculatorRequest * @return updateRouteCalculatorResult The response from the * UpdateRouteCalculator service method, as returned by AWS Location * service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UpdateRouteCalculatorResult updateRouteCalculator( UpdateRouteCalculatorRequest updateRouteCalculatorRequest) throws AmazonClientException, AmazonServiceException; /** ** Updates the specified properties of a given tracker resource. *
* * @param updateTrackerRequest * @return updateTrackerResult The response from the UpdateTracker service * method, as returned by AWS Location service. * @throws InternalServerException * @throws ResourceNotFoundException * @throws AccessDeniedException * @throws ValidationException * @throws ThrottlingException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * Location service indicating either a problem with the data in * the request, or a server side issue. */ UpdateTrackerResult updateTracker(UpdateTrackerRequest updateTrackerRequest) throws AmazonClientException, AmazonServiceException; /** * Shuts down this client object, releasing any resources that might be held * open. This is an optional method, and callers are not expected to call * it, but can if they want to explicitly release any open resources. Once a * client has been shutdown, it should not be used to make any more * requests. */ public void shutdown(); /** * Returns additional metadata for a previously executed successful request, * typically used for debugging issues where a service isn't acting as * expected. This data isn't considered part of the result data returned by * an operation, so it's available through this separate, diagnostic * interface. ** Response metadata is only cached for a limited period of time, so if you * need to access this extra diagnostic information for an executed request, * you should use this method to retrieve it as soon as possible after * executing a request. * * @param request The originally executed request. * @return The response metadata for the specified request, or null if none * is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }